puppetca 從不返回任何東西
嗨:我正在嘗試在 Ubuntu 上配置 Puppet,但奇怪的是我永遠無法生成證書,因為我的伺服器從未顯示任何待處理的證書請求。
換句話說,在伺服器上我正在執行 puppetmasterd 並且在客戶端上我能夠連接到伺服器,但客戶端繼續列印
notice: Did not receive certificate warning: peer certificate won't be verified in this SSL session
但是伺服器永遠不會看到請求
mrisher@lab2$ puppetca --list [nothing shows up] mrisher@lab2$ puppetca --sign clientname.domain.com clientname.domain.com err: Could not call sign: Could not find certificate request for clientname.domain.com
編輯:有人建議自動簽名正在發生,但似乎不是這樣。沒有
autosign.conf
文件,當我執行時,puppetmasterd --no-daemonize -d -v
我收到以下輸出:資訊:每次客戶說通知時都找不到“clientname.domain.com”的證書:沒有收到證書我檢查了伺服器上的證書,似乎沒有:
mrisher@lab2:~$ puppetca --list --all mrisher@lab2:~$ sudo puppetca --list --all + lab2.domain.com // this is the server (master) mrisher@lab2:~$ sudo puppetca --list [blank line] mrisher@lab2:~$
注意:這主要是從 Ubuntu 執行預設安裝,如果有任何線索的話。
感謝您提供任何幫助。
編輯這似乎是由於
puppetd
作為不同的使用者執行不一致。由於我對守護程序不太了解的原因,puppet 將它的一些設置(包括證書)儲存在 ~/.puppet 而不是中央目錄/var/lib/puppet
中,因此如果你是自己測試還是自己測試很重要sudo.
您的證書請求是否已發送到伺服器?(使用
puppetmasterd --configprint ssldir
我在$ssldir
這裡寫的地方的價值)下面
$ssldir/ca
應該有一個這樣的目錄結構:private/ requests/ serial signed/
在.
requests
_clientname.domain.com.pem
如果它在那裡並且需要簽名,您可以通過指定直接將 puppetca 指向它puppetca --ssldir=/path/to/ssldir --sign clientname.domain.com
;如果它不存在,則客戶端的 CSR 上傳可能會靜默失敗。一個簡單(且安全)的解決方法是puppetca --generate clientname.domain.com
在您的 puppetmaster 上使用為客戶端製作密鑰對和簽名證書。一個簡單且不安全的解決方法是通過將 ‘*.domain.com’ 放入 puppetmaster 的 autosign.conf 中來為您的域打開自動簽名$confdir
。