最新下载
热门教程
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
Ubuntu系统下配置SSH免密登录的方法
时间:2026-06-02 14:00:02 编辑:袖梨 来源:一聚教程网
掌握Ubuntu SSH自动登录技巧,可大幅提升远程连接效率。本文将详细介绍密钥配置流程与安全优化方案。

一 目标与准备
- 目标:实现客户端连接远程Ubuntu服务器时免输密码(建议同步禁用密码登录增强安全性)。
- 准备事项:
- 本地设备需安装OpenSSH客户端(多数系统已预装):执行sudo apt install openssh-client。
- 远程服务器需安装并运行OpenSSH服务:通过sudo apt install openssh-server安装,使用sudo systemctl status ssh检查服务状态。
- 需持有远程服务器的有效登录凭证(包含用户名及主机地址/IP)。
二 使用SSH密钥实现免密登录(推荐)
- 生成密钥对(本地执行):推荐使用ssh-keygen -t ed25519 -C "[email protected]"命令,如需兼容旧系统可改用-t rsa -b 4096参数。
- 上传公钥至服务器:通过ssh-copy-id user@remote_host完成传输。
- 首次连接需验证主机指纹,后续即可实现无密码登录。
- 可选配置:优化本地SSH客户端连接方式(编辑~/.ssh/config文件)
- 创建或修改配置文件:nano ~/.ssh/config
- 配置示例:
- Host myserver
- HostName remote.example.com
- User ubuntu
- IdentityFile ~/.ssh/id_ed25519
- Host myserver
- 配置完成后可直接使用ssh myserver快捷命令。
- 补充说明:图形化客户端(如SecureCRT、PuTTY)只需选择对应私钥即可实现自动登录功能。
三 服务器端安全与可选优化
- 安全加固建议:
- 修改配置文件:sudo nano /etc/ssh/sshd_config
- 关键参数设置:确保PubkeyAuthentication设为yes
- 可选配置:PasswordAuthentication no(禁用密码前需确认密钥登录有效)
- 可选配置:PermitRootLogin prohibit-password(限制root仅能通过密钥登录)
- 应用配置:sudo systemctl restart ssh
- 连接速度优化:
- 在/etc/ssh/sshd_config中禁用GSSAPI:
- GSSAPIAuthentication no
- GSSAPIDelegateCredentials no
- 重启服务生效:sudo systemctl restart ssh
- 在/etc/ssh/sshd_config中禁用GSSAPI:
四 常见问题排查
- 公钥认证失败处理:
- 服务器端权限检查:
- chmod 700 ~/.ssh
- chmod 600 ~/.ssh/authorized_keys
- chown -R $USER:$USER ~/.ssh
- 服务器端权限检查:
- 配置密钥仍需输入密码:
- 检查客户端是否指定正确私钥(ssh -i ~/.ssh/id_ed25519 user@host)。
- 确认服务器sshd_config中PubkeyAuthentication为yes,并按需设置PasswordAuthentication;修改后重启ssh服务。
- 连接异常处理:
- 检查远程sshd服务状态:sudo systemctl status ssh
- 若出现卡顿,建议关闭GSSAPI相关选项。
五 安全提醒
- 强烈建议禁止root账户密码登录;如必须启用,应设置复杂密码并限制访问IP。
- 禁用密码认证前,务必通过其他会话验证密钥登录可用性。
- 私钥文件权限应设为600,避免在不安全环境使用无密码保护的私钥。
通过本文介绍的SSH密钥认证方案,既能实现便捷登录又可保障系统安全,是管理远程服务器的理想选择。
相关文章
- 我的世界末影箱使用指南 06-02
- xAI去年亏64亿美元,SpaceX文件揭示Grok扩张不止 06-02
- 我的世界如何驯服马匹成为坐骑 06-02
- 洛克王国流火禁地的位置在哪里 06-02
- 英伟达第一财季净利润583亿美元同比增211% 06-02
- 5g消息详细介绍 06-02