使用rsa-key来ssh远程登录IE Lab Unix/Linux

本文适用于CUHK IE LAB

做CSC3150的第一份Assignment,多次在IE Lab弄到三四点返宿。写程序和debug进行到一定的程度就变成相当恶心的事情,而程序必须在linux主机上编译调试就更加影响了我们的心情……好吧,其实只觉得一遍遍ssh输密码好烦啊……

Login with rsa key

为了以后每次ssh的时候都省下几秒钟输密码,使得咱们心情更愉快些,今天咱就花十分钟做一下rsa key。以后登陆就不用输密码啦。More…

1 生成key pair

需要工具:PuTTYgen

下载后运行PuTTY Key Generator,默认设置即可,按下gernerate然后疯狂(其实随机就行了)移动鼠标……等到进度条到头,就生成好了。Save private key可以设密码或者不设也行,放到安全的地方。这个窗口先不关,留着。

2 上传public key到server

用正常方式登陆任何一个iesun2-12,看看有没有.ssh目录,没有的话创建一个。

mkdir ~/.ssh
chmod 700 ~/.ssh

在.ssh下面创建authorized_keys2 (不用vim可以用nano/pico 等任何editor)

vim ~/.ssh/authorized_keys2

贴入刚刚PuTTYgen里面生成的public key,就是那堆字符啦…… 完了就保存,更改文件权限使得只有自己可读。此处要注意的是,一个public key只占一行,如果贴入后出现多行应该想办法修正到一行,ssh-rsa后面有一个空格,key最后的=和注释之间也有一个空格。

chmod 600 ~/.ssh/authorized_keys2

现在可以断开ssh了

3 设置PuTTY使用key登陆

打开PuTTY

Host name 填入 username@server 形式(否则一会儿还要输用户名,省去的只是密码),如 hguan5@iesun2 (在ie lab里可以省略ie.cuhk.edu.hk)

左边Connection->SSH->Auth Private key file for authentication里面选刚刚生成并保存到安全地方的private key。

然后open就实现第一次不需密码登陆啦。

4 保存PuTTY设置到u drive使得以后每次都不用设置

如果要在lab用ssh的话呢,因为putty的设置不能保存,所以还是要填写host之类,不方便。PuTTY的设置是保存在注册表的,所以其实我们可以用一个script来解决这个问题。

参考PuTTY的说明文档,我写好了方便大家使用。PuTTY.rar

解压到自己的U:/PuTTY/ 然后用那个快捷方式启动PuTTY,以后对PuTTY的设置自然会被保存到自己的U drive里面。

至此我们已经做到在lab ssh登陆unix/linux服务器完全不用按键盘……给大家省下宝贵的10秒钟,更希望大家能有好心情,哈。