Очистка логов на сервере Amsterdam
Ситуация идентична первому серверу — те же проблемы с btmp, auth.log и journal. Решаем по следующему алгоритму:
1. Исправить ошибку sudo
echo "127.0.1.1 amsterdam" | sudo tee -a /etc/hosts
2. Проверить размеры и очистить огромные логи
sudo du -sh /var/log/* | sort -rh | head -n 10
# Обнулить активные логи (через truncate, не rm!)
sudo truncate -s 0 /var/log/auth.log
sudo truncate -s 0 /var/log/btmp
# Удалить старый архив btmp.1
sudo rm /var/log/btmp.1
# Очистить journal (оставить только последние 100 МБ)
sudo journalctl --vacuum-size=100M
3. Проверить установку logrotate
sudo logrotate -d /etc/logrotate.d/btmp
Если команда не найдена — установить:
sudo apt update
sudo apt install logrotate -y
4. Настроить ротацию btmp
sudo nano /etc/logrotate.d/btmp
Убедиться, что есть строка maxsize 50M:
/var/log/btmp {
missingok
monthly
maxsize 50M
create 0660 root utmp
rotate 1
}
5. Проверить, что cron.daily работает
ls -l /etc/cron.daily/logrotate
Если файла нет — создать:
sudo nano /etc/cron.daily/logrotate
Содержимое:
#!/bin/sh
test -x /usr/sbin/logrotate || exit 0
/usr/sbin/logrotate /etc/logrotate.conf
Сделать исполняемым:
sudo chmod +x /etc/cron.daily/logrotate
6. Защитить от брутфорса (рекомендуется)
btmp означает массовые попытки подбора пароля SSHsudo apt install fail2ban -y
sudo systemctl enable --now fail2ban
- Информация о материале
- Просмотров: 20
OpenWRT в Docker: Рабочая схема с физическими портами

Схема выглядит следующим образом:
Ни macvtap, ни FD‑редиректы, ни /dev/tap52 — ничего этого не нужно. Рабочая схема — только одна:
Это единственный способ, который работает в Docker‑namespace и даёт OpenWRT доступ к реальным портам.
Итоговая архитектура (рабочая)
- Информация о материале
- Просмотров: 65
Подробнее: OpenWRT в Docker: Рабочая схема с физическими портами
Контейнерная виртуализация в Docker
Расскажу о контейнерной виртуализации в Docker. Постараюсь объяснить простым языком, а потом добавлю немного технических деталей.
Что такое контейнерная виртуализация в Docker? (Простыми словами)
Представь, что у тебя есть обычный компьютер (сервер, ноутбук, десктоп). На нем установлена операционная система (например, Windows или Linux). Традиционно, если ты хочешь запустить какое-то приложение, тебе нужно установить его прямо на эту операционную систему. Это может приводить к конфликтам, если разные приложения требуют разных версий библиотек или других зависимостей.
Контейнерная виртуализация, а в частности, Docker, позволяет создать "виртуальные контейнеры". Представь себе отдельные "коробки", в которых ты можешь упаковать свое приложение со всем, что ему нужно для работы: код, библиотеки, зависимости, настройки. Эти "коробки" изолированы друг от друга, но при этом используют ядро операционной системы хоста (то есть, той системы, на которой они работают).
- Информация о материале
- Просмотров: 63