debian系列 配置ssh公钥登录
本文最后更新于 246 天前,其中的信息可能已经有所发展或是发生改变,如有失效可到评论区留言。

ssh 远程登录认证的方式有 Password、Keyboard Interactive 和 Public Key 这三种方式。

前面两种方式就是密码认证,只是第一种不需要交付,而第二种需要交互。一般用第一种,因为相对第2种方式,第一种只要在ssh终端里提前设置好用户名和密码就可以一键登录。而第三种用公钥方式认证是最安全的一种登录方式,因为认证信息不需要在互联网上传递,而这也是云服务器默认使用的一种方式。

以下是具体设置步骤。

以 root 用户登录进入目标 Linux 服务器,输入命令生成公私钥,如下:

ssh-keygen -t rsa

image.png

注:这里是使用命令在目标linux服务器上生成公私钥,但是其实这一步并不是一定要在目标服务器上生成,也可以单独生成公私钥,然后再将公钥上传到目标服务器上(如果有大量服务器需要统一配置公钥方式登录,这种方式就是最适合的),例如在客户端系统中生成公私钥,然后用命令:

ssh-copy-id username@ip_address

将公钥上传到目标服务器的目标主机的authorized_keys文件中。当然使用第三方工具生成公私钥也可以,大家自行选择适合自己的方式即可。

文件权限设置:

cd /root/.ssh
ls

可以看到已经生成的RSA公钥和私钥:

image.png

分别给密钥文件夹和对应的公私钥文件设置权限:

chmod 700 /root/.ssh/
chmod 600 ~/.ssh/id_rsa
chmod 644 ~/.ssh/id_rsa.pub

将公钥添加到 ~/.ssh/authorized_keys 文件中:

cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys

修改 sshd 服务的配置文件开启公钥认证:

vim /etc/ssh/sshd_config
--------------------------
PubkeyAuthentication yes   //去掉#并改为yes,其实如果没有修改过,这就是系统默认的配置

如果需要配置root用户的ssh公钥登录,还需要做如下配置:

vim /etc/ssh/ssh_config
----------------------------
#PermitRootLogin prohibit-password //去掉#

修改完配置文件记得重启下ssh服务:

systemctl restart ssh

最后将私钥文件 ~/.ssh/id_rsa 下载并导入到对应的需要登录目标linux服务器的ssh客户端中即可(或者用户主目录下/.ssh文件夹里)。

注:本质上来说,其实就是各个ssh客户端将各自的rsa公钥上传到目标linux服务器的authorized_keys文件(白名单)中,然后登录的时候目标linux服务器用白名单中的公钥来验证各个ssh客户端的身份。

博客内容均系原创,转载请注明出处!更多博客文章,可以移步至网站地图了解。博客的RSS地址为:https://blog.tangwudi.com/feed,欢迎订阅;如有需要,可以加入Telegram群一起讨论问题。
暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇
       

本站已禁用鼠标右键和各种快捷键,代码块内容可以直接在右上角点击复制按钮进行复制

zh_CN