Ssh
小型團隊的 SSH 公鑰管理
我正在我大學的實驗室裡建立一個深度學習工作站。它執行 Ubuntu Server 16.04,我在其中設置了一個 SSH 伺服器,以遠端控制它。
我現在的任務是讓我的團隊可以使用它,通過 SSH 使用公鑰身份驗證(已經禁用密碼身份驗證)。但是我對 SSH 公鑰管理的某些方面有點迷茫。
如何管理能夠訪問伺服器的使用者的 pub-keys?
在伺服器中接收和儲存這些密鑰的最安全方法是什麼?
他們應該通過消息向我發送通過 ssh-keygen 生成的 pub-keys 並將其自己儲存在伺服器上,還是有一些更安全的方法來做到這一點?
團隊大約有 6 人,所以我認為手動管理密鑰在這種情況下是可行的。我錯了嗎?
對這些問題感到抱歉,但過去兩週我一直在網上搜尋有關此主題的資訊,但找不到任何對本案有用的資訊。非常感謝您提供伺服器管理經驗的建議!
ssh-copy-id可能對您有幫助,但這需要使用者自己添加他們的密鑰,並且為了做到這一點,他們需要能夠登錄(通過密碼,因為尚未設置 ssh 密鑰)。另一種方法是讓他們向您發送他們的公鑰,然後將其添加到他們的每個授權密鑰文件中。只要他們不發送私鑰,它就是安全的。這不是最好的長期解決方案,但對於 6 個人來說還不錯。
我認為這是 Ansible/Puppet/Chef/等配置管理工具的理想案例。
讓人們生成他們的密鑰,並將它們儲存為配置管理系統部署的數據的一部分。