🔐 Windows LAPS: Хватит ставить один пароль на всех
Если у вас на 100 компьютерах одинаковый пароль локального администратора — поздравляю, один взломанный ноутбук компрометирует всю сеть. Это называется Lateral Movement (горизонтальное перемещение).
Решение — Windows LAPS (Local Administrator Password Solution). В 2025 году это уже не отдельный MSI-пакет, а встроенная функция Windows 10/11 и Server 2022/2025.
Как это работает:
Компьютер сам генерирует сложный пароль для локального админа.
Отправляет его в Active Directory (в защищенный атрибут) или в Azure AD.
Меняет его по расписанию (например, каждые 30 дней) или после использования.
Как включить (Modern Way): Вам не нужно качать софт. Просто настройте GPO или Intune: Computer Configuration > Administrative Templates > System > LAPS
Полезный командлет (PowerShell): Чтобы узнать текущий пароль конкретного компа (если у вас есть права):
Итог: Админу удобно (пароли в AD), хакеру больно (пароль от одного ПК не подходит к другому).
#windows #security #laps #activedirectory #bestpractice
Если у вас на 100 компьютерах одинаковый пароль локального администратора — поздравляю, один взломанный ноутбук компрометирует всю сеть. Это называется Lateral Movement (горизонтальное перемещение).
Решение — Windows LAPS (Local Administrator Password Solution). В 2025 году это уже не отдельный MSI-пакет, а встроенная функция Windows 10/11 и Server 2022/2025.
Как это работает:
Компьютер сам генерирует сложный пароль для локального админа.
Отправляет его в Active Directory (в защищенный атрибут) или в Azure AD.
Меняет его по расписанию (например, каждые 30 дней) или после использования.
Как включить (Modern Way): Вам не нужно качать софт. Просто настройте GPO или Intune: Computer Configuration > Administrative Templates > System > LAPS
Полезный командлет (PowerShell): Чтобы узнать текущий пароль конкретного компа (если у вас есть права):
Get-LapsADPassword -Identity "PC-ACCOUNTING-01" -AsPlainText
Итог: Админу удобно (пароли в AD), хакеру больно (пароль от одного ПК не подходит к другому).
#windows #security #laps #activedirectory #bestpractice
🔥1
🦈 Linux + Wireshark: Анализ трафика как PRO
tcpdump — лучший друг админа, когда на уровне логов ничего не понятно. Но смотреть «сырой» вывод в консоли — глаза сломаешь. Архитектор делает иначе: он снимает дамп на сервере, а анализирует его в Wireshark на своем ноутбуке.
Сценарий: Нужно поймать трафик веб-сервера (порт 80 или 443), кроме нашего SSH (чтобы не замусорить дамп).
Команда:
Что дальше?
Ждем воспроизведения проблемы.
Жмем Ctrl+C.
Забираем файл через scp:
Открываем в Wireshark и видим красивые графики, ошибки TCP Retransmission и содержимое пакетов.
Это единственный способ доказать сетевикам, что пакеты теряются на их файерволе.
#linux #network #tcpdump #wireshark #troubleshooting
tcpdump — лучший друг админа, когда на уровне логов ничего не понятно. Но смотреть «сырой» вывод в консоли — глаза сломаешь. Архитектор делает иначе: он снимает дамп на сервере, а анализирует его в Wireshark на своем ноутбуке.
Сценарий: Нужно поймать трафик веб-сервера (порт 80 или 443), кроме нашего SSH (чтобы не замусорить дамп).
Команда:
# -i any : слушать все интерфейсы
# -w capture.pcap : писать в файл, а не на экран
# port not 22 : исключить наш SSH
# host 192.168.1.50 : фильтр по конкретному клиенту (опционально)
tcpdump -i any -w /tmp/capture.pcap port 80 or port 443 and port not 22
Что дальше?
Ждем воспроизведения проблемы.
Жмем Ctrl+C.
Забираем файл через scp:
scp user@server:/tmp/capture.pcap ./Desktop/
Открываем в Wireshark и видим красивые графики, ошибки TCP Retransmission и содержимое пакетов.
Это единственный способ доказать сетевикам, что пакеты теряются на их файерволе.
#linux #network #tcpdump #wireshark #troubleshooting
🔥2
🗑 Linux: Удаляем файлы навсегда (shred)
Команда rm не удаляет файл. Она просто стирает ссылку на него в файловой системе. Сами данные лежат на диске, пока их не перезапишут чем-то другим. Для конфигов с паролями или ключей SSH это опасно.
Используем утилиту shred. Она перезаписывает файл случайным мусором несколько раз перед удалением.
Команда:
Для параноиков: Добавьте это в алиасы для удаления чувствительных данных. alias rmsecure='shred -u -z -n 3'
⚠️ Важно: На SSD с функцией Wear Leveling и в облаках это не дает 100% гарантии, но это намного лучше, чем просто rm.
#linux #security #privacy #commands #cli
Команда rm не удаляет файл. Она просто стирает ссылку на него в файловой системе. Сами данные лежат на диске, пока их не перезапишут чем-то другим. Для конфигов с паролями или ключей SSH это опасно.
Используем утилиту shred. Она перезаписывает файл случайным мусором несколько раз перед удалением.
Команда:
# -u : удалить файл после перезаписи
# -z : в конце перезаписать нулями (чтобы скрыть сам факт шреддинга)
# -n 3 : перезаписать мусором 3 раза
shred -u -z -n 3 private_key.pem
Для параноиков: Добавьте это в алиасы для удаления чувствительных данных. alias rmsecure='shred -u -z -n 3'
⚠️ Важно: На SSD с функцией Wear Leveling и в облаках это не дает 100% гарантии, но это намного лучше, чем просто rm.
#linux #security #privacy #commands #cli
🔄 Идемпотентность: Главное слово в словаре архитектора
Если вы пишете скрипты или Ansible-плейбуки, вы обязаны понимать концепцию Идемпотентности. Без этого автоматизация превращается в хаос.
Определение: Операция считается идемпотентной, если её многократное повторение приводит к тому же результату, что и однократное выполнение, не вызывая ошибок и дублирования данных.
Пример на Bash:
❌ Не идемпотентно:
✅ Идемпотентно:
Почему это важно: В современном мире (Ansible, Terraform, Kubernetes) агент запускается каждые 15-30 минут. Если ваш скрипт не идемпотентен, он каждый раз будет ломать конфиги, дублировать строки или перезапускать сервисы без причины.
Правило: Пишите любой скрипт так, будто он будет запускаться каждую минуту.
#devops #architecture #coding #bestpractice #theory #automation
Если вы пишете скрипты или Ansible-плейбуки, вы обязаны понимать концепцию Идемпотентности. Без этого автоматизация превращается в хаос.
Определение: Операция считается идемпотентной, если её многократное повторение приводит к тому же результату, что и однократное выполнение, не вызывая ошибок и дублирования данных.
Пример на Bash:
❌ Не идемпотентно:
# Если запустить 2 раза, в файле будет две записи
echo "127.0.0.1 myapp.local" >> /etc/hosts
✅ Идемпотентно:
# Проверяем, есть ли запись, и добавляем только если нет
grep -q "myapp.local" /etc/hosts || echo "127.0.0.1 myapp.local" >> /etc/hosts
Почему это важно: В современном мире (Ansible, Terraform, Kubernetes) агент запускается каждые 15-30 минут. Если ваш скрипт не идемпотентен, он каждый раз будет ломать конфиги, дублировать строки или перезапускать сервисы без причины.
Правило: Пишите любой скрипт так, будто он будет запускаться каждую минуту.
#devops #architecture #coding #bestpractice #theory #automation
🌳 Linux: lsblk — ваша карта дисков
Многие по старинке используют fdisk -l, чтобы посмотреть диски. Но вывод этой команды громоздкий и не показывает связи. Инструмент современного админа — lsblk.
Почему он круче: Он строит дерево. Вы сразу видите: Физический диск → Раздел → LVM слой → Точка монтирования.
Полезные ключи:
Показать файловые системы и UUID (для fstab):
Вывод в JSON (для скриптов и парсинга):
Показать топологию (кто чей "раб"):
Перестаньте гадать, какой раздел смонтирован в /var. Просто наберите lsblk.
#linux #storage #cli #tools #sysadmin
Многие по старинке используют fdisk -l, чтобы посмотреть диски. Но вывод этой команды громоздкий и не показывает связи. Инструмент современного админа — lsblk.
Почему он круче: Он строит дерево. Вы сразу видите: Физический диск → Раздел → LVM слой → Точка монтирования.
Полезные ключи:
Показать файловые системы и UUID (для fstab):
lsblk -f
Вывод в JSON (для скриптов и парсинга):
lsblk -J
Показать топологию (кто чей "раб"):
lsblk -t
Перестаньте гадать, какой раздел смонтирован в /var. Просто наберите lsblk.
#linux #storage #cli #tools #sysadmin
share PowerShell: Найди "забытые" сетевые папки
Сетевые шары (Shares) — любимый путь вирусов-шифровальщиков. Часто бывает так: админ расшарил папку "temp" для передачи дистрибутива и забыл. Спустя год там лежит архив с базой 1С, доступный всем (Everyone: Full Control).
Давайте найдем все не-системные шары одной командой.
Скрипт:
Задача: Запустите на файловом сервере. Если увидите шару с именем Distrib, Scan или Obmen — проверьте права доступа немедленно (Get-SmbShareAccess -Name "Obmen").
#windows #powershell #security #audit #network
Сетевые шары (Shares) — любимый путь вирусов-шифровальщиков. Часто бывает так: админ расшарил папку "temp" для передачи дистрибутива и забыл. Спустя год там лежит архив с базой 1С, доступный всем (Everyone: Full Control).
Давайте найдем все не-системные шары одной командой.
Скрипт:
# Получаем все шары
Get-SmbShare |
# Исключаем дефолтные (C$, IPC$, ADMIN$ и т.д.)
Where-Object { $_.Special -eq $false } |
# Смотрим путь и описание
Select-Object Name, Path, Description |
Format-Table -AutoSize
Задача: Запустите на файловом сервере. Если увидите шару с именем Distrib, Scan или Obmen — проверьте права доступа немедленно (Get-SmbShareAccess -Name "Obmen").
#windows #powershell #security #audit #network
🧠 AI-Лайфхак: Regex больше не проблема
Давайте честно: никто не любит писать регулярные выражения с нуля. Это долго и больно. В 2025 году стыдно тратить на это час времени. Делегируйте это AI, но делайте это правильно.
Плохой промпт:
"Напиши регекс для email".
Хороший промпт (для админа):
"Напиши регулярное выражение (PCRE) для поиска IP-адресов в логах Nginx, которые пытались получить доступ к admin.php. Формат лога: $remote_addr - $remote_user [$time_local] "$request". Дай команду grep, которая использует этот регекс и выводит только уникальные IP".
Результат, который выдаст бот:
Используйте нейронки как генератор синтаксиса sed, awk и regex. Это освобождает мозг для архитектурных задач.
#ai4admin #regex #productivity #chatgpt #troubleshooting
Давайте честно: никто не любит писать регулярные выражения с нуля. Это долго и больно. В 2025 году стыдно тратить на это час времени. Делегируйте это AI, но делайте это правильно.
Плохой промпт:
"Напиши регекс для email".
Хороший промпт (для админа):
"Напиши регулярное выражение (PCRE) для поиска IP-адресов в логах Nginx, которые пытались получить доступ к admin.php. Формат лога: $remote_addr - $remote_user [$time_local] "$request". Дай команду grep, которая использует этот регекс и выводит только уникальные IP".
Результат, который выдаст бот:
grep -P '(?<=^)\d{1,3}(\.\d{1,3}){3}(?=.*GET /admin\.php)' access.log | sort | uniq
Используйте нейронки как генератор синтаксиса sed, awk и regex. Это освобождает мозг для архитектурных задач.
#ai4admin #regex #productivity #chatgpt #troubleshooting
🧊 Read-Only Friday: Ловушка «на 5 минут»
Коллеги, напоминаем: пятница — день для чтения, обучения и документации. Самая страшная фраза, которую можно услышать в 16:00 пятницы:
«Да там делов на 5 минут, просто конфиг поправить».
Почему это ловушка:
Закон Мерфи: Если что-то может пойти не так, оно пойдет не так именно после перезагрузки сервиса в пятницу вечером.
Усталость: К концу недели концентрация падает. Вы можете не заметить лишний пробел в YAML или запятую в JSON.
Поддержка: Если всё упадет в субботу утром, вендоры и коллеги будут недоступны.
Что можно делать сегодня:
✅ Писать документацию в Confluence/Wiki.
✅ Наводить порядок в стойке (кабель-менеджмент).
✅ Чистить старые тикеты в Jira.
✅ Изучать новые инструменты в песочнице (не на проде!).
Берегите свои выходные.
#readonlyfriday #adminlife #devops #culture #safety
Коллеги, напоминаем: пятница — день для чтения, обучения и документации. Самая страшная фраза, которую можно услышать в 16:00 пятницы:
«Да там делов на 5 минут, просто конфиг поправить».
Почему это ловушка:
Закон Мерфи: Если что-то может пойти не так, оно пойдет не так именно после перезагрузки сервиса в пятницу вечером.
Усталость: К концу недели концентрация падает. Вы можете не заметить лишний пробел в YAML или запятую в JSON.
Поддержка: Если всё упадет в субботу утром, вендоры и коллеги будут недоступны.
Что можно делать сегодня:
✅ Писать документацию в Confluence/Wiki.
✅ Наводить порядок в стойке (кабель-менеджмент).
✅ Чистить старые тикеты в Jira.
✅ Изучать новые инструменты в песочнице (не на проде!).
Берегите свои выходные.
#readonlyfriday #adminlife #devops #culture #safety
🔥3
🤔 Network: В чем разница между 127.0.0.1 и 0.0.0.0?
Классический вопрос на собеседовании и частая ошибка в конфигах Nginx/Docker. Оба адреса относятся к "этому компьютеру", но работают они принципиально по-разному.
1. 127.0.0.1 (Localhost)
Суть: Loopback-интерфейс.
Как работает: Трафик никогда не покидает хост. Он даже не доходит до сетевой карты.
Кейс: Вы запускаете базу данных и хотите, чтобы к ней мог подключиться только ваш локальный бэкенд.
Конфиг: bind-address = 127.0.0.1
2. 0.0.0.0 (Wildcard)
Суть: "Все доступные интерфейсы".
Как работает: Сервис начинает слушать на всех IP-адресах, которые есть у сервера (и на локальном 127.0.0.1, и на внешнем Ethernet/Wi-Fi).
Кейс: Вы запускаете веб-сервер, который должен быть доступен из интернета.
Конфиг: listen 0.0.0.0:80
☠️ Где ошибаются: Если вы в Docker или базе данных напишете 0.0.0.0 вместо 127.0.0.1, вы можете случайно открыть порт для всего интернета (если фаервол не настроен). Правило архитектора: Всегда биндите сервисы на 127.0.0.1, если нет явной причины пускать мир внутрь.
#network #security #theory #bestpractice #interview
Классический вопрос на собеседовании и частая ошибка в конфигах Nginx/Docker. Оба адреса относятся к "этому компьютеру", но работают они принципиально по-разному.
1. 127.0.0.1 (Localhost)
Суть: Loopback-интерфейс.
Как работает: Трафик никогда не покидает хост. Он даже не доходит до сетевой карты.
Кейс: Вы запускаете базу данных и хотите, чтобы к ней мог подключиться только ваш локальный бэкенд.
Конфиг: bind-address = 127.0.0.1
2. 0.0.0.0 (Wildcard)
Суть: "Все доступные интерфейсы".
Как работает: Сервис начинает слушать на всех IP-адресах, которые есть у сервера (и на локальном 127.0.0.1, и на внешнем Ethernet/Wi-Fi).
Кейс: Вы запускаете веб-сервер, который должен быть доступен из интернета.
Конфиг: listen 0.0.0.0:80
☠️ Где ошибаются: Если вы в Docker или базе данных напишете 0.0.0.0 вместо 127.0.0.1, вы можете случайно открыть порт для всего интернета (если фаервол не настроен). Правило архитектора: Всегда биндите сервисы на 127.0.0.1, если нет явной причины пускать мир внутрь.
#network #security #theory #bestpractice #interview
🛡 Linux: Липкий бит (Sticky Bit). Магия папки /tmp
Все знают chmod 777 (разрешить всем всё). Но почему тогда в папке /tmp (у которой права 777) я не могу удалить файлы другого пользователя?
Ответ: Sticky Bit.
Это специальный флаг прав доступа (обозначается буквой t в конце: drwxrwxrwt). Правило Sticky Bit: В этой директории создавать файлы могут все, но удалить файл может только его владелец (или root).
Как установить:
Кейс для админа: У вас есть общая папка для обмена документами в отделе (/srv/share). Чтобы сотрудники случайно не удаляли отчеты коллег, но могли заливать свои — включите Sticky Bit.
#linux #security #permissions #basics #cli
Все знают chmod 777 (разрешить всем всё). Но почему тогда в папке /tmp (у которой права 777) я не могу удалить файлы другого пользователя?
Ответ: Sticky Bit.
Это специальный флаг прав доступа (обозначается буквой t в конце: drwxrwxrwt). Правило Sticky Bit: В этой директории создавать файлы могут все, но удалить файл может только его владелец (или root).
Как установить:
# Старый способ (через цифры, бит 1 в начале)
chmod 1777 /my/shared/folder
# Понятный способ
chmod +t /my/shared/folder
Кейс для админа: У вас есть общая папка для обмена документами в отделе (/srv/share). Чтобы сотрудники случайно не удаляли отчеты коллег, но могли заливать свои — включите Sticky Bit.
#linux #security #permissions #basics #cli
👀 Uptime Kuma: Мониторинг для людей
Zabbix слишком сложен для домашнего сервера или быстрого проекта? Prometheus требует Grafana? Попробуйте Uptime Kuma.
Это современный Self-Hosted инструмент мониторинга с красивым UI.
Что умеет:
✅ Пинговать хосты (HTTP/s, TCP, DNS, Ping).
✅ Проверять SSL-сертификаты (и орать, когда истекают).
✅ Красивые Status Pages (как у облачных провайдеров).
✅ Уведомления в Telegram, Discord, Slack.
Установка за 30 секунд (Docker):
Перейдите на http://localhost:3001 и наслаждайтесь.
Идеально, чтобы следить за своим сайтом, домашним роутером или VPN-сервером.
#homelab #monitoring #docker #opensource #tools
Zabbix слишком сложен для домашнего сервера или быстрого проекта? Prometheus требует Grafana? Попробуйте Uptime Kuma.
Это современный Self-Hosted инструмент мониторинга с красивым UI.
Что умеет:
✅ Пинговать хосты (HTTP/s, TCP, DNS, Ping).
✅ Проверять SSL-сертификаты (и орать, когда истекают).
✅ Красивые Status Pages (как у облачных провайдеров).
✅ Уведомления в Telegram, Discord, Slack.
Установка за 30 секунд (Docker):
docker run -d --restart=always -p 3001:3001 -v uptime-kuma:/app/data --name uptime-kuma louislam/uptime-kuma:1
Перейдите на http://localhost:3001 и наслаждайтесь.
Идеально, чтобы следить за своим сайтом, домашним роутером или VPN-сервером.
#homelab #monitoring #docker #opensource #tools
🔥3
📆 Воскресный чек: Готовимся к понедельнику
Чтобы завтра утром не было сюрпризов, потратьте 5 минут сейчас.
1. SSL-чек: Вспомните, не истекает ли какой-то важный сертификат на этой неделе? (Лучше проверить сейчас, чем в панике в 9:00 пн).
2. Место на диске: Если у вас крутятся тяжелые логи, посмотрите df -h. Выходные могли забить диск.
3. Заметки: Набросайте в Saved Messages 3 главные задачи на неделю.
Например: Обновить Nginx, разобраться с бэкапами БД, настроить VPN для нового сотрудника.
Спокойного вечера и легкого старта недели! 🚀
#productivity #checklist #planning #adminlife
Чтобы завтра утром не было сюрпризов, потратьте 5 минут сейчас.
1. SSL-чек: Вспомните, не истекает ли какой-то важный сертификат на этой неделе? (Лучше проверить сейчас, чем в панике в 9:00 пн).
2. Место на диске: Если у вас крутятся тяжелые логи, посмотрите df -h. Выходные могли забить диск.
3. Заметки: Набросайте в Saved Messages 3 главные задачи на неделю.
Например: Обновить Nginx, разобраться с бэкапами БД, настроить VPN для нового сотрудника.
Спокойного вечера и легкого старта недели! 🚀
#productivity #checklist #planning #adminlife
🔥2
📉 Linux: ncdu — когда диск забился, а du бесит
Утро понедельника часто начинается с алерта Zabbix: Disk space is low on /var. Обычный админ пишет du -h --max-depth=1 | sort -hr и страдает, пытаясь понять, где именно "распухло".
Архитектор запускает ncdu (NCurses Disk Usage).
Почему это маст-хэв:
1. Интерактивность: Это как Total Commander, но для анализа места. Вы ходите стрелками по папкам и сразу видите, кто жрет место.
2. Скорость: Сканирует мгновенно.
3. Удаление: Можно нажать d и удалить файл/папку прямо из интерфейса (будьте осторожны!).
Установка:
Лайфхак: Если нужно просканировать корень, но исключить примонтированные сетевые шары (чтобы не сканировать полмира):
Сэкономьте себе 20 минут времени на поиске логов, которые забыл удалить ротейт.
#linux #tools #cli #diskusage #ncdu #troubleshooting
Утро понедельника часто начинается с алерта Zabbix: Disk space is low on /var. Обычный админ пишет du -h --max-depth=1 | sort -hr и страдает, пытаясь понять, где именно "распухло".
Архитектор запускает ncdu (NCurses Disk Usage).
Почему это маст-хэв:
1. Интерактивность: Это как Total Commander, но для анализа места. Вы ходите стрелками по папкам и сразу видите, кто жрет место.
2. Скорость: Сканирует мгновенно.
3. Удаление: Можно нажать d и удалить файл/папку прямо из интерфейса (будьте осторожны!).
Установка:
sudo apt install ncdu # Debian/Ubuntu
sudo yum install ncdu # RHEL/CentOS
Лайфхак: Если нужно просканировать корень, но исключить примонтированные сетевые шары (чтобы не сканировать полмира):
ncdu -x /
Сэкономьте себе 20 минут времени на поиске логов, которые забыл удалить ротейт.
#linux #tools #cli #diskusage #ncdu #troubleshooting
👍2
👑 PowerShell: Где мои FSMO роли?
Если ваш контроллер домена "приуныл", первое, что нужно знать — держит ли он FSMO (Flexible Single Master Operations) роли. Потеря рядового DC — это ерунда. Потеря PDC Emulator или Schema Master — это проблема.
Забудьте про netdom query fsmo. Делаем красиво через объекты.
Скрипт:
Pro Tip: Сохраните этот вывод. В случае аварии вы должны знать, какой именно сервер захватывать (Seize) принудительно.
#activedirectory #powershell #windows #fsmo #architecture
Если ваш контроллер домена "приуныл", первое, что нужно знать — держит ли он FSMO (Flexible Single Master Operations) роли. Потеря рядового DC — это ерунда. Потеря PDC Emulator или Schema Master — это проблема.
Забудьте про netdom query fsmo. Делаем красиво через объекты.
Скрипт:
# Получаем роли уровня Домена
$Domain = Get-ADDomain | Select-Object InfrastructureMaster, RIDMaster, PDCEmulator
# Получаем роли уровня Леса
$Forest = Get-ADForest | Select-Object SchemaMaster, DomainNamingMaster
# Выводим красивый отчет
Write-Host "🌲 Forest Roles:" -ForegroundColor Cyan
$Forest | Format-List
Write-Host "🏰 Domain Roles:" -ForegroundColor Cyan
$Domain | Format-List
Pro Tip: Сохраните этот вывод. В случае аварии вы должны знать, какой именно сервер захватывать (Seize) принудительно.
#activedirectory #powershell #windows #fsmo #architecture
🔔 Bash: Уведомление в Telegram при входе по SSH
Хотите знать, если кто-то (или вы сами) зашел на критический сервер? Простой скрипт, который отправляет алерт в Telegram при каждой успешной SSH-сессии.
1. Создаем скрипт /usr/local/bin/ssh-alert.sh:
Не забудьте: chmod +x /usr/local/bin/ssh-alert.sh
2. Добавляем в глобальный профиль: Открываем /etc/profile (сработает для всех юзеров) и добавляем в конец:
Теперь, если кто-то подберет пароль или украдет ключ — вы узнаете об этом первым (и успеете дернуть рубильник).
#linux #security #ssh #telegram #scripting #monitoring
Хотите знать, если кто-то (или вы сами) зашел на критический сервер? Простой скрипт, который отправляет алерт в Telegram при каждой успешной SSH-сессии.
1. Создаем скрипт /usr/local/bin/ssh-alert.sh:
#!/bin/bash
TOKEN="ВАШ_БОТ_ТОКЕН"
CHAT_ID="ВАШ_ID"
URL="https://api.telegram.org/bot$TOKEN/sendMessage"
MSG="🚨 SSH Login: $USER from $SSH_CLIENT on $(hostname) at $(date)"
curl -s -X POST $URL -d chat_id=$CHAT_ID -d text="$MSG" > /dev/null
Не забудьте: chmod +x /usr/local/bin/ssh-alert.sh
2. Добавляем в глобальный профиль: Открываем /etc/profile (сработает для всех юзеров) и добавляем в конец:
/usr/local/bin/ssh-alert.sh
Теперь, если кто-то подберет пароль или украдет ключ — вы узнаете об этом первым (и успеете дернуть рубильник).
#linux #security #ssh #telegram #scripting #monitoring
👍1
😱 The Scream Test: Когда документации нет
Как узнать, нужен ли этот старый сервер srv-app-legacy-02, если документации нет, а спросить не у кого? Применяем Scream Test (Тест на крик).
Алгоритм:
1. Выключаем сетевой интерфейс или службу.
2. Ждем.
3. Если никто не позвонил и не закричал в течение недели — сервер можно удалять.
* Если закричали — включаем обратно и записываем, кто и зачем его использует.
⚠️ Техника безопасности:
* Никогда не делайте это в пятницу.
* Никогда не удаляйте данные сразу (делайте бэкап/снапшот).
* Делайте это в "рабочие часы", когда вы на месте.
Жестоко? Да. Эффективно? Абсолютно.
#adminlife #humor #methodology #legacy #cleanup
Как узнать, нужен ли этот старый сервер srv-app-legacy-02, если документации нет, а спросить не у кого? Применяем Scream Test (Тест на крик).
Алгоритм:
1. Выключаем сетевой интерфейс или службу.
2. Ждем.
3. Если никто не позвонил и не закричал в течение недели — сервер можно удалять.
* Если закричали — включаем обратно и записываем, кто и зачем его использует.
⚠️ Техника безопасности:
* Никогда не делайте это в пятницу.
* Никогда не удаляйте данные сразу (делайте бэкап/снапшот).
* Делайте это в "рабочие часы", когда вы на месте.
Жестоко? Да. Эффективно? Абсолютно.
#adminlife #humor #methodology #legacy #cleanup
👍2
Мальчик:
Сдается и качает мессенджер МАХ после блокировок всех приложений
Мужчина:
Сдается и качает мессенджер МАХ после блокировок всех приложений
Мужчина:
🔥 React2Shell: Новый кошмар для веб-серверов (CVSS 10.0)
Коллеги, если вы админите веб-инфраструктуру, отложите кофе. В сети разгорается пожар, получивший имя React2Shell (CVE-2025-55182). Это RCE (Remote Code Execution) с максимальным рейтингом 10 из 10.
Суть: Уязвимость в React и Next.js (компоненты React Server Components). Атакующему не нужна авторизация. Он просто отправляет специально сформированный HTTP-запрос к эндпоинту серверной функции, и сервер выполняет произвольный код.
Кто под ударом: Любой публичный сервис, использующий SSR (Server Side Rendering) на свежих версиях Next.js.
Что делать прямо сейчас:
1. Патчинг: Обновите react и next до последних версий, выпущенных вчера.
2. WAF: Если патчить долго (легаси), срочно настраивайте WAF.
3. Cloudflare уже выкатил правила (и даже положил ими часть интернета 5 декабря, см. следующий пост).
4. Nginx/ModSecurity: Блокируйте запросы, содержащие подозрительные сериализованные пейлоады в теле POST.
Маркеры компрометации (IoC): Смотрите логи на предмет странных вызовов к /_next/static/... с аномально большими телами запросов.
#security #cve #react2shell #alert #vulnerability #web
Коллеги, если вы админите веб-инфраструктуру, отложите кофе. В сети разгорается пожар, получивший имя React2Shell (CVE-2025-55182). Это RCE (Remote Code Execution) с максимальным рейтингом 10 из 10.
Суть: Уязвимость в React и Next.js (компоненты React Server Components). Атакующему не нужна авторизация. Он просто отправляет специально сформированный HTTP-запрос к эндпоинту серверной функции, и сервер выполняет произвольный код.
Кто под ударом: Любой публичный сервис, использующий SSR (Server Side Rendering) на свежих версиях Next.js.
Что делать прямо сейчас:
1. Патчинг: Обновите react и next до последних версий, выпущенных вчера.
2. WAF: Если патчить долго (легаси), срочно настраивайте WAF.
3. Cloudflare уже выкатил правила (и даже положил ими часть интернета 5 декабря, см. следующий пост).
4. Nginx/ModSecurity: Блокируйте запросы, содержащие подозрительные сериализованные пейлоады в теле POST.
Маркеры компрометации (IoC): Смотрите логи на предмет странных вызовов к /_next/static/... с аномально большими телами запросов.
#security #cve #react2shell #alert #vulnerability #web
🐧 Linux 6.18 LTS: Ядро, с которым нам жить до 2027
Линус Торвальдс официально объявил релиз Linux Kernel 6.18. Главная новость: эта версия получила статус LTS (Long Term Support). Именно она станет основой для будущих версий Ubuntu 26.04, Debian и RHEL.
Что внутри:
1. Apple Silicon: Наконец-то полноценная поддержка чипов M2 Pro/Max/Ultra в апстриме. Можно ставить Linux на Mac без танцев с бубном (почти).
2. Прощай, Bcachefs: Экспериментальную файловую систему удалили из ветки. Если вы рискнули использовать её в проде — у вас проблемы. Мигрируйте на Btrfs/XFS.
3. Виртуализация: KVM теперь поддерживает Intel CET (Control-flow Enforcement Technology) для гостевых систем. Это защита от ROP-атак внутри виртуалки.
Команда для проверки: Пока рано обновлять прод, но в arch уже прилетело.
Готовимся к переезду в следующем году.
#linux #kernel #lts #news #opensource
Линус Торвальдс официально объявил релиз Linux Kernel 6.18. Главная новость: эта версия получила статус LTS (Long Term Support). Именно она станет основой для будущих версий Ubuntu 26.04, Debian и RHEL.
Что внутри:
1. Apple Silicon: Наконец-то полноценная поддержка чипов M2 Pro/Max/Ultra в апстриме. Можно ставить Linux на Mac без танцев с бубном (почти).
2. Прощай, Bcachefs: Экспериментальную файловую систему удалили из ветки. Если вы рискнули использовать её в проде — у вас проблемы. Мигрируйте на Btrfs/XFS.
3. Виртуализация: KVM теперь поддерживает Intel CET (Control-flow Enforcement Technology) для гостевых систем. Это защита от ROP-атак внутри виртуалки.
Команда для проверки: Пока рано обновлять прод, но в arch уже прилетело.
uname -r
# Ждем 6.18.x
Готовимся к переезду в следующем году.
#linux #kernel #lts #news #opensource
🎅 Advent of Sysadmin 2025: Челлендж для тех, кто устал от LeetCode
Пока программисты решают Advent of Code, для нас запустили Advent of Sysadmin. Это серия ежедневных задач на живых серверах (в браузере), где нужно что-то починить или взломать.
Примеры задач этой недели:
Dec 05: "La Rinconada" — Вы зашли под юзером без sudo. Найдите способ поднять привилегии, используя криво настроенный скрипт бэкапа.
Dec 08: "Kortenberg" — Nginx выдает 403 Forbidden, права на файл 777, SELinux выключен. В чем причина? (Спойлер: лимиты файловых дескрипторов).
Идеально, чтобы размять мозги за утренним кофе или дать задачу джуну на собеседовании.
🔗 Ссылка
https://sadservers.com/advent
#learning #challenge #sysadmin #linux #fun
Пока программисты решают Advent of Code, для нас запустили Advent of Sysadmin. Это серия ежедневных задач на живых серверах (в браузере), где нужно что-то починить или взломать.
Примеры задач этой недели:
Dec 05: "La Rinconada" — Вы зашли под юзером без sudo. Найдите способ поднять привилегии, используя криво настроенный скрипт бэкапа.
Dec 08: "Kortenberg" — Nginx выдает 403 Forbidden, права на файл 777, SELinux выключен. В чем причина? (Спойлер: лимиты файловых дескрипторов).
Идеально, чтобы размять мозги за утренним кофе или дать задачу джуну на собеседовании.
🔗 Ссылка
https://sadservers.com/advent
#learning #challenge #sysadmin #linux #fun