0

puppetでSSH公開鍵のプールを管理したい。私はこれを正しく行っているかどうかはわかりませんが、これが今のところどのように機能するかです:

必要なSSHサーバーのすべての構成を含むマニフェストを持つクラスmysshdがあります。さらに、「ssh_athorized_keys」リソースとしてすべての公開鍵を含む別のマニフェストがあります。

今のところ、それらすべてを登録したかったので、マニフェストに「ensure=>present」があります。したがって、各ノードは便利な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,
}

これは、sshサーバーで他の構成を行うinit.ppによってインポートされます。

ノード構成で、クラスiuem-sshをロードします。

class {'iuem-sshd': }

しかし、私は設定を上書きしたいと思います:ensure => presentそしてuser => lagaffe例えば。

ありがとう、

ジョナサン

4

1 に答える 1

2

これは仮想リソースのユースケースのようです

すべてのssh_authorized_keysを1つの場所で定義し、必要な場所でのみそれらを実現できます。

于 2013-02-05T19:21:44.610 に答える