我们采用RSA非对称加密算法,原理:
如果,A要和B通讯,则:
(1). A通过RSA算法生成公钥(.pub)和私钥(公钥用于加密,私钥用于解密)
(2). B将A的公钥文件(.pub)内容加入到authorized_keys中
(3). 此时A便可以向B进行通讯,而B不能向A进行通讯
现有两台服务器:
A: 123.118.171.x(root@study)
B: 47.94.199.x (root@centos7)
现在要实现从A向B进行ssh免密登录: ssh root@47.94.199.x
首先,在A服务器上生成rsa密钥对key-rsagen -t rsa
然后将公钥id_rsa.pub的内容追加到B服务器.ssh目录(通过cd ~/.ssh访问)下的authorized_keys当中,博主通过lrzsz工具来将id_rsa.pub上传到了B服务器下的.ssh目录下 将id_rsa.pub内容进行追加到authorized_keys当中
此时A服务器便可以直接用ssh免密登录B服务器了,让我来尝试一下~
大功告成!~
因为博主修改了/etc/motd这个文件,所以登录画面会与大家的有所不同~
现在也可以使用scp指令进行免密传输文件了,从A服务器传输文件给B服务器,在A服务器上键入命令:
scp test.txt root@47.94.199.x:/root/ # 则把A服务器上当前路径下的test.txt文件传输到了B服务器的/root/目录下
若想要实现A与B之间的双向通信,则需要在B服务器上进行同样的操作,生成RSA密钥对,并将公钥id_rsa.pub追加到A服务器下的authorized_keys文件中,这里就不进行多余的叙述了,大家自己实验吧~
网友评论