证书免密码登录主要2个角色:
客户端:登录发起的主机
服务器:登录的目标主机
基本配置步骤:
1、客户端生成证书的私钥和公钥
命令:
ssh-keygen -t rsa
生成文件一般在 ~/.ssh/ 目录中
id_rsa 私钥
id_rsa.pub 公钥
用户把 id_rsa.pub 交给服务器管理员就完成任务了
2、服务器修改sshd配置
vim /etc/ssh/sshd_config
确保以下配置信息
RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys
然后重启sshd
systemctl restart sshd
3、服务器切换到允许免密登录的账号,将用户发过来的id_rsa.pub内容追加到~/.ssh/authorized_keys 文件中
cat id_rsa.pub >> ~/.ssh/authorized_keys
远程工具打开编辑拷贝粘贴也行
4、一般来说,上面3步就完工了,但是还是有几个小坑要跳一下:
a.如果.ssh目录是你自己创建的,权限可能不对,需要修改
chmod 700 ~/.ssh
b.如果authorized_keys文件是你自己创建的,权限可能不对,需要修改
chmod 600 ~/.ssh/authorized_keys
c.小白注意,客户端做证书的账号与服务端配置允许登录的账号要对应
比如客户端有A和B两个账号,服务端有C、D、E、F账号。
A生成公钥,配置到F账号免密,那么A只能免密登录F,其它的登录组合如果不配置都是不可用的。
配置好后就可以用下面命令登录了:
ssh F@服务器地址
ssh -p 端口号 F@服务器地址
笔记:ssh证书登录基本配置
最新推荐文章于 2024-09-12 01:45:17 发布