2019年10月29日星期二

Ubuntu 18.04 证书登录及屏蔽密码登录

今天忽然想起来给一个服务器配置证书登录,并禁止使用密码登录。简单记录如下:
运行环境:Ubuntu 18.04
操作环境:Windows
相关工具:Putty,PuttyGen,FileZilla


操作步骤:
1. 使用putty登录服务器。
2. 修改sshd配置文件并保存退出。
~# vi /etc/ssh/sshd_config
RSAAuthentication yes
PubkeyAuthentication yes
PermitEmptyPasswords no    # 这里不能直接注释,否则默认值为yes,起不到禁用密码登录的效果
3. 重启sshd服务。
~# service sshd restart
注:为避免修改出错,建议验证完成后在修改“PermitEmptyPasswords no”配置。否则此处重启服务后,退出当前连接后将无法登录。
4. 生成ssh密钥对。
[email protected]:~# ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa):    # 输入密钥对保存位置
Enter passphrase (empty for no passphrase):                 # 输入密码,后续使用该秘钥时需要输入该密码,增强安全性
Enter same passphrase again:
Your identification has been saved in /root/.ssh/id_rsa.
Your public key has been saved in /root/.ssh/id_rsa.pub.
The key fingerprint is:
SHA256:xxxxxxxxxxxxxxxxxxxxxxxxxxxxx [email protected]
The key’s randomart image is:
+—[RSA 2048]—-+
| o…o.|
…………..
| . o+ |
+—-[SHA256]—–+
[email protected]:~#
5. 保存公钥。
[email protected]:~# cd .ssh/
[email protected]:~/.ssh# cat id_rsa.pub >>authorized_keys
6. 使用FileZilla下载私钥文件,并在服务器端删除。
7. 使用puttygen将私钥转换为putty识别的格式。
加载过程中需要输入步骤3设置的密码,成功加载后选择“Save Private Key”保存私钥。
8. 使用私钥登录。
 
====结束====