Linux证书访问

工作需要用到多台Linux的机器,每次访问都需要输入密码。

使用证书登录,可以达到免密的效果。

配置步骤如下:

跳板机(操作的机子):

为当前用户生成ssh公钥。如果当前非目标用户请切换到目标用户(su 用户名)

ssh-keygen -t rsa

连续敲3次回车即可,生成跳板机的公钥和私钥。默认生成的文件在 ~/.ssh 中

 

拷贝公钥到目标机器上:访问用户可能无法用密码登录,所以这里还写了一个登录用户(root)

scp .ssh/id_rsa.pub 登录用户名@目标机IP:/home/访问用户名/.ssh/

之后需要输入登录用户名对应的密码

 

目标机:

将跳板机的公钥文件改名为authorized_keys

mv /home/访问用户名/.ssh/id_rsa.pub /home/访问用户名/.ssh/authorized_keys

 

配置sshd_config

vi /etc/ssh/sshd_config

开启证书登录:

找到如下几个字段,如果前面有#则去掉#,没有该字段就新增

(vi搜索:命令行输入/关键字,回车。按n跳转到下一个)

RSAAuthentication yes

PubkeyAuthentication yes

AuthorizedKeysFile .ssh/authorized_keys

关闭密码登录(可选):

PasswordAuthentication no

 

配置完成后保存并退出,重启sshd服务

systemctl restart sshd

 

跳板机:

然后使用跳板机尝试ssh登录目标机

ssh 访问用户名@目标机IP

不需要密码登录上去即为正常。(按ctrl+D退出登录)

 

你可能感兴趣的:(Linux)