1.一定要使用OpenSSH来生成啊,不能贪图方便使用Putty来搞!以下认证是2048位的。

在Linux下生成密钥对,私钥自己留着,公钥丢服务器上验证,在服务器生成比较简单!

mkdir ~/.ssh
cd ~/.ssh
ssh-keygen -t rsa

屏幕提示如下

Generating public/private rsa key pair.
Enter file in which to save the key (xxx/.ssh/id_rsa):回车
Enter passphrase (empty for no passphrase):私钥密码,建议填写,和不用登录密码无关,不填就回车
Enter same passphrase again:重输一遍
Your identification has been saved in xxxx/.ssh/id_rsa.
Your public key has been saved in xxxx/.ssh/id_rsa.pub.
The key fingerprint is:
xxxxxxxxx@xxxxxxxxxxxxx.com

2.让生成的公钥成为服务器验证公钥

mv id_rsa.pub authorized_keys

3.关掉明文验证

vim /etc/ssh/sshd_config

找到

PasswordAuthentication yes

改为

PasswordAuthentication no

重启SSH服务

service sshd restart

4.将id_rsa私钥搞到本地电脑(这个略去)
5.利用putty进行格式转换

下载转换器,下载地址http://tartarus.org/~simon/putty-snapshots/x86/puttygen.exe;

打开转换器,点击“load”,加载私钥,这里可能要输入密码,就是刚才生成的私钥使用的密码;

修改Key comment,这个是备注,认证的时候显示在屏幕上提示你,可以为服务器名称;

根据需要修改Key passphrase和Confirm passphrase私钥认证密码2次确认,不要密码登录的话都留空;

点击Save private key生成putty格式的私钥。

6.加载生成的putty格式的私钥进行登录

好了,简单吧?