1、生成密钥
>ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/home/username/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /home/username/.ssh/id_rsa.
Your public key has been saved in /home/username/.ssh/id_rsa.pub.
The key fingerprint is:
73:37:d0:8b:0f:9d:31:56:84:1d:fe:1e:bc:c1:5d:f2 username
输入ssh-keygen -t rsa表示生成RSA密码,可以存放位置,如果不输入位置,使用默认值,home下的本用户名下的.ssh下,中间出现要求输入密码的,可以输入,也可以不输入,如果输入则要记住该密码
这样在/home/username/.ssh/下生成两个文件id_rsa及id_rsa.pub,其中id_rsa是私钥,id_rsa.pub是公钥,私钥是客户端用的,公钥该名称id_rsa.pub为authorized_keys
另:用winscp里的putty也可以生成公钥和私钥,图形化界面生成,比较简单。
2、修改openssh服务器端配置
在安装位置的etc目录下找到文件sshd_config,例如我的文件位置在/etc/sshd_config,修改以下两项
AuthorizedKeysFile .ssh/authorized_keys
PasswordAuthentication no
第一个参数用于说明公钥文件位置,第二个是强制使用密钥访问,而不是用户名及密码,当然第二个参数可以保持yes,这样可以有两种方式访问。
3、重启openss
net stop opensshd
net start opensshd