怎么用SSH连接服务器?从命令到排错的完整操作

SSH 是远程登录 Linux 服务器最常用的方式。
只要服务器开启了 SSH 服务、网络可达、账号密码或密钥正确,在本地终端执行一条 ssh 命令就能连上。
下面按实际操作顺序说明命令写法、密钥配置和常见连不上的排查方法。

连接前先确认三件事

SSH 连接失败多半是前提条件没满足,动手前先核对:

  • 服务器 IP 和 SSH 端口:云服务器控制台一般能看到公网 IP,SSH 默认端口是 22,部分服务商或管理员会改成其他端口。
  • 登录账号:常见的是 root,也可能是创建实例时设置的其他用户。密码或密钥要提前准备好。
  • 网络放行:云服务器安全组或本机防火墙需要允许 TCP 22 端口(或自定义 SSH 端口)入站。

如果是刚买的云服务器,先在控制台确认实例处于运行中,并检查安全组规则是否放行了 SSH 端口。

用密码连接服务器

Windows 10/11、macOS 和 Linux 都自带 OpenSSH 客户端,直接在终端里执行:

ssh 用户名@服务器IP

例如:

ssh root@203.0.113.10

如果 SSH 端口不是 22,用 -p 指定:

ssh -p 2222 root@203.0.113.10

首次连接会出现类似 The authenticity of host ... can't be established 的提示,
输入 yes 回车,
再输入密码即可登录。密码输入时屏幕不会显示任何字符,
这是正常现象,
输完直接回车。

登录成功后,命令行提示符通常会变成 root@主机名:~# 这样的格式,说明已经进入服务器。

配置密钥登录,免密码更安全

密码登录容易遭遇暴力破解,生产服务器建议改用密钥认证。

在本地电脑生成密钥对(如果已有 ~/.ssh/id_ed25519 可跳过):

ssh-keygen -t ed25519 -C "your_email@example.com"

一路回车,会在 ~/.ssh/ 下生成私钥 id_ed25519 和公钥 id_ed25519.pub。
私钥留在本地,不要发给任何人。

把公钥上传到服务器:

ssh-copy-id -i ~/.ssh/id_ed25519.pub root@203.0.113.10

如果本机没有 ssh-copy-id(比如部分 Windows 环境),可以手动把公钥内容追加到服务器的 ~/.ssh/authorized_keys 文件里。
之后再次执行 ssh root@203.0.113.10,应该不再提示输入密码。

确认密钥登录正常后,
再考虑在服务器 /etc/ssh/sshd_config 中关闭密码登录(PasswordAuthentication no),
修改后重启 SSH 服务生效。改配置前务必保持一个已登录的 SSH 会话不要关,
防止配置错误把自己锁在外面。

常见连接失败怎么排查

遇到报错不要反复重试,按下面顺序定位:

  • Connection refused:通常是 SSH 服务没启动,或端口写错。登录云控制台 VNC 进入服务器,执行 systemctl status sshd(CentOS/RHEL 为 sshd,Ubuntu/Debian 为 ssh)查看服务状态,并用 ss -tlnp | grep ssh 确认监听端口。
  • Connection timed out:网络不通或防火墙拦截。先 ping 服务器IP 看是否可达,再检查云安全组和服务器防火墙(如 firewall-cmd --list-ports 或 ufw status)是否放行 SSH 端口。
  • Permission denied (publickey,password):账号或认证方式不对。确认用户名拼写、密码正确;用密钥登录时检查私钥权限,Linux/macOS 下执行 chmod 600 ~/.ssh/id_ed25519。
  • Host key verification failed:服务器重装或 IP 复用导致本地记录的指纹不一致。确认服务器身份可信后,删除本地 ~/.ssh/known_hosts 中对应条目再重连。

连接成功后的验证动作

登录后执行 whoami 和 hostname 确认当前用户和主机,执行 ip addr 或 ip a 查看网卡地址是否与目标服务器一致。
能正常执行命令、看到预期的目录和文件,才说明 SSH 连接真正可用,而不只是敲对了密码。

日常运维中,把常用服务器写进本地 ~/.ssh/config 可以简化命令:

Host myserver
    HostName 203.0.113.10
    User root
    Port 22
    IdentityFile ~/.ssh/id_ed25519

之后直接 ssh myserver 就能连接。

几个容易踩的坑

  • 把私钥上传到服务器或发给别人,等于把登录权限交出去。
  • 修改 SSH 端口后忘记同步云安全组规则,导致连不上。
  • 关闭密码登录前没有验证密钥登录可用,结果被锁在服务器外。
  • 在服务器上直接改 sshd_config 后没测试配置就重启,建议先执行 sshd -t 检查语法。

SSH 连接本身不复杂,关键是先确认网络和端口可达,再处理认证问题。
第一次连接成功后,建议顺手配置好密钥登录,后续远程管理会更省事也更安全。

分享到:
上一篇
Windows服务器和Linux服务器怎么选,看软件环境和运维习惯
下一篇
服务器忘记密码怎么重置?Linux 常用三种方法
1
系统公告

关于香港云优质服务器IP地址更换的通知

尊敬的客户: 因原IP运营商大幅涨价,为避免成本转嫁至用户,我司决定更换IP服务商。本次更换后,您的续费价格将保持不变,且新IP网络质量与服务标准不受影响。新IP已分配至后台,即刻生效(更换的新IP都是香港原生IPv4)。 涉及 IP 段: 45.192.x.x 旧 IP 停用时间: 2026 年 12 月 1 日
服务中心
客服
在线客服
24小时为您服务
咨询
联系我们
联系我们,为您的业务提供专属服务。
24/7 技术支持
如果您遇到寻求进一步的帮助,请过工单与我们进行联系。
24/7 即时支持
泽御云
售前客服
泽御云
泽御云
售后客服
泽御云
技术支持
评价
您对当前页面的整体感受是否满意?
😞
非常不满意
😕
不满意
😐
一般
🙂
满意
😊
非常满意