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
84 - name: make sure grml-(etc|scripts)-core is not installed
93 - name: install systemd specific packages
100 - name: set systemd-related environment variables
102 src: xdg_runtime_dir.sh
103 dest: /etc/profile.d/xdg_runtime_dir.sh
106 when: ansible_service_mgr == "systemd"
109 - name: workaround console-setup race condition (1/2)
111 path: /etc/systemd/system/console-setup.service.d/
114 - name: workaround console-setup race condition (2/2)
116 content: "[Unit]\nAfter=systemd-tmpfiles-setup.service\n"
117 dest: /etc/systemd/system/console-setup.service.d/override.conf
119 # no need to relaod systemd here, it is only there to fix a boot-time race-condition
121 when: ansible_distribution == "Ubuntu"
123 - name: install zshrc
126 dest: "/etc/zsh/zprofile"
128 dest: "/etc/zsh/zshrc"
130 dest: "/etc/skel/.zshrc"
132 src: "{{ item.src }}"
133 dest: "{{ item.dest }}"
136 - name: set root default shell to zsh
141 - name: set default shell for adduser
144 line: "DSHELL=/bin/zsh"
146 dest: /etc/adduser.conf
147 regexp: "{{ item.regexp }}"
148 line: "{{ item.line }}"