
Хочете налаштувати анонімний сервер на Debian та повністю захистити свої дані? У нашій статті ви знайдете практичний гайд: як відключити логи (wtmp, journalctl, auth.log), встановити шифрування диска, налаштувати тимчасове збереження log-файлів та безпечно видаляти дані, не залишаючи слідів. Все — покроково, просто, з командами.
Оновлений посібник з налаштування сервера на Debian допоможе забезпечити максимальну конфіденційність і захист даних. Матеріал розрахований як на новачків, так і на досвідчених користувачів, які прагнуть мінімізувати цифрові сліди, зробити системні логи недоступними для читання та унеможливити відновлення видалених даних, зокрема у випадку вилучення сервера для судової експертизи.
Зібрано перевірені практики, детальні інструкції та робочі приклади, що дозволяють крок за кроком налаштувати сервер із високим рівнем приватності. Основна мета — створення системи, у якій журнали або взагалі не зберігаються, або не підлягають аналізу, а вміст диску надійно захищений від відновлення.
У статті розглядаються методи вимкнення зберігання логів (wtmp, lastlog, journalctl, syslog, auth.log), налаштування повного шифрування диска та регулярне очищення залишкових даних. Пропонуються як базові рішення, що підходять для початківців, так і технічно складніші варіанти для просунутих користувачів.
У результаті сервер стає максимально захищеним від цифрової форензики й готовим до сценаріїв, де безпека і конфіденційність мають першочергове значення.
Логи – це файли, в які система автоматично записує інформацію про події, що відбуваються. Вони корисні для діагностики, але можуть стати проблемою, якщо хочете приховати свою активність. Ось основні логи, з якими ми працюватимемо:
wtmp : Фіксує входи та виходи користувачів. Шлях: /var/log/wtmp
lastlog : Зберігає дані про останній вхід кожного користувача. Шлях: /var/log/lastlog
journalctl : Журнал systemd, що збирає логи від різних служб. Може зберігатися на диску або пам’яті.
syslog : Загальні системні повідомлення. Шлях: /var/log/syslog
auth.log : Логи аутентифікації, наприклад спроби входу через SSH. Шлях: /var/log/auth.log
Ці файли містять інформацію про те, хто, коли та що робив на сервері. Щоб зробити їх нечитаними, ми або відключимо запис на диск, або налаштуємо систему так, щоб вони видалялися при перезавантаженні. Давайте розберемо, як це зробити крок за кроком.
Файл wtmp записує всі входи та виходи користувачів. Щоб вимкнути його:
1. Відкрийте файл для редагування:
nano /etc/tmpfiles.d/var.conf
2. Знайдіть рядок, пов’язаний з wtmp (наприклад, f /var/log/wtmp – root utmp 0664) і закоментуйте його, додавши # на початку:
#f /var/log/wtmp - root utmp 0664
3. Збережіть зміни (Ctrl+O, Enter, Ctrl+X)
У нових версіях Debian цей файл може бути відсутнім. У такому разі використовуємо альтернативний метод:
1. Вимкніть служби, які записують у wtmp:
systemctl disable systemd-update-utmp systemctl disable systemd-update-utmp-runlevel
Ці команди запобігають запуску служб під час завантаження системи
2. Видаліть наявний файл wtmp:
rm /var/log/wtmp
Додатковий захід: Символічна посилання
3. Створіть посилання на /dev/null , щоб будь-які спроби запису в wtmp ігнорувалися:
ln -s /dev/null /var/log/wtmp
Примітка: Деякі процеси можуть очікувати, що wtmp – це звичайний файл, а не посилання, але зазвичай це не впливає ніяк не на роботу системи.
Оцінка безпеки: ★★★★ ★ – Логи не пишуться, але інші джерела даних можуть залишитися.
Файл lastlog зберігає інформацію про останній вхід кожного користувача. Щоб мінімізувати його:
1. Очистіть файл і зробіть його незмінним:
> /var/log/lastlog chattr +i /var/log/lastlog
Перша команда очищає файл, друга запобігає його оновлення. Очистити файл можна і інакше, використовуйте будь-який зручний для вас метод.
2. Налаштуйте PAM, щоб lastlog не оновлювався:
Відкрийте файл /etc/pam.d/common-session:
nano /etc/pam.d/common-session
Додати або змініть рядок:
session optional pam_lastlog.so noupdate
Збережіть та вийдіть
Оцінка безпеки: ★★★ ★★ – Ефективно для lastlog, але інші логи можуть містити дані.
Journalctl – це журнал systemd, який за умовчанням зберігає логи на диску. Щоб зробити їх тимчасовими:
1. Відкрийте конфігураційний файл:
nano /etc/systemd/journald.conf
2. Знайдіть розділ [Journal] і додайте або змініть рядок:
[Journal] Storage=volatile
Це змусить систему зберігати логи тільки в пам’яті ( /run/log/journal ), і вони зникнуть при перезавантаженні.
3. Перезапустіть службу:
systemctl restart systemd-journald
Оцінка безпеки: ★★★★ ★ – Логи не зберігаються на диск, що значно ускладнює їхній аналіз.
Ці логи керуються службою rsyslog.
1. Відкрийте конфігураційний файл:
nano /etc/rsyslog.conf
2. Видаліть або закоментуйте всі рядки виду:
*.*;auth,authpriv.none -/var/log/syslog auth,authpriv.* /var/log/auth.log cron.* -/var/log/cron.log kern.* -/var/log/kern.log mail.* -/var/log/mail.log user.* -/var/log/user.log *.emerg :omusrmsg:*
3. Додати в кінець рядок:
*.* /dev/null
Це перенаправить усі логи в “чорну дірку”
4. Перезапустіть службу:
systemctl restart rsyslog
Альтернатива: Повністю відключіть rsyslog
systemctl stop rsyslog systemctl disable rsyslog
Примітка: Це може вплинути на роботу деяких служб, софт і т.д., оскільки вони можуть залежати від логування.
Оцінка безпеки: ★★★★ ★ – Логи не пишуться, але перевірте, чи не створюються вони іншими способами.
Якщо ви використовуєте OpenSSH, він пише логі в auth.log. Щоб зменшити їх обсяг:
1. Відкрийте конфігураційний файл SSH:
nano /etc/ssh/sshd_config
2. Знайдіть рядок LogLevel та змініть на QUIET:
LogLevel QUIET
3. Перезапустіть службу SSH:
systemctl restart sshd
Оцінка безпеки: ★★★ ★★ – Зменшує логування, але не відключає його повністю
Щоб захистити дані від відновлення, настройте повне шифрування диска (Full Disk Encryption) під час встановлення Debian. Це гарантує, що всі дані на диску будуть зашифровані і без пароля їх не прочитати, навіть якщо сервер фізично вилучать.
Під час встановлення виберіть опцію “Guided – use entire disk and set up encrypted LVM”.
Вкажіть диск для встановлення.
Виберіть шифрування та вкажіть надійний пароль.
Примітка для хостингу: Якщо хостер дає можливість встановити будь-яку ОС з iso на сервер, то вам не важко зашифрувати диск, але якщо хостер не надає такої можливості – то створюйте додаткові шифровані розділи і працюйте на них.
Шифрування захищає не тільки існуючі файли, але й видалені дані, які могли б бути відновлені. Навіть якщо хтось отримає доступ до диска, без ключа побачить лише випадковий набір символів.
Оцінка безпеки: ★★★★★ – Максимальний захист, якщо пароль досить складний.
Звичайні файлові системи, такі як ext4, Xfs або Btrfs, не запобігають відновленню видалених даних. Тому шифрування – найкращий вибір для параноїків.
Звичайне видалення файлів (команда rm ) не стирає дані з диска – їх можна відновити за допомогою інструментів на зразок R-Studio.
Встановіть пакети для безпечного видалення:
apt-get install secure-delete wipe -y
1. shred – Перезаписує файл випадковими даними та видаляє:
shred -u file.txt
2. srm – Безпечно видаляє файл, перезаписуючи його кілька разів:
srm file.txt
3. wipe – Аналогічний інструмент для перезапису:
wipe file.txt
4. dd – Заповнює файл нулями перед видаленням:
dd if=/dev/zero of=file.txt rm file.txt
Щоб перезаписати вільне місце на диску та запобігти відновленню старих файлів:
Використовуйте sfill:
sfill -f /path/to/directory
Або вручну за допомогою dd:
dd if=/dev/zero of=/home/zero bs=1M rm /tmp/zero
Для більшої безпеки використовуйте випадкові дані:
dd if=/dev/urandom of=/home/random bs=1M rm /tmp/random
Оцінка безпеки: ★★★★★ – Перезапис робить відновлення практично неможливим
Ось зведена таблиця з оцінкою безпеки кожного методу (від ★ ★★★★ – мінімальний захист, до ★★★★★ – максимальна):
Якщо ви тільки починаєте працювати з серверами, можете думати: “Навіщо це мені?” Уявіть, що сервер вилучили для перевірки. Без цих заходів експерти легко дізнаються, що ви робили які файли створювали і коли входили в систему. Відключення логів та шифрування – це ваш щит.
1. Встановіть Debian із шифруванням (виберіть “encrypted LVM” під час встановлення).
2. Виконайте команди для відключення wtmp :
systemctl disable systemd-update-utmp rm /var/log/wtmp ln -s /dev/null /var/log/wtmp
3. Налаштуйте journalctl на volatile:
nano /etc/systemd/journald.conf # Добавить: Storage=volatile systemctl restart systemd-journald
4. Встановіть shred та видаляйте файли безпечно:
shred -u file.txt
Слабкий пароль для шифрування: Використовуйте довгий пароль із літерами, цифрами та символами.
Перепустити перезавантаження: Після налаштування journalctl перезавантажте сервер, щоб переконатися, що логи не зберігаються.
Звичайне видалення: Не використовуйте rm без перезапису – дані залишаться на диску.
Тепер у вас є повний посібник, щоб зробити ваш сервер Debian безпечним і прихованим від сторонніх очей. Відключення логів (wtmp, lastlog, journalctl, syslog, auth.log), налаштування повного шифрування диска та регулярне безпечне видалення файлів допоможуть захистити вашу активність та дані. Навіть якщо сервер вилучать без пароля і з перезаписаними даними відновити щось буде практично неможливо.
Комбінуйте ці методи для максимального захисту:
Шифруйте диск під час встановлення.
Вимкніть усі логи або налаштуйте їх у пам’яті.
Використовуйте shred, srm або sfill для чищення даних.
Якщо ви новачок, почніть із простих кроків і поступово освоюйте складніші налаштування. Для досвідчених користувачів ця стаття – шпаргалка з перевіреними методами. Ваша приватність у ваших руках! Насправді методів пошуку ваших даних активності досить багато, у статті я описав лише “основні”, щоб у вас було розуміння, як усе працює.