Skip to content

Commit 295546f

Browse files
Restore ability to override /etc/shadow file permissions and group owner (#293)
1 parent 690b5c9 commit 295546f

File tree

2 files changed

+18
-8
lines changed

2 files changed

+18
-8
lines changed

README.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -199,6 +199,11 @@ Otherwise puppet will drop an error (duplicate resource)!
199199
set to false to disable sysctl configuration
200200
* `manage_system_users = true`
201201
set to false to disable managing of system users (empty password and setting nologin shell)
202+
* `shadow_group = undef`
203+
override the group ownership of /etc/shadow
204+
* `shadow_mode = undef`
205+
override the file permissions of /etc/shadow
206+
202207

203208
### Hiera usage
204209

manifests/init.pp

Lines changed: 13 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -93,6 +93,9 @@
9393
Boolean $enable_sysctl_config = true,
9494

9595
Optional[String] $system_umask = undef,
96+
97+
Optional[String] $shadow_group = undef,
98+
Optional[String] $shadow_mode = undef,
9699
) {
97100

98101
# Prepare
@@ -114,29 +117,31 @@
114117
$def_umask = '027'
115118
$def_sys_uid_min = 100
116119
$def_sys_gid_min = 100
117-
$shadowgroup = 'shadow'
118-
$shadowmode = '0640'
120+
$def_shadowgroup = 'shadow'
121+
$def_shadowmode = '0640'
119122
}
120123
'RedHat': {
121124
$def_umask = '077'
122125
$def_sys_uid_min = 201
123126
$def_sys_gid_min = 201
124-
$shadowgroup = 'root'
125-
$shadowmode = '0000'
127+
$def_shadowgroup = 'root'
128+
$def_shadowmode = '0000'
126129
}
127130
default: {
128131
$def_umask = '027'
129132
$def_sys_uid_min = 100
130133
$def_sys_gid_min = 100
131-
$shadowgroup = 'root'
132-
$shadowmode = '0600'
134+
$def_shadowgroup = 'root'
135+
$def_shadowmode = '0600'
133136
}
134137
}
135138

136139
# Merge defaults
137140
$merged_umask = pick($umask, $def_umask)
138141
$merged_sys_uid_min = pick($sys_uid_min, $def_sys_uid_min)
139142
$merged_sys_gid_min = pick($sys_gid_min, $def_sys_gid_min)
143+
$merged_shadowgroup = pick($shadow_group, $def_shadowgroup)
144+
$merged_shadowmode = pick($shadow_mode, $def_shadowmode)
140145

141146
# Fix for Puppet Enterprise
142147
if $pe_environment {
@@ -180,8 +185,8 @@
180185
folders_to_restrict => $folders_to_restrict_int,
181186
ignore_max_files_warnings => $ignore_max_files_warnings,
182187
restrict_log_dir => $restrict_log_dir,
183-
shadowgroup => $shadowgroup,
184-
shadowmode => $shadowmode,
188+
shadowgroup => $merged_shadowgroup,
189+
shadowmode => $merged_shadowmode,
185190
recurselimit => $recurselimit,
186191
}
187192
class { 'os_hardening::modules':

0 commit comments

Comments
 (0)