![强制基于密钥的身份验证](https://linux22.com/image/157418/%E5%BC%BA%E5%88%B6%E5%9F%BA%E4%BA%8E%E5%AF%86%E9%92%A5%E7%9A%84%E8%BA%AB%E4%BB%BD%E9%AA%8C%E8%AF%81.png)
您好 – 我以前从未需要设置 SSH,所以我对此很陌生。我有一个 Raspberry Pi 来管理我的智能设备,我希望能够通过 SSH 连接到它。然而仅有的从本地网络上的另一台机器。
我想使用密钥而不是密码,但我不知道如何开始。有人告诉我这ufw
是一种方法,我需要设置我的sshd
;但这就是我所知道的全部。
还有什么我需要做的吗?
答案1
强制基于密钥的身份验证
- 设置
PasswordAuthentication no
在/etc/ssh/sshd_config
阻止其他网络
ufw allow proto tcp from 192.168.1.0/24 to any port 22 comment "ssh"
ufw enable
我只测试了第一行的语法。您还必须更改 IP 网络地址。我的例子是针对192.168.1.x
.
答案2
- 在智能设备(ssh服务器端)上,需要sshd。了解如何为每个设备启用它。
- 使用密码 ssh 访问,使用客户端工具(如下)设置密钥访问。
- 然后禁用密码访问,如上面 ctrl-alt-delor 的答案所示。
以下是您需要了解的客户端工具(客户端不需要 sshd):ssh-keygen 和 ssh-add 或 ssh-id-copy