我想用puppet管理一个SSH公钥池。 我不确定我做得对,但现在它的工作原理如下:
我有一个mysshd类,其中包含一个包含我想要的每个SSH服务器配置的清单。 此外,还有另一个包含所有公钥的清单,作为“ssh_athorized_keys”资源。
目前,我希望所有人都注册,因此他们在清单中有“确认=>存在”。所以每个节点都加载了方便的mysshd类,就是这样。
但是现在,我想在此清单中定义我的用户的所有公钥,并使用“ensure => absent”。 然后,在我的node.pp中,对于每个节点,如果我愿意,我想为每个资源ssh_authorized_keys设置值“ensure”为“present”。
我试图覆盖类中某些资源的“ensure”参数,但我肯定错过了一点,我无法弄清楚这样做的方法。
你能帮助我吗?
更多细节:
在:modules/iuem-sshd/manifests/publickeys.pp'
中,有我的发布键列表:
ssh_authorized_key{'gab':
key => 'AAAAB3NzaC1yc2EAAAABIwAAAQEAugG5p+SHmDm8OKdKifipUuK/TIbVXgQXm5ee//Cne+2QU9gctxOechyptT0oNh57rXUDShHpkNToC6r1ZvPLpxae2p2kBWJl5O2u1ov9/L8eWSvCFlVFc/gicH1wWG9vrlh7gXGGrAb6rVJ97XVDNkDmmF43W+Z8p8AjRtzE4b9Z3ZGGgPbBaPHPybBogs3wP3d5cyaLqlQgjJQXdkWkaVq8ApWLnan34O1sZVimcD6TVVSBZ1PmnSZfchxYq56xMnI+GpYvvi0dw+JU9aS+br4g1K5LtxFlxp4YlKGlQByrFdhn21z3VRnDrPWomgQHvdyzTUqwIs7AKvmPbQX+kQ==',
name => 'Nicolas',
ensure => absent,
type => "ssh-rsa",
user => root,
}
它是由init.pp导入的,它在ssh服务器上执行其他配置。
在节点配置中,我加载了类iuem-ssh:
class {'iuem-sshd': }
但我想覆盖设置:例如ensure => present
和user => lagaffe
。
谢谢,
乔纳森