如何无密码且安全地登录远程系统?


hello大家好😁

前言❓

今天的小练习里面有个题是这样要求的:

  • 配置用户,让本地系统serverb上的student用户能在不输入密码的情况下,使用SSH来登录远程系统servera
  • 在serverb(本地系统)上配置sshd服务,以禁止用户通过SSH以root身份登录
  • 在serverb(本地系统)上配置sshd服务,以禁止用户使用其密码进行登录

分析❗

SSH协议使系统能够通过不安全的网络以加密和安全的方式进行通信。一般使用ssh命令登录远程服务器时,远程系统会提示我们使用该用户的密码进行身份验证
在这里插入图片描述
但是,当我们想在不使用密码的情况下安全地登录远程系统该怎么办?❔
SSH为我们提供了一种可以基于密钥的身份验证方法,这种身份验证基于私钥-公钥方案

基于SSH密钥的身份验证

在使用这种身份验证之前,我们需要先生成加密密钥文件的一个匹配对。一个是私钥,另一个是匹配的公钥。私钥文件用作身份验证凭据,像密码一样,必须妥善保管。然后将公钥复制到用户希望连接到的系统,用于验证私钥,公钥不需要保密。
OK,接下来我们一步一步来💨

为serverb(当前系统)上的student用户生成SSH密钥

使用ssh-keygen命令,为student用户生成SSH密钥。私钥和公钥一般默认分别保存在当前用户主目录下的.ssh/key_rsa和.ssh/key_rsa.pub中。但是我们最好将自己生成的私钥公钥对放在另外的文件下,注意公钥文件以.pub结尾

在下面我将私钥和公钥分别放在 /home/student/.ssh/review3_key和/home/student/.ssh/review3_key.pub中

在这里插入图片描述

让远程系统(servera)接受利用我为serverb上student用户创建的SSH密钥对进行登录身份验证

使用ssh-copy-id命令,将公钥文件导出。

-i 选项用于指定文件

在这里插入图片描述

使用ssh命令,确认我们现在可以从serverb以student身份并使用SSH私钥 /home/student/.ssh/review3_key 登录servera,而且不会提示我们输入密码

我们要指定我们自己设置的私钥文件,否则默认使用/home/student/.ssh/key_rsa里的私钥进行验证

在这里插入图片描述

在serverb上配置sshd服务,以禁止用户通过SSH以root身份登录

在 /etc/ssh/sshd_config配置文件中修改PermitRootLogin参数为no

在这里插入图片描述

注意,在修改完配置文件后要重新加载服务

在这里插入图片描述

然后我们就发现不能用SSH 以root用户身份登录了

在这里插入图片描述

在serverb上配置sshd服务,以禁止用户使用其密码进行登录

/etc/ssh/sshd_config配置文件中有一个参数是PasswordAuthentication,默认值是yes,意味着我们不仅可以通过私钥进行登录身份验证,还可以通过输入密码进行登录(如下面👇第一张图所示)。将值改为no,我们就只能通过私钥进行登录了

在这里插入图片描述
在这里插入图片描述

注意,在修改完配置文件后要重新加载服务

在这里插入图片描述

然后再尝试使用密码登录,就不行了

在这里插入图片描述

总结💯

以后,我们就能够将用户账户配置为使用基于密钥的身份验证来安全地登录远程系统,并且无需输入密码。
其实私钥也是可以被保护起来的,在上面,我们使用ssh-keygen时,系统提示我们指定密语,我们是直接跳过了,私钥在不受密语保护的情况下,任何拥有我的私钥文件的人都可以使用它进行身份验证。如果设置了密语,那么在使用私钥进行身份验证的时候需要输入密语。这些内容大家感兴趣的话可以自己去浏览相关资料👀

感谢💖

好啦,这次的分享就到这里,感谢大家看到这里💕,我目前还是学习中小白,十分希望能和各位朋友们大佬们在讨论区互动💫再次感谢💞

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

不怕娜

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值