triplepoint.secure_device
Введение
Цель этой роли – подготовить машину как можно более универсально, достаточно безопасно для работы в открытом интернете и так, чтобы она не перегревалась.
На высоком уровне:
- Установить Fail2ban, чтобы усложнить попытки злонамеренной аутентификации
- Отключить доступ по SSH для пользователя
root - Отключить аутентификацию по паролю для всех пользователей (только ключи)
- Отключить доступ по SSH и
sudoдля всех и создать набор разрешённых пользователей - Ограничить доступ по SSH до определённого диапазона IP-адресов
- Установить
ufwи отключить весь трафик, с возможностью настройки исключений по портам (по желанию) - Установить
unattended-upgradesи настроить автоматическое обновление безопасности пакетов apt - Установить сервер
ntpдля обеспечения надежного системного времени - Установить
logwatchи настроить его для отправки ежедневных отчетов о логах на адрес электронной почты администратора
Разумеется, эту роль лучше внимательно изучить перед использованием, так как нельзя гарантировать безопасность.
Требования
Нет.
Переменные роли
Смотрите комментарий в файле переменных по умолчанию для информации о настройке.
Зависимости
Нет.
Пример плэйбука
- hosts: whatever
roles:
- triplepoint.secure_device
Тестирование роли
Эта роль тестируется с помощью molecule, используя pipenv для управления зависимостями и средой тестирования Python.
Настройка вашей исполняемой среды
pip install pipenv
После установки pipenv вы можете создать виртуальную среду выполнения с помощью:
pipenv install --dev
Запуск тестов
Как только ваша среда настроена, вы можете запустить molecule с помощью:
pipenv run molecule test
Обновление файла блокировки
С этим не придется заниматься слишком часто, но если вы измените требования к пакетам Python, используя команды pipenv install {some_package} или редактируя файл Pipfile напрямую, или если вы заметите, что зависимости устарели, возможно, вам потребуется обновить файл Pipfile.lock.
pipenv update --dev
Не забудьте проверить обновленный Pipfile.lock, когда процесс завершится.
Лицензия
MIT
A role responsible for some basic security tweaks for internet-facing machines
ansible-galaxy install triplepoint.secure_device