使用ssh-keygen生成私钥和公钥
命令如下:
ssh-keygen -t rsa
例子:
fdipzone@ubuntu:~$ ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/home/fdipzone/.ssh/id_rsa): 这里输入要生成的文件名
Enter passphrase (empty for no passphrase): 这里输入密码
Enter same passphrase again: 这里重复输入密码
Your identification has been saved in /home/fdipzone/.ssh/id_rsa.
Your public key has been saved in /home/fdipzone/.ssh/id_rsa.pub.
The key fingerprint is:
f2:76:c3:6b:26:10:14:fc:43:e0:0c:4d:51:c9:a2:b0 fdipzone@ubuntu
The key's randomart image is:
+--[ RSA 2048]----+
| .+=*.. |
| . += + |
| o oo+ |
| E . . o |
| ..S. |
| .o . |
| .o + |
| ...oo |
| +. |
+-----------------+
参数 -t rsa 表示使用rsa算法进行加密,执行后,会在/home/当前用户/.ssh目录下找到id_rsa(私钥)和id_rsa.pub(公钥)
fdipzone@ubuntu:~$ ls -lt ~/.ssh
总用量 12
-rw------- 1 fdipzone fdipzone 1679 2015-08-07 00:28 id_rsa
-rw-r--r-- 1 fdipzone fdipzone 397 2015-08-07 00:28 id_rsa.pub
也可以使用 dsa 加密算法进行加密,命令如下:
ssh-keygen -t dsa
然后进入到key目录
cd /root/.ssh
cat id_rsa.pub >> authorized_keys
查看文件权限:
chmod 700 /root/.ssh
chmod 600 authorized_keys
设定客户端连接使用的ssh私钥和公钥
vim /etc/ssh/ssh_config
找到
# IdentityFile ~/.ssh/identity //使用证书时候的密码,可免
# IdentityFile ~/.ssh/id_rsa
# IdentityFile ~/.ssh/id_dsa
把前面#去掉,然后在 IdentityFile 后填写你用来执行ssh时所用的密钥
3.禁用密码登录
编辑ssh服务配置文件:vi /etc/ssh/sshd_config。
vi /etc/ssh/sshd_config
修改PasswordAuthentication属性:将yes修改为no,保存退出。
yes表示允许密码验证,no表示禁用密码验证功能。
最后:
service sshd restart
好了,你的服务器只能通过证书登录。
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END