使用SSH key设置Putty自动登录远程服务器

这段时间一直在使用liunx。每次登录都要输入用户名和密码,登录的次数多了就会感觉比较麻烦。为了解决每次输用户名和密码的麻烦,配置SSH Key直接连接服务器。

设置方法:
1、首先的有个自己的密钥
2、在服务器当前用户.sshauthorized_keys2 文件中加入自己的公钥

环境:
client: win 7 pro
server: debian 7.5

一、生成个人SSH 的密钥对

提示:如果有可以跳过。

打开PuttYgen工具生成密钥对。如果没去官网下一个。

下载地址:http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html

点击执行Generate,在空白区域移动鼠标产生随机数生成证书。

保存你的密钥和公钥。以后在须要SSH的地方,都可以使用。一次生成到处使用,那是杠杠的。

正常保存在个人用户的.ssh目录中。在资源管理器地址栏中输入%USERPROFILE%,就可以跳转到个人用户目录。

选择并复制公钥的值。

提示: 可以先不要关闭这个窗口,公钥后面要用。

二、设置Putty远程连接

1、输入你的服务器地址。

2、Connection->dataConnection->data 分类中输入要登录的用户名。

3、Connection->SSH->Auth SSH验证分类中选择刚才保存的密钥

4、返回Session分类栏,输入要保存的服务器名称,并保存。

下次进去可以直接双击进服务器。

提示: 空值会保存到默认项Default Settings中。

5、 导入个人公钥到服务端

刚进入会提示无法使用SSH登录,须要输入密码。这是因为服务端还没设置的原因,正常输入密码即可。

过程:
1 创建.ssh目录
2 创建公用文件
3 导入授权公钥列表文件authorized_keys2
4 清除不必要权限

cd ~
mkdir .ssh
cd .ssh
cat >abc.pub  # 粘贴刚才生成的公钥值
cat abc.pub >> authorized_keys2
chmod 400 authorized_keys2
ls -l

6、 关闭重新登录。

可以看到使用SSH授权登录的信息,可以不必在输入用户名和密码了。

服务器开启SSH服务

有些服务器可能没有安装或没有开启,就会出现无法正常链接问题。

安装SSH服务

# apt-get update
# apt-get install openssh-server

检测开启状态

# ps -e | grep ssh

会列出一行 sshd 的服务,说明OK。

手工启动

# /etc/init.d/ssh start

配置ssh-server,配置文件位于/etc/ssh/sshd_config,默认端口为22,为了安全,可以修改其它端口,然后重启。

# /etc/init.d/ssh resart

其它

SSH授权登录是很方便的,很多地方都可以使用。比如SFTP传输的时候,sublime的SFTP插件就可以使用刚才配置的SSH授权。