公司最近請我研究用ansible批量修改linxu server的密碼
其中有遇到一個問題
當我使用ansible-playbook指令跑yml
會需要SSH到我在/etc/ansible/hosts指定的機器動作
但是會使用root user
都會遇到permission denied的問題 就直接 unreachable
這個問題先前在用ansible部屬K8S的時候有解決
當時是要先到各個被控端
1.輸入passwd root 更改一次密碼
2.編輯 /etc/ssh/sshd_config並新增PermitRootLogin yes
3.重啟sshd systemctl restart sshd
4.ansible端設定無密碼 ssh-keygen (按下4次enter 設定無密碼)
5.ansible端跑 ssh-copy-id root@ip (ip為各個被控端)
就可以ssh root@被控端IP
而K8S node才幾台 去跑上面步驟OK
但我今天是要跑全公司Linux機器 有幾百台...
想問問看有沒有別的方式
其中有想到可能是可以讓ansible用非root去SSH(但不確定會不會遇到SSH可以通 但進去後沒權限的問題)
但是ansible似乎都是用root去ssh 不知道怎麼改
不知道該怎麼解決....
求大大們指教