🔑 配置 SSH 密钥登录:安全便捷的服务器访问方式
详细介绍如何配置 SSH 密钥登录,提高服务器访问的安全性和便利性
🔑 配置 SSH 密钥登录:安全便捷的服务器访问方式
在服务器运维中,SSH 密钥登录是一种更安全、更便捷的访问方式。相比密码登录,它不仅安全性更高,而且可以实现免密码登录,大大提升了运维效率。本文将详细介绍如何配置 SSH 密钥登录。
🎯 配置目标
- 配置 SSH 密钥登录
- 提高服务器访问安全性
- 实现便捷的免密码登录
- 配置 SSH 登录别名
📋 配置步骤
1. 服务器端配置
首先,我们需要在服务器上进行一些基础配置:
1
2
3
4
5
6
7
8
9
10
11
12
# 创建 .ssh 目录(如果不存在)
mkdir -p ~/.ssh
# 创建 authorized_keys 文件
touch ~/.ssh/authorized_keys
# 设置正确的权限
chmod 700 ~/.ssh
chmod 600 ~/.ssh/authorized_keys
# 确保文件所有权正确
chown -R user:user ~/.ssh
2. 添加公钥
将你的公钥添加到服务器的 authorized_keys 文件中:
1
2
3
4
5
# 在本地查看公钥
cat ~/.ssh/id_rsa.pub
# 将公钥内容添加到服务器的 authorized_keys 文件
echo "你的公钥内容" >> ~/.ssh/authorized_keys
3. 修改 SSH 服务配置
编辑 SSH 服务器配置文件以启用密钥登录:
1
2
# 编辑 sshd 配置文件
sudo vi /etc/ssh/sshd_config
添加或修改以下配置:
1
2
3
4
5
6
7
8
# 启用公钥认证
PubkeyAuthentication yes
# 启用 authorized_keys 文件
AuthorizedKeysFile .ssh/authorized_keys
# 建议:禁用密码认证(可选)
PasswordAuthentication no
4. 重启 SSH 服务
1
2
# 重启 SSH 服务以应用新配置
sudo systemctl restart sshd
🚀 使用密钥登录
配置完成后,可以使用以下命令登录服务器:
1
2
# 使用密钥登录
ssh -i ~/.ssh/id_rsa user@server_ip
⚡️ 配置 SSH 别名
为了更方便地登录服务器,我们可以配置 SSH 别名。编辑 ~/.ssh/config
文件:
1
2
3
4
5
# 创建或编辑 SSH 配置文件
vi ~/.ssh/config
# 设置文件权限
chmod 600 ~/.ssh/config
添加以下配置:
1
2
3
4
5
Host server1
HostName server1.ip
User user
IdentityFile ~/.ssh/id_rsa
Port 22
配置完成后,可以直接使用别名登录:
1
ssh server1
📝 小贴士
- 始终保持私钥文件的安全,建议设置 600 权限
- 定期更新密钥对以提高安全性
- 可以为不同的服务器使用不同的密钥对
- 建议在启用密钥登录并确认可用后再禁用密码登录
- 记得备份你的密钥对,以防意外丢失
🔍 常见问题排查
如果遇到登录问题,请检查:
- 文件权限是否正确
1
ls -la ~/.ssh/
- SSH 服务状态
1
sudo systemctl status sshd
- SSH 服务器日志
1 2
sudo tail -f /var/log/auth.log # Ubuntu/Debian sudo tail -f /var/log/secure # CentOS/RHEL
通过以上配置,你就可以使用更安全、更便捷的 SSH 密钥方式登录服务器了。这不仅提高了服务器的安全性,也让日常运维工作更加高效。
本文由作者按照
CC BY 4.0
进行授权