有一些 Linux 已經預設不能以 root 身份登入,或是不允許 root 以輸入密碼登入。
# grep RootLogin /etc/ssh/sshd_config
PermitRootLogin prohibit-password
或
PermitRootLogin without-password
如果還是習慣使用 root 身份登入,可以修改成
PermitRootLogin yes
重新啟動 SSH Server
# /etc/init.d/sshd restart
# systemctl restart sshd.service
或直接改用 SSH Key 的方式,來達成免密碼直接登入[@more@]Server A:192.168.1.10
Server B:192.168.1.101
1. 在 Server A 上執行
# ssh-keygen -t rsa
2. 產生的 key,id_rsa 私鑰 / id_rsa.pub 公鑰
# ls -l ~/.ssh/
-rw——- 1 root root 1675 Mar 9 19:17 id_rsa
-rw-r–r– 1 root root 390 Mar 9 19:17 id_rsa.pub
-rw-r–r– 1 root root 1330 Mar 9 14:41 known_hosts
3. 將公鑰複製到 Server B
# scp ~/.ssh/id_rsa.pub root@192.168.1.101:/root
4. 登入到 Server B,並將從 Server A 複製過來的 id_rsa 公鑰 附加入到 ~/.ssh/authorized_keys
# ssh root@192.168.1.101
# cat id_rsa >> ~/.ssh/authorized_keys
# rm -rf id_rsa
5. 更改權限
# chmod 700 ~/.ssh
# chmod 600 ~/.ssh/authorized_keys
6. 測試從 Server A 以 ssh 連線 Server B 是不是不用輸入密碼