首先,我们要了解为什么不让使用密码进行远程登录。在Linux中ssh远程连接是操作Linux系统的主要手段,一般使用密码进行远程登录是非常的不安全,密码设置太短容易被攻破,密码设置太长又容易忘记。为了解决这个问题,我们可以使用密钥进行登录。
首先了解下使用密钥进行登录的好处。使用密钥登录,可以不用记忆繁琐的密码,很便捷的进行登录,并且十分的安全。
密钥登录使用的是非对称加密算法,我们再来了解一下对称和非对称加密算法。
对称加密算法就是加密和解密使用同一个密码。比如a给b发送一条消息,他们约定好将消息内容进行“逆序”加密。a发送的消息是“love”,进行加密后变成了“evol”,b收到的消息为“evol”,然后进行按照约定的方法解密,还原消息内容。这就是一个简单的对称加密。
什么是非对称加密呢,比如我要跟你发一条消息,我必须要有你的公钥,我使用公钥把消息内容进行加密,你必须使用私钥进行解密。如果说消息被别人拦截了,别人没有你的私钥就无法对消息进行解密。公钥,顾名思义,就是给大家使用的,而私钥只能是自己使用。可以这样理解,公钥是锁,而私钥是开锁钥匙。
那么讲了这么多,具体该怎么配置呢,首先生成密钥对
使用命令ssh-keygen
然后ssh-copy-id -i host (host是主机名)
然后输入密码
测试 ssh user@host
测试成功后关闭密码远程登录
vim /etc/ssh/sshd_config
PasswordAuthentication no
后面的yes改成no
最后重启sshd服务 systemctl restart sshd
测试使用密码登录
登录失败,测试通过
ssh禁止密码远程登录及公私钥非对称加密
最新推荐文章于 2023-11-17 10:16:32 发布