且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

Linux多台计算机之间使用ssh、scp无需密码的一种方法

更新时间:2022-10-04 18:07:41

Linux多台计算机之间使用ssh、scp无需密码的一种方法


      配置多台计算,使之可以相互登录而不需要输入密码,步骤如下:

一、如果没有安装ssh,则安装ssh(yum install ssh)安装完成后会在用户主目录下产生一个隐藏文件夹.ssh。如果没有这个文件,自己新建即可(mkdir .ssh)。

二、进入.ssh目录下面,在每台机器上执行命令:ssh-keygen -t  rsa  之后一直回车,便产生密钥;

三、完成第二步后会产生两个文件:id-rsa(私钥)、id-rsa.pub(公钥)

四、在第一台机器的目录.ssh下执行命令:cat  id-rsa.pub >> authorized_keys;此后.ssh下面会出现authorized_keys文件。

五、然后将第一台机器的.ssh目录下面的authorized_keys文件拷贝到第二台计算机的.ssh目录下,

如:scp /root/.ssh/authorized_keys     root@192.168.1.200:/root/.ssh/

六、到第二台机器的.ssh目录下,将第二台计算机的公钥追加进来,如:cat id-rsa.pub >> authorized_keys.

七、将第二台计算机新生成的authorized_keys传输第三台计算机,将第三台计算机的公钥-id-rsa.pub添加到从第二台计算机传过来的authorized_keys里面。依次类推,直到最后一台计算机。

八、在最后一台计算机执行完添加后,生成的authorized_keys文件就包含所有计算机的公钥,如果以后还有机器加进来,将公钥直接追加到文件authorized_keys中即可。最后,将最后生成的authorized_keys复制到每一台计算机的.ssh目录下,覆盖掉之前的authorized_keys。至此,便可以在任意一台计算机上免密码使用ssh、scp了。如:在主机192.168.1.101上执行如下:

scp /tmp/t.txt  192.168.1.200:/tmp

ssh 192.168.1.200

注:假如没有公钥则需要如下执行:

scp  /tmp/t.txt  root@192.168.1.200:/tmp

ssh  root@192.168.1.200














本文转自shangshanyang51CTO博客,原文链接: http://blog.51cto.com/qqran/1900714,如需转载请自行联系原作者