树莓派ssh连接使用公钥登录

  1. 制作公钥
    创建公钥我们要使用到 ssh-keygen
#命令格式
ssh-keygen -m PEM -t rsa -b 4096 -f ~/.ssh/filename

参数说明:

-m 参数指定密钥的格式,PEM(也就是RSA格式)是以前使用的旧格式,很多ssh客户端都用这个格式。
-t:指定要建立的密钥类型
-b:指定密钥长度
-f:指定用来保存密钥的文件名 (~/.ssh/filename)

配置过程:

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]-----+

公钥成功创建,文件所在位置:/home/pi/.ssh/

  1. 安装公钥
    完成公钥的安装后,为确保连接成功,文件权限也要确保配置正确。
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
# 找到下面这行将注释符号 # 删除
# PubkeyAuthentication yes

Ctrl + O 回车保存

Ctrl + X 回车退出

重启ssh服务:

sudo service sshd restart 

5.使用公钥登录

配置完后登录测试正常。

6.禁用ssh密码登录
如果您的设备暴露在公网上,当你完成全部设置,并以密钥方式登录成功后,可以禁用密码登录功能,加强其安全性防止ssh暴力破解:

sudo nano /etc/ssh/sshd_config

找到  
#PasswordAuthentication yes
改为 
PasswordAuthentication no

重启ssh服务:

sudo service sshd restart 

你可能感兴趣的:(树莓派ssh连接使用公钥登录)