CentOS下SSH连接失败怎么办?

基础连接方法

安装SSH客户端

CentOS通常预装OpenSSH客户端,若未安装则执行:

sudo yum install openssh-clients  # CentOS 7
sudo dnf install openssh-clients  # CentOS 8+

基本连接命令

ssh username@server_ip
  • 参数说明
    • username:远程服务器的用户账号(如 root 或自定义用户)
    • server_ip:服务器IP地址或域名(如 168.1.100example.com

示例

ssh admin@203.0.113.5

首次连接会提示确认主机指纹,输入 yes 后继续,再输入对应用户密码即可登录。


高级连接配置

指定端口连接

若服务器SSH端口非默认22(如 2222):

ssh -p 2222 username@server_ip

密钥认证登录(推荐)

步骤

  1. 生成本地密钥对
    ssh-keygen -t rsa -b 4096  # 默认存储到 ~/.ssh/id_rsa
  2. 上传公钥到服务器
    ssh-copy-id -i ~/.ssh/id_rsa.pub username@server_ip

    输入密码后,公钥将自动追加到服务器的 ~/.ssh/authorized_keys

  3. 免密登录
    ssh username@server_ip  # 无需密码直接登录

常见问题解决

连接超时/拒绝连接

  • 检查网络ping server_ip
  • 确认服务状态
    ssh -v username@server_ip  # 启用详细日志
  • 服务器端排查
    • 防火墙是否放行端口:
      sudo firewall-cmd --list-ports  # 查看开放端口
      sudo firewall-cmd --add-port=22/tcp --permanent  # 开放22端口
      sudo firewall-cmd --reload
    • SSH服务是否运行:
      sudo systemctl status sshd  # 检查状态
      sudo systemctl start sshd   # 启动服务

密钥登录失败

  • 权限配置
    确保服务器上以下文件权限正确:

    chmod 700 ~/.ssh
    chmod 600 ~/.ssh/authorized_keys
  • 关闭密码登录(增强安全)
    编辑服务器 /etc/ssh/sshd_config

    PasswordAuthentication no  # 禁用密码登录
    PubkeyAuthentication yes   # 启用密钥登录

    重启服务:sudo systemctl restart sshd


安全最佳实践

  1. 禁用root登录
    修改服务器 /etc/ssh/sshd_config

    PermitRootLogin no
  2. 修改默认端口
    Port 22 改为其他端口(如 1022),减少暴力破解风险。
  3. 使用强密码
    若需密码登录,确保密码长度>12位,含大小写字母、数字及符号。
  4. 定期更新
    sudo yum update openssh*  # CentOS 7
    sudo dnf upgrade openssh  # CentOS 8+

常用命令总结

命令 作用
ssh user@host 基础连接
ssh -p port user@host 指定端口连接
ssh -i ~/.ssh/custom_key user@host 使用自定义密钥
scp -P port file user@host:/path 安全传输文件

通过以上步骤,您可高效安全地管理远程服务器,建议优先使用密钥认证,并定期审计服务器日志(/var/log/secure)以监控异常登录。

引用说明基于OpenSSH 8.0官方文档、CentOS系统手册及Linux安全最佳实践编写,所有命令均在CentOS 7/8真实环境测试通过,技术细节参考Red Hat Enterprise Linux (RHEL) 官方安全指南。

原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/6590.html

(0)
酷番叔酷番叔
上一篇 2025年7月7日 14:53
下一篇 2025年7月7日 15:03

相关推荐

  • 如何在ASP中动态添加控件?

    在ASP开发中,动态添加控件是一项常见且重要的技术,它能够根据用户交互、数据变化或其他业务逻辑动态生成页面元素,从而提升用户体验和页面灵活性,本文将详细介绍在ASP中添加控件的多种方法、注意事项及最佳实践,帮助开发者更好地掌握这一技能,ASP添加控件的基本方法在ASP(包括经典ASP和ASP.NET)中,添加控……

    2025年12月30日
    3400
  • 数据库不复制会怎样?

    数据库复制主要用于提高系统可用性(避免单点故障)、实现负载均衡(分担读请求压力)以及支持灾难恢复,它还能优化地理分布用户的访问速度。

    2025年7月8日
    11100
  • 如何用pyautogui自动填表?

    什么是宏命令?宏命令(Macro)是一组预定义的指令集合,通过单一触发操作(如按键、点击)自动执行复杂任务,它广泛应用于办公软件(如Excel/Word)、游戏操作、编程开发等场景,显著提升重复性工作的效率,如何设置宏命令?(分场景详解)办公软件宏设置(以Microsoft Office为例)启用开发者选项卡E……

    2025年6月14日
    8600
  • asp网站首页代码素材网,哪里找优质素材?

    在互联网技术发展的浪潮中,ASP(Active Server Pages)作为一种经典的动态网页开发技术,凭借其简单易学、功能强大等特点,在众多中小型网站建设中仍占据一席之地,对于初学者或需要快速搭建网站的开发者而言,获取优质的ASP网站首页代码素材至关重要,本文将围绕“ASP网站首页代码素材网”这一主题,从素……

    2025年12月21日
    4100
  • AutoCAD命令行窗口消失?如何快速调回底部

    要恢复AutoCAD命令行窗口位置:,1. **按 Ctrl + 9**:这是显示/隐藏命令行的快捷键,按一次即可调出。,2. **拖动定位**:鼠标按住命令行左侧的竖条或顶部横条,将其拖向屏幕底部边缘,当出现定位提示(通常是虚线框)时松开鼠标,即可将其固定回底部。

    2025年6月20日
    10400

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信