Ssh
用於非 puppet 系統的 puppet sshkey 集合
在我的系統上,我使用導出的資源和資源集合來管理我係統的 /etc/ssh/known_hosts 引用。這適用於我所有通過 puppet 管理的 SSH 主機。但我也有不受 puppet 管理的系統(交換機、路由器等),而且我沒有立即開始管理它們的計劃。
有沒有什麼優雅的方法可以將那些非託管系統的主機密鑰變成 puppet?現在我只是把它們都放在一個大醜陋的班級裡,但一定有更好的方法。我曾想過以某種方式嘗試將這些主機的密鑰移動到 hiera 或其他東西,但我還沒有找到一個不難看的解決方案。
有沒有人有我可以在這裡遵循的好方法/模式?
我曾想過以某種方式嘗試將這些主機的密鑰移動到 hiera 或其他東西,但我還沒有找到一個不難看的解決方案。
有多種方法可以實現這一目標。我嘗試保持我的類通用,我的所有配置數據都在 hiera 中。當我處理數據集合時,我嘗試使用分層雜湊,這樣我就不必更改我的類或定義程式碼。
1:使用分層散列來儲存鍵的集合。
hiera_key_hash: key-1: name: cisco500 type: router key: xxx key-2: name: cisco100 type: switch key: xxx
2:創建一個為每個鍵呼叫 create_resource 的類(它將呼叫定義“鍵”)。
class keys { create_resources( "key", hiera('hiera_key_hash') ) }
3:創建一個為每個鍵工作的定義。
define key($name, $type, $key) { // code goes here }
注意:在某個階段,您最終可能會將敏感資訊儲存在您的 hiera 中。您可能需要考慮加密一些層次敏感值。