centos SSH免密登录 多台互相免密登录
一、从一台服务器免密登录到多台服务器
假定操作的机器为crawl01,需要免密登录的机器为crawl02,crawl03...
在crawl01上做如下操作(假定用户crawl登录的crawl01,其它机器的登陆用户也是crawl):
1.生成密钥
(1)进入到/home/crawl/.ssh目录下(没有.ssh则新建)
(2)输入ssh-keygen -t rsa 一直按enter直到完成
(3)添加公钥
cat id_rsa.pub > authorized_keys
2.赋予权限
(1)给.ssh文件夹赋权限700
cd ..
chmod 700 .ssh/
(2)给.ssh/authorized_keys 赋权限600
chmod 600 .ssh/authorized_keys
3.crawl02机器上赋予权限
(1)检查是否有.ssh文件夹,没有则创建
mkdir .ssh/
(2)给.ssh文件夹赋权限700
chmod 700 .ssh/
4.将authorized_keys 文件传送到需要被免密登录的机器上
scp .ssh/authorized_keys crawl@crawl02:/home/crawl/.ssh/authorized_keys
5.crawl02机器上执行ssh-add命令
6.在crawl01上执行ssh crawl@crawl02 不需要输入密码则表示成功
7.crawl03等其它需要免密登录的机器重复第3步以及后面的步骤。
二、多台机器之间互相免密登录
(1)在上面从一台服务器免密登录到多台的基础上,在第4步时同时将.ssh/文件夹下的id_rsa和id_rsa.pub同步到需要被免密登录的机器上,
即第4步要同步三个文件:
scp .ssh/authorized_keys crawl@crawl02:/home/crawl/.ssh/authorized_keys
scp .ssh/id_rsa crawl@crawl02:/home/crawl/.ssh/id_rsa
scp .ssh/id_rsa.pub crawl@crawl02:/home/crawl/.ssh/id_rsa.pub
(2)在被需要免密登录的机器上执行ssh-add命令
(3)互相输入 ssh 目标机器地址 进行测试