TGViewer
LinuxSkill - Сводки с прода и Шпаргалки LinuxSkill - Сводки с прода и Шпаргалки @linuxskill · 10.7K subscribers
Post #1214 1.57K
Закрыть системные файлы от правки и не получить молча сломанный useradd

Запретить правку файла даже руту


chattr +i /etc/passwd


Нюанс: useradd после этого выдаёт cannot open /etc/passwd и завершается с кодом 0. Пользователь не создаётся, скрипт не падает, мониторинг молчит. Снял атрибут — создался.

Разрешить логу только дозапись


chattr +a /var/log/secure


Нюанс: ротация делается переименованием, а его атрибут не пускает. Запустил logrotate на таком файле:


error: failed to rename: Operation not permitted
rc=0


Снова ноль на выходе. Файл не ротировался, cron считает, что всё прошло, логи растут до конца места.

Найти файлы с SUID и SGID


find / -xdev -perm /6000 -type f -ls 2>/dev/null


Нюанс: без -xdev поиск по корню вернул ноль файлов и код 1 — захлебнулся на /proc. С ним нашлось 16 штук. Пустой вывод легко принять за чистую систему. Старый синтаксис +6000 GNU find уже не понимает, отвечает invalid mode.

Выдать права одному пользователю


setfacl -m u:lisa:rw file
setfacl -b file


Единственное место без подвоха. После первой команды в ls -l появляется плюс: -rw-rw-r--+, после сброса исчезает — по нему и замечают ACL.

Поставить наблюдение за файлом


auditctl -w /etc/passwd -p wa -k pwd_change


Нюанс: правило живёт до перезапуска auditd. Постоянные пишутся в /etc/audit/rules.d/audit.rules.

Закрыть входящий трафик, оставшись в сессии


iptables -A INPUT -m conntrack \
--ctstate ESTABLISHED,RELATED -j ACCEPT
iptables -A INPUT -i lo -j ACCEPT
iptables -A INPUT -p tcp --dport 22 -j ACCEPT
iptables -P INPUT DROP


Порядок именно такой: политика последней. iptables -P INPUT DROP первой командой на удалённом сервере обрывает соединение сразу. И два уточнения: -m state до сих пор принимается, но актуален -m conntrack --ctstate, а iptables -V на 24.04 отвечает v1.8.10 (nf_tables) — правила уезжают в nftables.

У двух худших находок общее одно: команда не сработала, а код возврата ноль. Мониторингом такое не ловится.

А вы chattr +i на боевых конфигах ставите или считаете это ловушкой для самого себя?

#Linux #Security #Hardening #iptables #DevOps
  • 👍 5
  • 🔥 1
More from @linuxskill
  1. Oct 2, 2026📊 Диск тормозит, а iostat показывает норму? Ищем хвост задержек Приложение подвисает на з…
  2. Sep 30, 2026💀 CPU под 100%, а в top пусто? Ловим невидимые процессы через eBPF Сервер греется, в шапк…
  3. Sep 28, 2026🔥 Знаешь только ip a? 10 неочевидных команд ip для Linux Большинство админов знают про ip…
  4. Sep 25, 2026Разобрать строку штатным <regex.h> и не получить молчаливое «нет совпадения». Проверял на…
  5. Sep 23, 2026Закрыть периметр правилами iptables и не остаться при этом за дверью вместе с атакующим. П…
  6. Sep 21, 2026Добавить пользователя в группу и не выкинуть его при этом из sudo Добавить во вторичную гр…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →