Admin Future
239 subscribers
50 photos
1 video
4 files
87 links
Превращаем эникейщиков в System Architects.
🚀 Твой навигатор в мире IT-инфраструктуры:

▪️ Hard Skills: Linux, Windows, Network, Security
▪️ Tools: Лучший софт и скрытые фишки
▪️ Mindset: Как думать, чтобы платили много


Админ - @maksimshap
Download Telegram
👮‍♂️ PowerShell: Кто в админах?

Банальная, но критичная задача. Часто техподдержка дает права локального админа пользователю "на 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): Чтобы узнать текущий пароль конкретного компа (если у вас есть права):

Get-LapsADPassword -Identity "PC-ACCOUNTING-01" -AsPlainText

Итог: Админу удобно (пароли в AD), хакеру больно (пароль от одного ПК не подходит к другому).

#windows #security #laps #activedirectory #bestpractice
🔥1
🦈 Linux + Wireshark: Анализ трафика как PRO

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. Она перезаписывает файл случайным мусором несколько раз перед удалением.

Команда:


# -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:
Не идемпотентно:

# Если запустить 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):

lsblk -f

Вывод в JSON (для скриптов и парсинга):

lsblk -J

Показать топологию (кто чей "раб"):

lsblk -t

Перестаньте гадать, какой раздел смонтирован в /var. Просто наберите lsblk.

#linux #storage #cli #tools #sysadmin
share PowerShell: Найди "забытые" сетевые папки

Сетевые шары (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".

Результат, который выдаст бот:

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
🔥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
🛡 Linux: Липкий бит (Sticky Bit). Магия папки /tmp

Все знают 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):
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
🔥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 и удалить файл/папку прямо из интерфейса (будьте осторожны!).

Установка:

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. Делаем красиво через объекты.
Скрипт:

# Получаем роли уровня Домена
$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:

#!/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
👍2
Мальчик:
Сдается и качает мессенджер МАХ после блокировок всех приложений

Мужчина:
😁5
🔥 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
🐧 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 уже прилетело.

uname -r
# Ждем 6.18.x

Готовимся к переезду в следующем году.

#linux #kernel #lts #news #opensource