4 {{ [ 'root' ] | union(user_groups.noc)
5 | union(sshd_allowusers_group | default([]))
6 | union(sshd_allowusers_host | default([])) }}
8 - name: only allow pubkey auth for root
10 dest: /etc/ssh/sshd_config
11 regexp: "^PermitRootLogin"
12 line: "PermitRootLogin without-password"
15 - name: limit allowed users (1/2)
16 when: sshd_allowgroup is not defined
18 dest: /etc/ssh/sshd_config
19 regexp: "^#?AllowUsers"
20 line: "AllowUsers {{ ' '.join(sshd_allowusers) }}"
24 - name: "limit allowed users (2/2): Make sure AllowUsers is not in sshd_config"
26 dest: /etc/ssh/sshd_config
31 - name: "limit allowed users (2/2): Set AllowGroups in sshd_config"
33 dest: /etc/ssh/sshd_config
34 regexp: "^#?AllowGroups"
35 line: AllowGroups {{ sshd_allowgroup }}
38 - name: "limit allowed users (2/2): Add allowed users to ssh group"
41 groups: "{{ sshd_allowgroup }}"
43 with_items: "{{ sshd_allowusers }}"
45 when: sshd_allowgroup is defined
47 - name: Set authorized keys for root user
50 key: "{{ noc_ssh_keys | join('\n') }}"
53 - name: disable apt suggests and recommends
56 dest: /etc/apt/apt.conf.d/
59 - name: install basic packages
83 - name: check that ISC ntpd is not installed
89 - name: install openntpd
93 - name: make sure grml-(etc|scripts)-core is not installed
102 - name: install systemd specific packages
109 - name: set systemd-related environment variables
111 src: xdg_runtime_dir.sh
112 dest: /etc/profile.d/xdg_runtime_dir.sh
115 when: ansible_service_mgr == "systemd"
118 - name: workaround console-setup race condition (1/2)
120 path: /etc/systemd/system/console-setup.service.d/
123 - name: workaround console-setup race condition (2/2)
125 content: "[Unit]\nAfter=systemd-tmpfiles-setup.service\n"
126 dest: /etc/systemd/system/console-setup.service.d/override.conf
128 # no need to relaod systemd here, it is only there to fix a boot-time race-condition
130 when: ansible_distribution == "Ubuntu"
132 - name: install zshrc
135 dest: "/etc/zsh/zprofile"
137 dest: "/etc/zsh/zshrc"
139 dest: "/etc/skel/.zshrc"
141 src: "{{ item.src }}"
142 dest: "{{ item.dest }}"
145 - name: set root default shell to zsh
150 - name: set default shell for adduser
154 dest: /etc/adduser.conf
155 regexp: "^#?{{ item.key }}="
156 line: "{{ item.key }}={{ item.value }}"