- 制作公鑰
創(chuàng)建公鑰我們要使用到 ssh-keygen
#命令格式
ssh-keygen -m PEM -t rsa -b 4096 -f ~/.ssh/filename
參數(shù)說(shuō)明:
-m 參數(shù)指定密鑰的格式,PEM(也就是RSA格式)是以前使用的舊格式,很多ssh客戶(hù)端都用這個(gè)格式。
-t:指定要建立的密鑰類(lèi)型
-b:指定密鑰長(zhǎng)度
-f:指定用來(lái)保存密鑰的文件名 (~/.ssh/filename)
配置過(guò)程:
pi@raspberrypi400: ssh-keygen -m PEM -t rsa -b 4096 -f ~/.ssh/Rpi400.pem
Generating public/private rsa key pair.
Enter passphrase (empty for no passphrase): < 輸入公鑰密碼
Enter same passphrase again: < 再次輸入公鑰密碼
Your identification has been saved in /home/pi/.ssh/Rpi400.pem
Your public key has been saved in /home/pi/.ssh/Rpi400.pem.pub
The key fingerprint is:
SHA256:/ugJzv8c7MYu/cvk3Wf6bkKAzWAxWfFjwSJ9nuIBtUw pi@raspberrypi400
The key's randomart image is:
+---[RSA 4096]----+
| o*Eo. |
| *+ooo. |
| . Bo++. |
| . *.o. |
| S . + |
| . . . . |
| . .oo .. |
| o ..*+= ...+|
| oo==*.=.oB=|
+----[SHA256]-----+
公鑰成功創(chuàng)建,文件所在位置:/home/pi/.ssh/
- 安裝公鑰
完成公鑰的安裝后,為確保連接成功,文件權(quán)限也要確保配置正確。
cd .ssh
cat Rpi400.pem.pub >> authorized_keys
chmod 600 authorized_keys
chmod 700 ~/.ssh
3.下載公鑰
如果不知道怎么下載的可以先安裝Lrzsz,lrzsz是一款在linux里可代替ftp上傳和下載的程序。
sudo apt install lrasz -y
# 下載公鑰文件
cd ~/.ssh
sz Rpi400.pem
4.修改SSH配置
sudo nano /etc/ssh/sshd_config
# 找到下面這行將注釋符號(hào) # 刪除
# PubkeyAuthentication yes
Ctrl + O 回車(chē)保存
Ctrl + X 回車(chē)退出
重啟ssh服務(wù):
sudo service sshd restart
5.使用公鑰登錄
配置完后登錄測(cè)試正常。
6.禁用ssh密碼登錄
如果您的設(shè)備暴露在公網(wǎng)上,當(dāng)你完成全部設(shè)置,并以密鑰方式登錄成功后,可以禁用密碼登錄功能,加強(qiáng)其安全性防止ssh暴力破解:
sudo nano /etc/ssh/sshd_config
找到
#PasswordAuthentication yes
改為
PasswordAuthentication no
重啟ssh服務(wù):
sudo service sshd restart