Tips: ssh记住密码,自动登录
Thursday, March 16, 2006 5:14:35 AM
1. Creating authentication key
用ssh-keygen生成公/私钥对:
beowulf% ssh-keygen -t rsa Generating public/private rsa key pair. Enter file in which to save the key (/u/kim/.ssh/id_rsa): [RETURN] Enter passphrase (empty for no passphrase): litt1e 1amp jumb3d Enter same passphrase again: litt1e 1amp jumb3d Your identification has been saved in /u/kim/.ssh/id_rsa. Your public key has been saved in /u/kim/.ssh/id_rsa.pub. The key fingerprint is: b7:18:ad:3b:0b:50:5c:e1:da:2d:6f:5b:65:82:94:c5 kim@beowulf.gw.com
记住你的passphrase(这里是little lamp jump3d)。其中~/.ssh/id_rsa.pub为公钥文件
2. Authorizing access
将公钥上传成目标机的~/.ssh/authorized_keys (ftp,scp都可以)
beowulf% cd ~/.ssh beowulf% cp id_rsa.pub authorized_keys beowulf% scp -p ~/.ssh/authorized_keys kim@hrothgar:.ssh/ kim@hrothgar’s password: YourPasswordHere authorized_keys 100% 1839 1.2MB/s 00:00
其中需要输入目标机上你的用户密码(在此为hrothgar上的kim用户)。
这时,你使用ssh登录时,将会通过你identification的passphrase来登录了。
beowulf% ssh hrothgar Enter passphrase for key '/u/kim/.ssh/id_rsa': litt1e 1amp jumb3d kim@hrothgar%
3. Keeping authentication keys in memory
通过ssh-agent来记住认证,添加的方式见下一节。一般的做法是通过ssh-agent来启动一个shell,在该shell中使用:
beowulf% ssh-agent $SHELL beowulf%
我用的是Debian,在/etc/X11/Xsession.d/下面就又一个90xfree86-common_ssh-agent用于使用ssh-agent来启动X,这样,一进入X,ssh-agent就是可用的。如果你的系统里没有这样的设置,简单的做法就是用"ssh-agent startx"来启动X,如果你用的是xdm,gdm之类的,修改你的~/.xsession文件
4. Managing keys in memory
通过ssh-add添加keys。
beowulf% ssh-add Enter passphrase for /u/kim/.ssh/id_rsa: litt1e 1amp jumb3d Identity added: /u/kim/.ssh/id_rsa (/u/kim/.ssh/id_rsa)
然后,你就可以通过
beowulf% ssh hrothgar kim@hrothgar%
ssh登录而不需要密码了。





Anonymous # Tuesday, April 17, 2007 10:14:05 AM
Leira HuaLeira # Friday, April 20, 2007 8:42:03 PM
当时只是随手记下来,给同事看的,没有严谨翻译,而且看到原文也颇为辗转,没有去求证真正的源头,谢谢竹林漂泊兄,下次不会再犯了~。
Anonymous # Wednesday, July 14, 2010 1:46:28 PM