。。。。。
分类: LINUX
2006-04-10 11:23:16
我们在用ssh 登录另一台主机时,需要输入对方登录用户密码,每一次登录必须输入一次密码,那么有没有方法不用输入密码,答案是肯定的,利用密钥即可。具体操作步骤如下:
第一步:在本地主机上执行ssh-keygen命令,生成密钥。
# ssh-keygen -t rsa/dsa
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa): 输入所生成密钥文件存放位置,()中为默认路径
Created directory '/root/.ssh'.
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:
e7:
到此,在你输入的路径目录下会生成id_rsa与id_rsa.pub(或者是id_dsa 与id_dsa.pub)两个文件。
第二步:将id_rsa.pub或id_dsa.pub放入目标主机/root/.ssh/下,文件名为authorized_keys2.
# scp id_rsa.pub 目标主机IP:/root/.ssh/authorized_keys2
第三步:查看目标服务器上的authorized_keys2的权限,确保其为0655或更高;同时确保本机上的id_rsa/id_dsa的权限为0600;
ok,到此已经配置完毕,现在你再用ssh登录对方主机时,就不用再输入密码或者输入在第一步中你自己设置的密码。
注意:如果有a,b两台主机同时想在目标主机实现以上目的,则注意不要将目标主机/root/.ssh/authorized_keys2中给覆盖,你可以现将id_rsa.pub或id_dsa.pub放入目标主机其它目录下,然后采用cat id_rsa.pub >> /root/.ssh/authorized_keys2 即可。两台以上的操作如此相同,必须采用追加的方式。
限于本人水平有限,如果不作之处,还请不吝赐教!