Linux配置证书登录

该博客介绍了如何生成SSH证书文件,包括通过`ssh-keygen`命令创建ed25519类型的密钥对,设置备注和密码,以及保存私钥和公钥。然后,详细阐述了如何配置公钥到`~/.ssh/authorized_keys`文件中,确保正确权限,并调整`/etc/ssh/sshd_config`以启用密钥认证。最后,提醒在重启sshd服务后即可使用密钥登录,提高了服务器的安全性。
摘要由CSDN通过智能技术生成
  1. 生成证书文件
# ssh-keygen --help 查看帮助信息
# [-t dsa | ecdsa | ed25519 | rsa] 指定证书类型
# [-C comment] 用于识别的备注
ssh-keygen -t ed25519 -C user@email.com
Generating public/private ed25519 key pair.
# 保存的文件
Enter file in which to save the key (/root/.ssh/id_ed25519):./example
# 证书密码
Enter passphrase (empty for no passphrase):
# 证书密码
Enter same passphrase again:
Your identification has been saved in /root/.ssh/id_ed25519.
Your public key has been saved in /root/.ssh/id_ed25519.pub.
The key fingerprint is:
SHA256:2iorfNMvhA/vXxZPQifrqdKAANmQJfZbMIiGv9Wjp54 user@email.com
...

默认在/root/.ssh/目录下生成文件id_ed25519。ed25519是一种椭圆曲线密码。以上命令执行后,在指定的保存文件位置就能找到证书 假设文件名为 example ,其中 example 就是私钥,需要妥善保管,example.pub 就是公钥,放置于服务器上

  1. 配置公钥
# 如果您的用户 SSH 目录不存在,请使用 mkdir 命令创建它并设置正确的权限
mkdir -p ~/.ssh
chmod 0700 ~/.ssh
# 使用文本编辑器打开 ~/.ssh/authorized_keys 文件,并追加公钥
# 命令行追加
cat ./example.pub >> ~/.ssh/authorized_keys
# 手动编辑追加
vi ~/.ssh/authorized_keys
# 修改文件权限使只有本用户组能访问
chmod 0600 ~/.ssh/authorized_keys
chown -R your_user:your_group ~/.ssh 

  1. 配置 SSH
# 文本编辑器打开 /etc/ssh/sshd_config 文件
vi /etc/ssh/sshd_config

# 检查以下行
# 开启证书登录(默认为yes,确保其不是被取消注释的no)
PubkeyAuthentication
# 授权秘钥文件位置(如果被取消注释,确保其指向你的authorized_keys)
AuthorizedKeysFile
# 密码验证登录(默认为yes,证书登录部署完成可以手动关闭以提高安全性)
PasswordAuthentication no

# 同时可选择配置以下行
# 监听端口
Port
# 监听地址
ListenAddress
# 允许root认证登录
PermitRootLogin

保存完成后,不要立刻断开连接,这样还有一丝立刻还原的机会。

# 客户端配置好证书登录后准备连接
# 重启 sshd
systemctl restart sshd
# 重启后就可以用秘钥登录了
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值