mmyCSDN 2020-01-06
在Linux运行过程中,有些特殊情况需要让不同Linux主机之间进行SSH免密登录,直观来看是免密登录,确切的说是通过秘钥验证登录。
如A主机需要远程免密登录到B主机,那么需要在A主机上面通过工具生成秘钥对,即公钥和私钥。私钥用来解密,放置在A主机本地,公钥用来加密,放置在远端B主机。
[ ~]# ssh-keygen -b 1024 -t rsa Generating public/private rsa key pair. Enter file in which to save the key (/root/.ssh/id_rsa): Enter passphrase (empty for no passphrase): Enter same passphrase again: Your identification has been saved in /root/.ssh/id_rsa. Your public key has been saved in /root/.ssh/id_rsa.pub. The key fingerprint is: b3:9d:90:f8:60:66:45:72:c1:2f:8f:ea:32:80:b6:4c The key‘s randomart image is: +--[ RSA 1024]----+ | ..+. | | +. | | .. | | o... | | . * S+ | |.E. + o.=.. | |+ .. .o o | | o o . | | +. | +-----------------+
-t [rsa|dsa] 指定要创建的密钥类型。可以使用:"rsa1"(SSH-1) "rsa"(SSH-2) "dsa"(SSH-2),我们选的rsa
-b 1024 指定密钥长度。对于RSA密钥,最小要求768位,默认是2048位。DSA密钥必须恰好是1024位(FIPS 186-2 标准的要求)。

将id_rsa.pub该文件内容复制出来,粘贴到远端B主机/root/.ssh/authorized_keys文件中,默认authorized_keys文件并不存在,手动创建即可。
无需输入密码即可登录

此测试存在限制条件,被登录主机的ssh配置需要开启远程访问权限。