Все для системного администратора. По всем вопросам @evgenycarter РКН clck.ru/3KoDXp
🐳❓ Хотите стать экспертом по Docker и микросервисам? Освойте ключевые навыки для разработки, упаковки и развертывания приложений с Docker-образами!
⏰ На открытом вебинаре 13 мая в 20:00 мск мы разберём, как эффективно использовать Docker для контейнеризации и автоматизации процессов развертывания микросервисов. Вы познакомитесь с принципами создания и оптимизации Docker-образов, а также с лучшими практиками DevOps и CI/CD.
Умение использовать Docker для автоматизации и управления микросервисами сделает вас более конкурентоспособным на рынке труда. Получите знания, которые востребованы в крупных компаниях.
👉 Регистрируйтесь на открытый урок и получите скидку на программу обучения «DevOps-практики и инструменты»: https://vk.cc/cLR9VN
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru
Что работает у Яндекса — и что можно взять себе
Многие темы на infra.conf — это взгляд изнутри на процессы Яндекса. Как устроена внутренняя инфраструктура и её части. Какие инструменты помогают держать стабильность. Как устроено взаимодействие между командами и почему инженерные решения принимаются именно так.
Будет полезно тем, кто проектирует что-то подобное у себя или просто хочет подсмотреть хорошие подходы.
Конференция состоится 5 июня в Москве, Loft Hall 8. Доступна онлайн-трансляция.
🚀 Подборка Telegram каналов для программистов
Системное администрирование, DevOps 📌
/channel/bash_srv Bash Советы
/channel/win_sysadmin Системный Администратор Windows
/channel/sysadmin_girl Девочка Сисадмин
/channel/srv_admin_linux Админские угодья
/channel/linux_srv Типичный Сисадмин
/channel/devopslib Библиотека девопса | DevOps, SRE, Sysadmin
/channel/linux_odmin Linux: Системный администратор
/channel/devops_star DevOps Star (Звезда Девопса)
/channel/i_linux Системный администратор
/channel/linuxchmod Linux
/channel/sys_adminos Системный Администратор
/channel/tipsysdmin Типичный Сисадмин (фото железа, было/стало)
/channel/sysadminof Книги для админов, полезные материалы
/channel/i_odmin Все для системного администратора
/channel/i_odmin_book Библиотека Системного Администратора
/channel/i_odmin_chat Чат системных администраторов
/channel/i_DevOps DevOps: Пишем о Docker, Kubernetes и др.
/channel/sysadminoff Новости Линукс Linux
1C разработка 📌
/channel/odin1C_rus Cтатьи, курсы, советы, шаблоны кода 1С
/channel/DevLab1C 1С:Предприятие 8
/channel/razrab_1C 1C Разработчик
/channel/buh1C_prog 1C Программист | Бухгалтерия и Учёт
/channel/rabota1C_rus Вакансии для программистов 1С
Программирование C++📌
/channel/cpp_lib Библиотека C/C++ разработчика
/channel/cpp_knigi Книги для программистов C/C++
/channel/cpp_geek Учим C/C++ на примерах
Программирование Python 📌
/channel/pythonofff Python академия.
/channel/BookPython Библиотека Python разработчика
/channel/python_real Python подборки на русском и английском
/channel/python_360 Книги по Python
Java разработка 📌
/channel/BookJava Библиотека Java разработчика
/channel/java_360 Книги по Java Rus
/channel/java_geek Учим Java на примерах
GitHub Сообщество 📌
/channel/Githublib Интересное из GitHub
Базы данных (Data Base) 📌
/channel/database_info Все про базы данных
Мобильная разработка: iOS, Android 📌
/channel/developer_mobila Мобильная разработка
/channel/kotlin_lib Подборки полезного материала по Kotlin
Фронтенд разработка 📌
/channel/frontend_1 Подборки для frontend разработчиков
/channel/frontend_sovet Frontend советы, примеры и практика!
/channel/React_lib Подборки по React js и все что с ним связано
Разработка игр 📌
/channel/game_devv Все о разработке игр
Библиотеки 📌
/channel/book_for_dev Книги для программистов Rus
/channel/programmist_of Книги по программированию
/channel/proglb Библиотека программиста
/channel/bfbook Книги для программистов
БигДата, машинное обучение 📌
/channel/bigdata_1 Big Data, Machine Learning
Программирование 📌
/channel/bookflow Лекции, видеоуроки, доклады с IT конференций
/channel/rust_lib Полезный контент по программированию на Rust
/channel/golang_lib Библиотека Go (Golang) разработчика
/channel/itmozg Программисты, дизайнеры, новости из мира IT
/channel/php_lib Библиотека PHP программиста 👨🏼💻👩💻
/channel/nodejs_lib Подборки по Node js и все что с ним связано
/channel/ruby_lib Библиотека Ruby программиста
/channel/lifeproger Жизнь программиста. Авторский канал.
QA, тестирование 📌
/channel/testlab_qa Библиотека тестировщика
Шутки программистов 📌
/channel/itumor Шутки программистов
Защита, взлом, безопасность 📌
/channel/thehaking Канал о кибербезопасности
/channel/xakep_2 Хакер Free
Книги, статьи для дизайнеров 📌
/channel/ux_web Статьи, книги для дизайнеров
Математика 📌
/channel/Pomatematike Канал по математике
/channel/phis_mat Обучающие видео, книги по Физике и Математике
/channel/matgeoru Математика | Геометрия | Логика
Excel лайфхак📌
/channel/Excel_lifehack
/channel/mir_teh Мир технологий (Technology World)
Вакансии 📌
/channel/sysadmin_rabota Системный Администратор
/channel/progjob Вакансии в IT
Сборка MS-DOS 4.0
Совсем недавно на хабре появилась следующая новость: На GitHub опубликован исходный код MS-DOS 4.00 под лицензией MIT. Раз появились исходные коды, стало сразу интересно: а можно ли собрать эту операционную систему?
Задача оказалась нетривиальной и совсем неочевидной. Оказывается, что исходные файлы DOS не так-то уж и легко переносятся в git, и уж как минимум, не как текстовые файлы в кодировке UTF-8. Но, к счастью, в отличие от утечек исходников MS-DOS 6.0, здесь имеется полный комплект файлов и инструментов, достаточный для корректной сборки и тестирования. Остались сущие нюансы, которые попили много крови.
Поэтому я, как и многие — начал свои эксперименты по сборке MS-DOS 4.0, с исправлением ошибок, а также возможностью исследования исходных кодов и тестирования их на реальном железе.
В статье же изложено краткое руководство по сборке и созданию загрузочной дискетки.
https://habr.com/ru/companies/timeweb/articles/812003/
👉 @i_odmin
👋 Привет, админы!
Сегодня расскажу про один недокументированный нюанс с задачами в Планировщике Windows, с которым недавно столкнулся сам. Был у меня скрипт, который по расписанию должен запускаться от имени системной учетной записи (SYSTEM
). Всё настроено правильно, вручную запускается — работает. Но вот по расписанию не срабатывает. Без ошибок, без логов, просто тишина. 🤔
🔍 После копания выяснилось: если задача запускается от SYSTEM, но в свойствах включена опция "Запускать только при входе пользователя", — она НЕ выполнится, потому что SYSTEM не входит в систему в классическом понимании.
💡 Решение:
1. Зайти в свойства задачи.
2. Переключить опцию на: "Выполнять вне зависимости от входа пользователя".
3. Обязательно включить галку "Не сохранять пароль", если используете обычную учетку (для SYSTEM это не критично).
📌 Ну и по возможности включайте логирование в задаче — пусть пишет вывод скрипта в файл, так проще отлавливать подобные "невидимые" фейлы.
💬 А у вас были странности с Task Scheduler? Может, знаете ещё тонкости, о которых стоит рассказать? Делитесь в комментариях!
👉 @win_sysadmin
Подборка часто используемых команд для первоначальной настройки устройств MikroTik: имя устройства, DNS сервера, Email, время, доступы и т.д.
Установки имени устройства/system identity set name=MyHomeMikrotik
Установка своих DNS серверов и отключение получения их по DHCP/ip dns set servers=8.8.8.8,1.1.1.1
/ip dhcp-client set [find ] use-peer-dns=no
Настройка email клиента для работы с Yandex.Mail
Для корректной работы разрешите в настройках профиля авторизацию SMTP по обычному паролю или [рекомендуется] используйте пароли приложений (почта)/tool e-mail
set address=smtp.yandex.ru from=example@yandex.ru password=example-pass port=587 start-tls=yes user=example@yandex.ru
Настройка синхронизации времени по NTP и MikroTik Cloud Time (Москва)/system ntp client set enabled=yes server-dns-names=time.google.com,0.pool.ntp.org,1.pool.ntp.org,2.pool.ntp.org,3.pool.ntp.org
/system clock set time-zone-autodetect=no
/system clock set time-zone-name=Europe/Moscow
/ip cloud set update-time=yes
Изменение количества строк системного лога/system logging action set memory memory-lines=10000
Очистка системного лога (оставляет сообщение о смене настроек лога)/system logging action set memory memory-lines=1
/system logging action set memory memory-lines=10000
Контроль доступа с IP адресов домена
Это позволяет использовать DynamicDNS для записей своего домена, и получать доступ к устройству с IP адресов, которые будут резолвится с домена. RouterOS будет сам обновлять записи и access-list при изменении записи в домене.
Обратите внимание, в конце 2 строки с move. Это сделано для того, чтобы правило корректно двигалось на первое место при включенном fasttrack (то есть первое место), а также при отключенном (на нулевое место)/ip firewall address-list
add address=access.example.con list=DomainIPsAccess
/ip firewall filter
add action=accept chain=input src-address-list=DomainIPsAccess comment="Allow DomainIPsAccess"
move [find comment="Allow DomainIPsAccess"] 1
move [find comment="Allow DomainIPsAccess"] 0
Отключение ненужных служб доступа (web тоже отключается, осторожно)/ip service disable www,ftp,api,api-ssl,telnet
/ip service enable ssh,winbox
/ip service set ssh address=""
/ip service set winbox address=""
Фикс MTU (нужен редко, но метко)/ip firewall mangle
add chain=postrouting out-interface-list=WAN protocol=tcp tcp-flags=syn,!ack action=change-mss new-mss=clamp-to-pmtu comment="MTU Fix" passthrough=yes
Заблокировать доступ к WiFi по MAC-адресу/interface wireless access-list authentication=no mac-address=8A:EA:B7:2E:38:C1
Поместить клиента WiFi в отдельный VLAN по MAC-адресу/interface wireless access-list
add interface=all mac-address=8A:EA:B7:2E:38:C1 vlan-id=99 vlan-mode=use-tag
Настройка пароля и безопасности WiFi на default профиль/interface wireless security-profiles set default mode=dynamic
-keys authentication-types=wpa2-psk unicast-ciphers=aes-ccm group-ciphers=aes-ccm
wpa2-pre-shared-key=bigpassword
Включение пробросов портов SSH/ip ssh set forwarding-enabled=both
👉 @i_odmin
💪 Рекомендую качественный контент знакомого ИТ-сообщества с 15-летним стажем:
⌨️ ITKB_channel — бесплатное обучение по Windows, Linux, DevOps, Security, Network, программирование
📚 ITKB_Archive — библиотека (книги, курсы, ИТ литература)
✔️ Не можете выбрать между DWH, Data Lake и Data Lakehouse?
Запутались в понятиях и хотите разобраться, какой подход лучше для вас?
⏺ На открытом вебинаре 12 мая в 20:00 МСК мы простым и понятным языком разберём эти три важнейшие архитектуры данных: от проверенных временем DWH до гибких Data Lake и современных Data Lakehouse. Узнаем преимущества, ограничения и подходящие сценарии использования каждого подхода.
После вебинара вы поймёте, как выбрать правильную архитектуру под задачи вашей компании, сэкономите время и ресурсы на внедрение, а также избежите типичных ошибок.
➡️ Регистрируйтесь на вебинар и получите скидку на программу обучения «Data Engineer»:
https://vk.cc/cLFpQp
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
Побег от WSL или как превратить старый ноутбук в домашний сервер для хранения данных и удаленной работы
Привет! Хочу поделиться личным опытом превращения старенького ноутбука ASUS X552CL (Intel i5-5200U, 12 ГБ RAM, SSD + HDD), выпущенный 12 лет назад, в полноценный домашний сервер под Linux Ubuntu Server 24.04.5 LTS.
Получилось что-то вроде мини-датацентра на дому — он хранит файлы на жёстком диске с бэкапом в облаке, Docker-контейнеры крутит для дата-аналитики и даже имеет легковесный интерфейс XFCE, при этом есть потенциал к росту до терминала для управления умным домом. Расскажу, почему было решено отказаться от WSL на рабочем ноутбуке Huawei, как настроить удалённый доступ через xRDP (чтобы не было чёрного экрана), запустить там Docker, сборку Superset и JupyterLab с Anaconda (с разными версиями Python), прикрутить Samba-шару для домашнего использования и организовать бэкап в облачном хранилище. В этой статье будет немного технических деталей, щепотка шуток и парочка мемов с советскими плакатами.
https://habr.com/ru/articles/906742/
👉 @i_odmin
Подборка хаков с grep
для продвинутых
🔥 1. Поиск в архивированных логах
zgrep "CRITICAL" /var/log/syslog.3.gz
zgrep
, аналог grep
, работающий с .gz
- архивами.
grep -w "main" код.c
main
, но не domain
или maintain
.
grep --color=always "TODO" файл.txt
less -R
.
grep -r --exclude-dir={.git,node_modules} "token" .
grep -oE "ID-[0-9]{4}" журнал.log
ID-1234
.
grep -A3 "panic" системный_лог.txt # 3 строки после
grep -B2 "panic" системный_лог.txt # 2 строки до
grep -C5 "panic" системный_лог.txt # 5 строк до и после
grep -E "ERROR|WARN|FATAL" журнал.log
grep -f patterns.txt журнал.log
patterns.txt
содержит:
ERROR
WARN
FATAL
grep -rl "import numpy" .
grep
- вывода
grep "Session" журнал.log | cut -d' ' -f2- | sort | uniq
tail -f /var/log/nginx/access.log | grep --line-buffered "404"
📕MySQL для администраторов, разработчиков, архитекторов и специалистов баз данных
Как грамотно оптимизировать производительность в MySQL и решить возникающие проблемы.
📗 На вебинаре 6 мая в 19:00 разберём:
1. Практические методы оптимизации производительности, диагностику нагрузки и анализ "узких мест" MySQL;
2. Оптимизацию запросов: от простых до сложных.
📘 В результате будете знать всё о настройке ключевых параметров конфигурации, уметь самостоятельно диагностировать и решать проблемы производительности MySQL.
👉 Регистрация и подробности о курсе Базы данных: https://vk.cc/cLzNwa
Все участники открытого урока получат скидку на курс
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
💻 Полезные команды Linux. Корректное выключение, перезагрузка и выход из системы
🔌 Выключение системы:
sudo shutdown -h now
sudo shutdown -h +10 "Выключение через 10 минут"
sudo poweroff
shutdown -h now
, завершает работу и отключает питание.
sudo reboot
sudo shutdown -r now
sudo systemctl reboot
exit
logout
-h
= halt (выключить)-r
= reboot (перезагрузить)+минуты
— отложенное действиеwall
— отправка сообщения всем пользователямВ Debian (и производных, включая Ubuntu) для ускорения установки пакетов можно использовать утилиту libeatmydata
, которая значительно снижает время установки за счёт отключения fsync и других дорогостоящих операций записи на диск.
📌 Что такое libeatmydata
libeatmydata
— это LD_PRELOAD-библиотека, которая подменяет функции fsync()
, fdatasync()
, msync()
и другие, превращая их в no-op (то есть они ничего не делают). Это полезно, когда производительность важнее надёжности — например, в CI, сборках образов, chroot'ах или при частой установке/удалении пакетов.
🛠 Как использовать libeatmydata
1. Установите пакет:
sudo apt install eatmydata
eatmydata
как префикс:
sudo eatmydata apt install some-package
sudo eatmydata dpkg -i some-package.deb
sudo eatmydata apt upgrade -y
time sudo apt install -y build-essential # обычный способ
time sudo eatmydata apt install -y build-essential # ускоренный способ
chroot /mnt/debian-root eatmydata apt install -y ...
#!/bin/bash
export LD_PRELOAD=libeatmydata.so
apt install -y ...
debootstrap
:
sudo eatmydata debootstrap bullseye /mnt/debian http://deb.debian.org/debian
❓ 📝 Как эффективно собирать и анализировать логи в распределённых системах?
На открытом уроке «Особенности работы с Elasticsearch: централизованный сбор логов и стек ELK» мы расскажем, как настроить и использовать стек ELK для мониторинга и анализа логов. Это не просто теория — на вебинаре вы получите практические знания, которые помогут настроить систему логирования для реальных проектов.
Что разберем:
- как работает стек ELK (Elasticsearch, Logstash, Kibana) и как его настроить;
- как собирать, обрабатывать и визуализировать логи с разных сервисов;
- как использовать Elasticsearch для диагностики и анализа инцидентов.
⭐️ Спикер Андрей Буранов — системный администратор в VK, входит в топ-3 лучших преподавателей образовательных порталов.
⏰ Встречаемся 6 мая в 20:00 МСК. Участники получат скидку на программу обучения «Инфраструктура высоконагруженных систем».
👉 Для участия зарегистрируйтесь: https://vk.cc/cLtV5b
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru
Протокол TCP
00:00 - Варианты подтверждения доставки в TCP
00:54 - Остановка и ожидание
01:19 - Скользящее окно
01:42 - Почему выгодно использовать скользящее окно
03:45 - Как работает скользящее окно
05:31 - Типы подтверждений в TCP
07:11 - Итоги
источник
👉 @i_odmin
Изменение порта для подключения по SSH
Чтобы изменить порт для подключения по SSH необходимо отредактировать файл конфигурации SSH демона. Откроем данный файл текстовым редактором:vim /etc/ssh/sshd_config
Найдем строку Port 22 и изменим её, указав новый порт для подключения. Например Port 25022.
Выходим, сохраняем файл и перезагружаем SSH следующей командой:service sshd restart
После перезапуска SSH, он станет доступен по новому порту, а текущая сессия на старом останется активной. Поэтому не отключаясь для проверки попробуем подключится по новому порту - если не пускает, то возможно в системе работает фаервол и нужно в нем разрешить новый порт, например в iptables это делается так (где 25022 наш новый порт):iptables -A INPUT -p tcp --dport 25022 -j ACCEPT
Можно разрешить средствами iptables подключение к SSH только с указанного диапазона IP адресов:iptables -A INPUT -d 192.168.0.0/24 -p tcp --dport 25022 -j ACCEPT
где 192.168.0.0/24 - IP адрес сети и маска сети, с которых разрешено подключение по SSH. Далее проверяем подключение по SSH на новом порту ssh <user>@<ip> -p <port> - если подключение выполняется, то можем удалить правило iptables подключения по SSH по старому порту:iptables -D INPUT -p tcp --dport 22 -j ACCEPT
Посмотреть в системе на каком порту и на каких сетевых интерфейсах работает SSH можно следующей командой:netstat -tulpan | grep ssh
👉 @i_odmin
Работа с правами доступа файлов и директорий в Linux# chown vasya /file
Назначить пользователя vasya владельцем файла file# chown -R vasya directory
Рекурсивно обойти директорию directory и назначить пользователя vasya владельцем всех вложенных файлов и директорий# chown vasya:group /file
Назначить владельца и группу для файла /file# chmod ugo+rwx /directory
Установить полные права доступа rwx ( Read Write eXecute ) для всех ugo ( User Group Other ) на директорию /directory. То-же самое можно сделать, используя числовой представление chmod 777 directory# chmod go-rwx /directory
Удалить все права на директорию /directory для группы и остальных# chgrp new_group file
Изменить группу-владельца для file на new_group# chmod o+t /home/public
Установить так называемый STIKY-бит на директорию /home/public. Удалить файл в такой директории может только владелец данного файла# chmod o-t /home/public
Удалить STIKY-бит с директории /home/public# chmod u+s /bin/binary_file
Установить SUID-бит на файл /bin/binary_file. Это позволяет любому пользователю системы, запускать данный файл с правами владельца файла# chmod u-s /bin/binary_file
Удалить SUID-бит с файла /bin/binary_file# chmod g+s /home/public
Установить SGID-бит на директории /home/public# chmod g-s /home/public
Удалить SGID-бит с директории /home/public# find / -perm -u+s
Поиск всех файлов с установленным SUID битом, начиная с корня файловой системы# ls -lh
Листинг текущего каталога с правами доступа
👉 @i_odmin
📕 Консоль запросов в работе с 1С:Аналитика для разработчиков 1C, консультантов 1C и аналитиков
Как применять результаты из консоли запросов в системе компоновки данных и 1С:Аналитике.
📗 На вебинаре 12 мая в 19:00 мск разберём:
1. Всё о вопросах анализа данных — от консоли до 1С:Аналитика;
2. Основы работы с консолью запросов в 1С и особенности написания запросов в 1С;
📘 В результате на практике освоите работу с интеграцией с 1С:Аналитика и переход от анализа данных внутри 1С к элементам BI-систем на примере 1С:Аналитика.
👉 Регистрация и подробности о курсе Бизнес-аналитик 1С: https://vk.cc/cLNdM6
Все участники открытого урока получат скидку на курс "Бизнес-аналитик 1С"
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
Резервное копирование PostgreSQL по-взрослому
Базы данных — замечательный инструмент, без которого сложно представить современное приложение. И как бы сильно я ни любил использовать БД, я просто ненавижу писать SQL-запросы. Поэтому однажды задался вопросом, кто мог бы делать это за меня, при этом несильно теряя в качестве. И, конечно же, на ум пришёл мой AI-друг. Тогда остаётся одна проблема, как скормить ему мою БД. Тут на помощь приходит резервное копирование! Выполнив все необходимые задачи, я решил углубиться в тему и поделиться с Хабром, какие вообще есть виды и, конечно, сравнить их между собой.
https://habr.com/ru/companies/ruvds/articles/900148/
👉 @i_odmin
🌐 OSPF или ISIS: машрутизация между зонами. Как разработать этот функционал и не ошибиться?
Понимание принципов работы маршрутизации между зонами позволяет на качественно новом уровне рассмотреть работу протоколов маршрутизации OSPF и IS-IS, работающих на основе информации о топологии сети и используемых внутри автономных систем (доменов маршрутизации).
Также сравнение отличий в реализации маршрутизации между зонами позволяют выявить ограничения в использовании того либо иного протокола.
На уроке:
- Рассмотрим, как реализована маршрутизация между зонами в OSPF
- Узнаем, как реализована маршрутизация между зонами в ISIS
- Реализуем на практике маршрутизацию между зонами в сети с использованием одного из современных протоколов маршрутизации
👉 Регистрация и подробности о курсе Network Engineer. Professional: https://vk.cc/cLGYNg
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru
💡 Bash-совет дня: Мониторинг открытых портов с выводом в Telegram
Автоматизируй контроль за безопасностью своего сервера! Этот простой bash-скрипт проверяет изменения в открытых портах и шлёт уведомление в Telegram, если появились новые или исчезли старые порты.
#!/bin/bash
# Настройки
TG_TOKEN="your_bot_token"
TG_CHAT_ID="your_chat_id"
PORTS_FILE="/var/tmp/open_ports_last.txt"
# Получаем текущие открытые порты
ss -tuln | awk 'NR>1 {print $5}' | cut -d: -f2 | sort -n | uniq > /tmp/open_ports_now.txt
# Если нет предыдущего файла — создаём
if [ ! -f "$PORTS_FILE" ]; then
cp /tmp/open_ports_now.txt "$PORTS_FILE"
exit 0
fi
# Сравниваем с предыдущим состоянием
DIFF=$(diff -u "$PORTS_FILE" /tmp/open_ports_now.txt)
# Если есть изменения — шлём в Telegram
if [ -n "$DIFF" ]; then
MESSAGE="⚠️ Обнаружены изменения в открытых портах:\n\`\`\`\n$DIFF\n\`\`\`"
curl -s -X POST "https://api.telegram.org/bot$TG_TOKEN/sendMessage" \
-d chat_id="$TG_CHAT_ID" \
-d parse_mode="Markdown" \
-d text="$MESSAGE"
cp /tmp/open_ports_now.txt "$PORTS_FILE"
fi
# Уборка
rm -f /tmp/open_ports_now.txt
your_bot_token
и your_chat_id
на свои значения.
*/10 * * * * /path/to/script.sh
Основы компьютерной безопасности
Лекция 1. Основы криптографии
Практика 1. Криптография и её прикладные инструменты
Лекция 2. Основы сетей
Лекция 3. Основы веба
Практика 2. Основы веба
Лекция 4. Атаки на веб
Лекция 5. Безопасность беспроводных сетей Wi-Fi + воркшоп / Wireless security
Лекция 6. Прикладная криптография для самых маленьких. Менеджеры паролей, HTTPS, SSH
источник
👉 @i_odmin
🎯 Основные компоненты системы на базе Linux
1️⃣ Начальный загрузчик — GRUB
Запускается при старте компьютера и загружает ядро системы.
2️⃣ Ядро Linux
Сердце системы: управляет ресурсами, оборудованием и процессами.
3️⃣ Демоны (Daemons)
Фоновые службы, запускаемые при загрузке системы (например, cron
, systemd
).
4️⃣ Командная оболочка (Shell)
Интерфейс между пользователем и системой. Примеры: bash
, zsh
.
5️⃣ Утилиты командной строки
Набор инструментов для работы в терминале: ls
, cp
, grep
, top
и т.д.
6️⃣ Графический сервер
Компонент, управляющий отображением интерфейса (например, X11
, Wayland
).
Работает с видеокартой, мышью, монитором.
7️⃣ Среда рабочего стола
Графический интерфейс пользователя: KDE
, GNOME
, XFCE
и др.
Включает в себя окна, панели, файловые менеджеры и пр.
8️⃣ Программы рабочего стола
Браузеры, текстовые редакторы, почтовые клиенты — всё, что делает Linux удобным для пользователя.
👉 @i_odmin
Столкнулись с падением производительности базы данных?
Не делайте резких движений: вы можете ухудшить ситуацию.
Сначала нужно верно диагностировать причину проблемы.
Возможно вы неправильно выбрали индексы, а быть может дело вообще в самой архитектуре БД – вариантов масса!
На открытом вебинаре «Как ускорить работу и повысить надёжность PostgreSQL»
вы узнаете:
🎯как обеспечить высокую производительность и отказоустойчивость базы данных
🎯как вовремя выявить деградацию производительности с помощью диагностики
Вебинар проведёт Дмитрий Золотов, Kotlin-разработчик в «Яндексе».
Приглашаем технических руководителей, админов БД, девопсов и разработчиков.
Все участники получат в подарок видеоурок «Безопасность в PostgreSQL: защита данных, управление доступом и аудит» и скидку 7% на любой курс OTUS.
6 мая, 19:00 МСК
Бесплатно
Записаться - https://otus.pw/eioB/
Реклама. ООО "ОТУС ОНЛАЙН-ОБРАЗОВАНИЕ". ИНН 9705100963. erid: 2W5zFJR7f84
Команда grep
используется в Unix/Linux для поиска строк, соответствующих регулярному выражению, в одном или нескольких файлах или потоках ввода.
Синтаксис:
grep [опции] ПАТТЕРН [ФАЙЛ...]
grep "ошибка" журнал.txt
журнал.txt
.
grep -i "ошибка" журнал.txt
grep -r "TODO" ./src
src
.
grep -o "http[s]\?://[^ ]\+"
grep -n "ошибка" журнал.txt
grep -v "успешно" журнал.txt
grep -E "foo|bar" файл.txt
grep --color "pattern" файл.txt
👩💻 Shell скрипт для управления Linux- пользователями
Функциональные возможности
Создание пользователей
Просмотр списка существующих пользователей
Сброс пароля для существующих пользователей
Блокировка / Разблокировка пользовтеля
Просмотр всех заблокированных пользователей
Создание резервной копии домашнего каталога пользователя
Генерирование SSH ключей для пользователя
Повышение пользователя до админа и обратно
Удаление пользователя
Запись всех действий в журнал actions.log
Резервные копии
Скрипт создает каталог резервных копий в папке скрипта и создает архив tar.gz с именем, содержащим - имя пользователя и текущую дату
Генерация SSH ключа
Для генерации используется ssh-keygen, в результате будут отображены сведения о том, куда был сохранен ключ и отображено содержимое публичного ключа:
https://github.com/m0zgen/user-manager
👉 @i_odmin
📕Архитектура программного обеспечения в 1C для для разработчиков 1C, системных и бизнес-аналитиков и руководителей в IT
Как проработка архитектуры может превратить один и тот же проект из неповоротливой конструкции в элегантное и эффективное решение.
📗 На вебинаре 5 мая в 20:00 разберём:
1. Различные архитектурные стили решений, в том числе – на платформе 1С:Предприятие;
2. Ключевые факторы при проектировании оптимальной архитектуры.
📘 В результате будете знать всё о работе с арихитектурой ПО и сможете грамотно оптимизировать работу с ней в проектах.
👉 Регистрация и подробности о курсе Функциональный архитектор 1С: https://vk.cc/cLxSix
Все участники открытого урока получат скидку на курс
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
Софт для VDS-сервера, на который стоит обратить внимание новичкам
Если вы арендовали свой первый VDS-сервер и не знаете, с чего начать, это нормально — поначалу всё может казаться сложным: терминал, настройки, безопасность… Чтобы упростить старт, я собрал список утилит, которые стоит установить в первую очередь. Они помогут настроить сервер под ваши задачи, повысят удобство его использования и защитят от потенциальных угроз.
https://habr.com/ru/companies/ruvds/articles/902596/
👉 @i_odmin
Для защиты своего сервера я использую zip-бомбы
Основной объём трафика в вебе возникает из-за ботов. По большей части, эти боты используются для обнаружения нового контента. Это читалки RSS-фидов, поисковые движки, выполняющие краулинг вашего контента, а сегодня и боты ИИ, собирающие контент, чтобы скармливать его LLM.
Но есть и зловредные боты. Их создают спамеры, скрейперы контента и хакеры. На моём прежнем месте работы бот обнаружил уязвимость Wordpress и встроил в наш сервер зловредный скрипт, а затем превратил машину в ботнет, используемый для DDOS. Один из моих первых веб-сайтов был полностью выдавлен из поиска Google из-за ботов, генерирующих спам. Мне нужно было найти способ защиты от этих ботов, поэтому я начал пользоваться zip-бомбами.
https://habr.com/ru/articles/905776/
👉 @i_odmin