triplepoint.secure_device
Wprowadzenie
Celem tej roli jest uruchomienie maszyny w sposób jak najbardziej uniwersalny, wystarczająco bezpieczny, aby stawić czoła publicznemu Internetowi i nie ulec natychmiastowemu zniszczeniu.
Na wysokim poziomie:
- Zainstaluj Fail2ban, aby utrudnić złośliwe próby uwierzytelnienia
- Wyłącz dostęp SSH dla użytkownika
root
- Wyłącz autoryzację SSH za pomocą hasła dla wszystkich (tylko klucze)
- Wyłącz dostęp SSH i
sudo
dla wszystkich, a następnie utwórz i skonfiguruj zestaw dozwolonych użytkowników - Ogranicz dostęp SSH do określonego zakresu adresów IP
- Zainstaluj
ufw
i wyłącz cały ruch, z konfiguracją wyjątków dla portów (opcjonalnie) - Zainstaluj
unattended-upgrades
i skonfiguruj automatyczne aktualizacje zabezpieczeń pakietów apt - Zainstaluj serwer
ntp
, aby zapewnić niezawodny czas systemowy - Zainstaluj
logwatch
i skonfiguruj go tak, aby codziennie wysyłał raporty dziennika na adres e-mail administratora
Oczywiście, rolę tę należy dokładnie sprawdzić przed użyciem, ponieważ nie mogą być wydane żadne gwarancje dotyczące bezpieczeństwa.
Wymagania
Brak.
Zmienne roli
Zobacz komentarz w domyślnym pliku zmiennych, aby uzyskać informacje na temat konfiguracji.
Zależności
Brak.
Przykładowy Playbook
- hosts: cokolwiek
roles:
- triplepoint.secure_device
Testowanie RoLi
Ta rola jest testowana za pomocą molecule
, korzystając z pipenv
do zarządzania zależnościami i środowiskiem testowym Pythona.
Ustawianie Środowiska Wykonawczego
pip install pipenv
Po zainstalowaniu pipenv
, możesz zbudować wirtualne środowisko wykonawcze za pomocą:
pipenv install --dev
Uruchamianie Testów
Gdy masz skonfigurowane środowisko, możesz wykonać molecule
za pomocą:
pipenv run molecule test
Regeneracja Pliku Lock
Nie powinieneś często tego robić, ale jeśli zmienisz wymagania dotyczące pakietów Pythona za pomocą polecenia pipenv install {some_package}
lub edytując bezpośrednio Pipfile
, lub jeśli zauważysz, że zależności budowania są nieaktualne, może być konieczne ponowne wygenerowanie Pipfile.lock
.
pipenv update --dev
Upewnij się, że zarejestrujesz zregenerowany Pipfile.lock
, gdy ten proces zostanie zakończony.
Licencja
MIT
A role responsible for some basic security tweaks for internet-facing machines
ansible-galaxy install triplepoint.secure_device