👮♂️ PowerShell: Кто в админах?
Банальная, но критичная задача. Часто техподдержка дает права локального админа пользователю "на 5 минут, чтобы поставить программу", и забывает убрать. Через полгода у вас половина офиса — админы.
Скрипт для инвентаризации группы Administrators на удаленных ПК.
Код:
Что искать в отчете:
Доменных пользователей (кроме админов домена и техподдержки).
Левые локальные учетки.
Чистота прав доступа — залог спокойного сна.
#powershell #security #audit #windows #scripting
Банальная, но критичная задача. Часто техподдержка дает права локального админа пользователю "на 5 минут, чтобы поставить программу", и забывает убрать. Через полгода у вас половина офиса — админы.
Скрипт для инвентаризации группы Administrators на удаленных ПК.
Код:
$Computers = Get-Content "C:\servers.txt" # Или список из AD
foreach ($PC in $Computers) {
Try {
$Admins = Invoke-Command -ComputerName $PC -ScriptBlock {
Get-LocalGroupMember -Group "Administrators" |
Select-Object -ExpandProperty Name
} -ErrorAction Stop
[PSCustomObject]@{
Server = $PC
LocalAdmins = ($Admins -join ", ")
}
} Catch {
Write-Warning "Не удалось подключиться к $PC"
}
}
Что искать в отчете:
Доменных пользователей (кроме админов домена и техподдержки).
Левые локальные учетки.
Чистота прав доступа — залог спокойного сна.
#powershell #security #audit #windows #scripting
🔥2
🔐 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