Ssh
保護主要 Ansible 使用者
對於主要的 Ansible 使用者,似乎只有兩種合理的方法:
- 使用
root
- 使用具有訪問權限的其他使用者(例如
ansible
)NOPASSWD
sudo
第一個選擇是不可行的,因為我一想到要繼續下去就畏縮不前
PermitRootLogin
。因此,預設情況下,第二個選項似乎是要走的路。我在想,至少,在
/etc/ssh/sshd_config
:Match User ansible PasswordAuthentication No
from
並通過使用以下選項限制 Ansible 主機的密鑰使用authorized_keys
:from="192.168.100/24"
到目前為止,我的想法還有其他想法或問題/疑慮嗎?
這些是我用於必須通過 ssh 遠端管理的客戶端的措施(在我的情況下使用 BackupPC 而不是 Ansible,但它的工作方式相同)。
如果您只使用 ssh 來管理客戶端,而不是用於 shell 訪問,那麼添加將提高安全性
AllowUsers ansible PasswordAuthentication no
您可以擁有一個需要密碼才能訪問 SUDO 的使用者帳戶,並在執行時通過
--ask-sudo-pass
標誌 (-K
) 為 ansible-playbook提供該值ansible-playbook -i inv/production -K playbook.yml