florianutz.Ubuntu1604-CIS
Ubuntu 16.04 CIS STIG
Skonfiguruj maszynę Ubuntu 16.04, aby była zgodna z CIS. Usterki poziomu 1 i 2 będą domyślnie poprawiane.
Ta rola wprowadzi zmiany w systemie, które mogą spowodować problemy. To narzędzie nie jest narzędziem audytowym, lecz narzędziem do naprawy, które należy używać po przeprowadzeniu audytu.
WAŻNY KROK INSTALACJI
Jeśli chcesz zainstalować to za pomocą polecenia ansible-galaxy
, musisz wykonać to w ten sposób:
ansible-galaxy install -p roles -r requirements.yml
Z tym w pliku requirements.yml:
- src: https://github.com/florianutz/Ubuntu1604-CIS.git
Na podstawie CIS Ubuntu Benchmark v1.1.0 - 12-28-2017 .
To repozytorium powstało w wyniku pracy MindPointGroup
Wymagania
Dokładnie przeczytaj zadania, aby upewnić się, że te zmiany nie wpłyną negatywnie na Twój system przed uruchomieniem tego playbooka.
Zmienne roli
Wiele zmiennych roli zdefiniowano w pliku defaults/main.yml. Oto najważniejsze z nich.
ubuntu1604cis_notauto: Uruchom kontrole CIS, które zazwyczaj NIE chcemy automatyzować z powodu dużego prawdopodobieństwa uszkodzenia systemu (Domyślnie: fałsz)
ubuntu1604cis_section1: CIS - Ustawienia ogólne (Sekcja 1) (Domyślnie: prawda)
ubuntu1604cis_section2: CIS - Ustawienia usług (Sekcja 2) (Domyślnie: prawda)
ubuntu1604cis_section3: CIS - Ustawienia sieci (Sekcja 3) (Domyślnie: prawda)
ubuntu1604cis_section4: CIS - Ustawienia logowania i audytu (Sekcja 4) (Domyślnie: prawda)
ubuntu1604cis_section5: CIS - Ustawienia dostępu, uwierzytelniania i autoryzacji (Sekcja 5) (Domyślnie: prawda)
ubuntu1604cis_section6: CIS - Ustawienia konserwacji systemu (Sekcja 6) (Domyślnie: prawda)
Wyłącz wszystkie funkcje selinux
ubuntu1604cis_selinux_disable: fałsz
Zmienne usług:
Te zmienne kontrolują, czy serwer może nadal uruchamiać te usługi
ubuntu1604cis_avahi_server: fałsz
ubuntu1604cis_cups_server: fałsz
ubuntu1604cis_dhcp_server: fałsz
ubuntu1604cis_ldap_server: fałsz
ubuntu1604cis_telnet_server: fałsz
ubuntu1604cis_nfs_server: fałsz
ubuntu1604cis_rpc_server: fałsz
ubuntu1604cis_ntalk_server: fałsz
ubuntu1604cis_rsyncd_server: fałsz
ubuntu1604cis_tftp_server: fałsz
ubuntu1604cis_rsh_server: fałsz
ubuntu1604cis_nis_server: fałsz
ubuntu1604cis_snmp_server: fałsz
ubuntu1604cis_squid_server: fałsz
ubuntu1604cis_smb_server: fałsz
ubuntu1604cis_dovecot_server: fałsz
ubuntu1604cis_httpd_server: fałsz
ubuntu1604cis_vsftpd_server: fałsz
ubuntu1604cis_named_server: fałsz
ubuntu1604cis_bind: fałsz
ubuntu1604cis_vsftpd: fałsz
ubuntu1604cis_httpd: fałsz
ubuntu1604cis_dovecot: fałsz
ubuntu1604cis_samba: fałsz
ubuntu1604cis_squid: fałsz
ubuntu1604cis_net_snmp: fałsz
Wyznacz serwer jako serwer pocztowy
ubuntu1604cis_is_mail_server: fałsz
Parametry sieciowe systemu (tylko host LUB host i router)
ubuntu1604cis_is_router: fałsz
Wymagana obsługa IPv6
ubuntu1604cis_ipv6_required: prawda
AIDE
ubuntu1604cis_config_aide: prawda
Ustawienia crona dla AIDE
ubuntu1604cis_aide_cron:
cron_user: root
cron_file: /etc/crontab
aide_job: '/usr/sbin/aide --check'
aide_minute: 0
aide_hour: 5
aide_day: '*'
aide_month: '*'
aide_weekday: '*'
Polityka SELinux
ubuntu1604cis_selinux_pol: targeted
Ustaw na 'prawda', jeśli w Twoim środowisku potrzebne są X Windows
ubuntu1604cis_xwindows_required: nie
Wymagania dotyczące aplikacji klienckich
ubuntu1604cis_openldap_clients_required: fałsz
ubuntu1604cis_telnet_required: fałsz
ubuntu1604cis_talk_required: fałsz
ubuntu1604cis_rsh_required: fałsz
ubuntu1604cis_ypbind_required: fałsz
Synchronizacja czasu
ubuntu1604cis_time_synchronization: chrony
ubuntu1604cis_time_Synchronization: ntp
ubuntu1604cis_time_synchronization_servers:
- 0.pool.ntp.org
- 1.pool.ntp.org
- 2.pool.ntp.org
- 3.pool.ntp.org
3.4.2 | ŁATKA | Upewnij się, że /etc/hosts.allow jest skonfigurowane
ubuntu1604cis_host_allow:
- "10.0.0.0/255.0.0.0"
- "172.16.0.0/255.240.0.0"
- "192.168.0.0/255.255.0.0"
ubuntu1604cis_firewall: firewalld
ubuntu1604cis_firewall: iptables
Zależności
Ansible > 2.2
Przykładowy Playbook
- name: Zabezpiecz serwer
hosts: serwery
become: tak
roles:
- Ubuntu1604-CIS
Tagi
Dostępnych jest wiele tagów do precyzyjnego kontrolowania, co zostanie zmienione, a co nie.
Kilka przykładów użycia tagów:
# Audyt i poprawki witryny
ansible-playbook site.yml --tags="patch"
Licencja
MIT
ansible-galaxy install florianutz.Ubuntu1604-CIS