一、准备工作
用客户端工具(xshell或者ssh等等)连接到linux服务器。在root用户下输入命令:
vi /etc/hosts,用vi编辑hosts文件,如下:
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.2.121 test1
192.168.2.122 test2
2) 输入命令:cd .ssh(如果找不到这个文件夹,先执行一下 "ssh localhost")进入rsa公钥私钥文件存放的目录,删除目录下的id_rsa,id_rsa.pub文件。
二、在每台机上产生新的rsa公钥私钥文件,并统一拷贝到一个authorized_keys文件中
1) 登录test1,在.ssh目录下输入命令:
ssh-keygen -t rsa
三次回车后,该目录下将会产生id_rsa,id_rsa.pub文件。其他主机也使用该方式产生密钥文件.
2) 登录test1,输入命令:
cat id_rsa.pub >> authorized_keys
将id_rsa.pub公钥内容拷贝到authorized_keys文件中。
3) 登录其他主机,将其他主机的公钥文件内容都拷贝到test1主机上的authorized_keys文件中,命令如下:
ssh-copy-id -i test1#登录test2,将公钥拷贝到test1的authorized_keys中
ssh-copy-id -i test1#登录test3,将公钥拷贝到test1的authorized_keys中
ssh-copy-id -i test1#登录test4,将公钥拷贝到test1的authorized_keys中
[root@test1 .ssh]# more authorized_keys
ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAp7jp4a1/deK4B/eZW8kdiCQvzpKe4Id0uP0DdONFW85r
20rpH4ZpNSB7JNYFiqjMUPQ/2EWLXh7xoa9UntKsMVVcZr3BTiXRZ0Gx7IDacwz8Cq0qYrwUCMTKt7QF
xK5RwXyuZqDFjc2yC3/ZoqeyeLERFTll3ZLGeFsXhJjlkPTvtnvx0zX6lacPZL4VguoM5YHw3KaJg8bd
qehJzbQoPS8sm00ES4iygbR+Ixz1cnGTrtNU1S3lh4/y0PC6spMs9Z2Mf097FTLQJXJDiGqU9Tq3MHvl
srZFx92H4yeiJuYWJaZImuiq/feRIo30Dig6obEfuAn13vevdXozcXNlYQ== root@test1
ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAwpEgmBzfGw1mrKy3Ho8k/h4jrZlRdIzuLs6PKqDPV/Cw
2kjSYXV7tyGklUYWPWr1Dt6kw5+Ojr7zv+cFnFWKzTTAJz3V4md0RyQ11Kb+IJA7b88SRHcVLlNF2GDX
N2pVqh9lf6Zu6zfpnAjCg/mU8qzTrZfFZdzPtBppimMq+l0bolvgnxEEkpFTNkpHB8+cD732WL+KiW52
7nt0LGBbVbZz9mUa+0bsPGK7ySfk1SPUkGyNXXqVjEydyjvRY8bob7Q3mFX3MpDT696R8n7U7hQ7u4b8
gbe3rIuQcWwGseEQrGjIDhLb9am3dbgDuFeg73RJqFZMOp2y6zQF3jQIew== root@test2
三、授权authorized_keys文件和.ssh文件
1) 登录test1,在.ssh目录下输入命令:
chmod 600 authorized_keys
2) 登录test1,输入命令:
chmod 700 .ssh
四、将授权文件分配到其他主机上
1) 登录test1,将授权文件拷贝到test2、test3...,命令如下:
scp /root/.ssh/authorized_keys test2:/root/.ssh/ #拷贝到test2上
scp /root/.ssh/authorized_keys test3:/root/.ssh/ #拷贝到test3上
scp /root/.ssh/authorized_keys test4:/root/.ssh/ #拷贝到test4上
scp /root/.ssh/authorized_keys test5:/root/.ssh/ #拷贝到test5上
2) 至此,免密码登录已经设定完成,注意第一次ssh登录时需要输入密码,再次访问时即可免密码登录。