Linux公钥配置时,哪些常见错误可能导致认证失败?
- 虚拟主机
- 2025-11-11
- 2934
Linux公钥配置指南
Linux系统中的公钥认证是一种安全认证方式,通过使用公钥和私钥对用户进行身份验证,本文将详细介绍Linux系统中公钥配置的过程,包括生成密钥对、配置SSH客户端和服务器以及使用公钥登录。
生成密钥对
打开终端
打开Linux系统的终端。
生成公钥和私钥
使用ssh-keygen命令生成公钥和私钥,以下是一个示例命令:
ssh-keygen -t rsa -b 2048
- -t rsa 表示生成RSA类型的密钥对。
- -b 2048 表示密钥长度为2048位。
设置密码
在生成密钥对的过程中,系统会提示输入密码,这个密码用于保护私钥,防止未经授权的访问,输入密码后,系统会提示再次输入以确认。
查看生成的密钥

使用以下命令查看生成的公钥和私钥:
ls ~/.ssh
配置SSH客户端
将公钥添加到授权文件
将生成的公钥添加到客户端的~/.ssh/authorized_keys文件中,可以使用以下命令:
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
配置SSH客户端配置文件
编辑~/.ssh/config文件,配置SSH客户端的行为,以下是一个示例配置:

- Host:定义一个主机别名。
- HostName:定义主机的域名或IP地址。
- User:定义登录主机的用户名。
- IdentityFile:指定私钥文件的路径。
配置SSH服务器
修改SSH服务器配置文件
编辑/etc/ssh/sshd_config文件,修改以下配置:
# 允许公钥认证 PubkeyAuthentication yes # 允许密码认证 PasswordAuthentication yes
重启SSH服务
重启SSH服务以使配置生效:
systemctl restart sshd
使用公钥登录
使用SSH客户端连接到服务器

使用以下命令连接到服务器:
ssh myserver
登录提示
如果一切配置正确,系统会提示输入私钥的密码,输入密码后,即可成功登录服务器。
FAQs
问题:如何查看公钥和私钥的指纹?
解答:使用以下命令查看公钥和私钥的指纹:
ssh-keygen -l -f ~/.ssh/id_rsa.pub ssh-keygen -l -f ~/.ssh/id_rsa
问题:如何将公钥复制到其他服务器?
解答:将公钥的内容复制到其他服务器的~/.ssh/authorized_keys文件中,并确保文件权限正确,可以使用以下命令:
cat ~/.ssh/id_rsa.pub | ssh myuser@otherserver 'cat >> ~/.ssh/authorized_keys'