多台Linux服务器SSH相互访问无需密码--转
一、環境配置
1、系統:CentOS release 5.6?? IP:192.168.4.200?? 主機名:JW01
2、系統:CentOS release 5.9?? IP:192.168.4.244?? 主機名:JW02
3、系統:CentOS release 5.3?? IP:192.168.4.232?? 主機名:KT01
4、系統:Red Hat? release 4???IP:192.168.4.201?? 主機名:KT02
二、服務器配置
1、在每臺服務器上都執行ssh-keygen -t rsa 生成密鑰
?
| [root@jw01 .ssh]# ssh-keygen -t rsa Generating public/private rsa key pair. |
?
2、在每臺服務器上將公鑰復制到無需登錄的服務器上,如192.168.4.200 /244/232/2014臺做相互無需密碼登錄,在每臺服務器生成密鑰后,在每一臺服務器上執行ssh-copy-id的命令;以192.168.4.200為例;其他三臺服務器也是同樣的操作;
?
| 例:192.168.4.200 root@192.168.4.244's?password:????????????? #輸入密碼 |
?
以上,可以自動將公鑰添加到authorized_keys的文件中,在每臺服務器都執行完以上的步驟就可以實現多臺服務器無需密碼相互訪問了。
三、故障處理
1、如果ssh-copy-id 函數在遠程服務器不存在;如下
?
| [root@kt02 .ssh]# ssh-copy-id -i? id_rsa.pub "-p 22 |
| root@192.168.4.244" -bash: ssh-copy-id: command not found |
?
???? 可以嘗試用一下命令解決,直接復制本地的pubkey內容到遠程服務器;
?
| [root@kt02 .ssh]#?cat ~/.ssh/id_*.pub | ssh??root@192.168.4.244?'cat > .ssh/authorized_keys' |
?
四、登錄SSH
1、登錄遠程服務器就不需要密碼:
?
| [root@kt02 .ssh]#?ssh?root@192.168.4.244 |
?
2、登錄遠程服務器有端口的需要添加端口-P
?
| [root@jw02 .ssh]#?ssh?ken@223.73.125.198?-p 511190 |
?
3、你依然被要求輸入遠程服務器密碼, 那說明你的用戶在遠程服務器上面沒有足夠的權限;請查看一下你的遠程登錄的用戶以及authorized_keys文件在哪個用戶的目錄下。
本文出自 “&思遠晨曦” 博客,請務必保留此出處http://kling.blog.51cto.com/3320545/1132800
轉載于:https://www.cnblogs.com/davidwang456/p/3710871.html
總結
以上是生活随笔為你收集整理的多台Linux服务器SSH相互访问无需密码--转的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 生产者/消费者问题的多种Java实现方式
- 下一篇: CLOSE_WAIT状态的原因与解决方法