Extend user module, add 'disable user'
This patch adds the user::virtual::disable function to the user module. This will allow puppet to remove a user, ssh keys, and screen sessions while preserving the user home directory. This patch adds future functionality without impacting the currently configured infrastructure. Change-Id: I2933e6857094398f86c2a7e6eaabe9898a1d3078
This commit is contained in:
parent
f2aa56f792
commit
a8b9f0aef9
28
modules/user/manifests/virtual/disable.pp
Normal file
28
modules/user/manifests/virtual/disable.pp
Normal file
@ -0,0 +1,28 @@
|
|||||||
|
# used to remove a user
|
||||||
|
# example:
|
||||||
|
# user::virtual::disable { 'baduser': }
|
||||||
|
|
||||||
|
define user::virtual::disable(
|
||||||
|
) {
|
||||||
|
$username = $title
|
||||||
|
#1. Remove user
|
||||||
|
exec { "disable_${username}":
|
||||||
|
command => "userdel ${username}",
|
||||||
|
onlyif => "grep ^${username}: /etc/passwd",
|
||||||
|
}
|
||||||
|
#2. remove sshkeys file(s)
|
||||||
|
file { "rm_authorized_keys_${username}":
|
||||||
|
ensure => absent,
|
||||||
|
path => "/home/${username}/.ssh/authorized_keys",
|
||||||
|
}
|
||||||
|
file { "rm_authorized_keys2_${username}":
|
||||||
|
ensure => absent,
|
||||||
|
path => "/home/${username}/.ssh/authorized_keys2",
|
||||||
|
}
|
||||||
|
#3. rm screen dir (just in case)
|
||||||
|
exec { "rm_screen_${username}":
|
||||||
|
command => "rm -rf /var/run/screen/S-${username}",
|
||||||
|
onlyif => "ls /var/run/screen/S-${username}",
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
Loading…
Reference in New Issue
Block a user