SSH无密码登录要使用公钥与私钥。Linux下可以用用ssh-keygen生成公钥/私钥对。举例:有机器PC_A(172.0.246),PC_B(172.0.1.140)。现想A通过ssh免密码登录到B。1.在PC_A主机下生成公钥/私钥对

  1. [comodo@PC_A ~]$ ssh-keygen -t rsa -P ''

    -t表示key的类型,rsa表示key类型 -P表示密码,-P '' 就表示空密码,也可以不用-P参数,这样就要三车回车,用-P就一次回车。运行完之后在/home/comodo/.ssh目录下生成私钥id_rsa和公钥id_rsa.pub

2.将PC_A主机下的公钥id_rsa.pub复制到PC_B机下

[comodo@PC_A ~]$ scp id_rsa.pub root@172.0.1.140:/home/comodo/id_rsa.pub


3.将PC_B主机上的公钥添加到/home/comodo/.ssh/authorzied_keys之中

    [comodo@PC_B ~]$ cat id_rsa.pub >>/home/comodo/.ssh/authorized_keys    [comodo@PC_B ~]$ chmod 600 /home/comodo/.ssh/authorized_keys //此行十分重要


4.从PC_A机登录PC_B机

    [comodo@PC_A ~]$ ssh 172.0.1.140    Last login: Fri Oct 12 10:37:30 2012 from 172-0-1-246.lightspeed.brhmal.sbcglobal.net


如果也希望从PC_B主机无密码登录PC_A主机,只需对PC_B主机做相同的操作。