Linux安全之SSH 密钥创建及密钥登录,禁止密码登陆


//参考原文链接 他们有图哦
https://blog.csdn.net/nahancy/article/details/79059135
http://www.runoob.com/w3cnote/set-ssh-login-key.html


首先进入Linux系统的用户目录下的.ssh目录下,root用户是/root/.ssh,普通用户是/home/您的用户名/.ssh,我们以root用户为例:

cd /root/.ssh

执行ssh-keygen命令创建密钥对,

ssh-keygen -t rsa -b 4096

执行密钥生成命令,基本上是一路回车既可以了,但是需要注意的是:执行命令的过程中是会提示呢输入密钥的密码的(如下图中红色箭头处,输入两次相同的,即是又一次确认密码),不需要密码直接回车就行。

密钥生成后会在当前目录下多出两个文件,id_rsa和id_rsa.pub,其中id_rsa是私钥(敲黑板:这个很重要,不能外泄),id_rsa.pub这个是公钥


执行ls看看目录下是否有authorized_keys文件,没有的话则执行以下命令创建:

touch authorized_keys

有就不用管

执行成功会创建空authorized_keys文件,授予600权限(注意:此处权限必须是600):

chmod 600 /root/.ssh/authorized_keys

如果已经有了authorized_keys文件,这直接执行以下的密钥追加工作。

将上面生成的公钥id_rsa.pub追加到authorized_keys文件中:

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

如此便完成了公钥的安装。为了确保连接成功,请保证以下文件权限正确

chmod 700 ~/.ssh

设置 SSH,打开密钥登录功能
编辑 /etc/ssh/sshd_config 文件,进行如下设置:

RSAAuthentication yes
PubkeyAuthentication yes

另外,请留意 root 用户能否通过 SSH 登录:

PermitRootLogin yes

当你完成全部设置,并以密钥方式登录成功后,再禁用密码登录:

PasswordAuthentication no

最后,重启 SSH 服务:

service sshd restart

猜你喜欢

转载自www.cnblogs.com/wmmznb/p/10417906.html