DNSSEC підтверджує, що відповідь DNS справжня, а не підмінена. У PowerDNS увімкнути його - одна команда: secure-zone генерує ключ і сервер підписує відповіді онлайн. Ключі лежать у MariaDB, тож їдуть реплікацією - репліка віддає зону підписаною сама. Показуємо RRSIG, DS для реєстратора і перевіряємо на обох нодах. Частина серії про відмовостійкий authoritative DNS.
У частині 4 ми різали UDP-флуд запитами. Але атака буває по TCP-зʼєднаннях: мало запитів, багато конектів - і TCP-потоки сервера забиті. Ставимо в dnsdist ліміти зʼєднань: скільки одночасних з одного IP, скільки запитів на конект, скільки конект живе. Наживо відкриваємо 60 зʼєднань з однієї машини й бачимо, як їх ріже до 5, а чесний клієнт не помічає.
Резолвери заливають authoritative-сервер запитами, і pdns захлинається. Ставимо захист у dnsdist: ліміт на IP з форсуванням TCP проти спуфленого UDP і динамічні блоки, що тимчасово банять абʼюзера. Заливаємо сервер наживо з сусідньої машини - потік падає з 800 до ~100 запитів/с, а чесний клієнт не помічає. Частина серії про відмовостійкий authoritative DNS.
Свіжий сервер в інтернеті - уже мішень, боти стукають у SSH за кілька хвилин. Збираємо базовий чеклист, що закриває більшість: окремий користувач із sudo, ключі замість паролів, строга криптографія до нуля попереджень у ssh-audit, ufw і автооновлення. Це фінал серії «Захист сервера».
Паролі команди живуть у чатах і на стікерах, поки хтось не звільниться разом із доступами. Ставимо власний Vaultwarden на одну маленьку VM: окремий диск під дані, Docker, HTTPS без домену через внутрішній CA Caddy, а далі - спільний сейф організації з колекціями по відділах і запрошеннями на ~20 людей. Усе кроками, які осилить офіс без штатного адміна.
fail2ban банить за власними логами й простими правилами. CrowdSec додає поведінкові сценарії, окремий bouncer і - головне - колективну базу: твій сервер блокує IP, які атакували інших, ще до першого стуку. Ставимо його поруч, ганяємо той самий брутфорс і дивимось, чим він відрізняється.
fail2ban - це сторож, що читає логи, рахує невдалі входи й автоматично банить IP, з якого ломляться. Піднімаємо його на Debian 13, брутфорсимо власний сервер із сусідньої машини й дивимось, як бан накладається в реальному часі. Плюс три заковики, специфічні саме для trixie.
Honeypot - це сервер-приманка: він навмисне виглядає вразливим, впускає зловмисника зі слабким паролем і тихо записує все, що той робить. Піднімаємо Cowrie в Docker, самі граємо «гостя» і дивимось, хто клюне - у реальному часі.
Базова конфігурація ufw: deny за замовчуванням, дозволяємо SSH і потрібні порти, whitelist по IP. З наочним записом - зліва сервер, справа клієнт.
SSH-ключ + TOTP: двофакторна автентифікація без системного пароля