云服务器怎么登录:Linux SSH 与 Windows 远程桌面详细方法
Linux 云服务器用 SSH 登录:在终端输入 ssh root@公网IP 后输入密码或使用密钥;Windows 云服务器用远程桌面:运行 mstsc,输入公网 IP 和 Administrator 的密码。登不上时按“安全组 → 密码 → 端口 → 系统防火墙 → VNC 控制台”的顺序排查。
云服务器怎么登录,取决于装的是什么系统:Linux 用 SSH,Windows 用远程桌面(RDP)。前者在终端里输入 ssh root@公网IP,后者在 Windows 里运行 mstsc 输入公网 IP。不管哪种,你需要四样东西:服务器的公网 IP、登录端口(默认 Linux 22、Windows 3389)、账号(root、ubuntu 或 Administrator 等)、密码或密钥。香港、美国等海外服务器的登录方法完全一样,只是延迟更高。
登录前先确认四件事
- 公网 IP:在云厂商控制台的实例详情里看“公网 IP”或“弹性 IP”。内网 IP(10.x、172.16–31.x、192.168.x 开头)在你自己的电脑上是连不通的。
- 默认账号:CentOS、AlmaLinux、Rocky、Debian 镜像多为 root;Ubuntu 镜像常见为 ubuntu;Windows 为 Administrator。部分厂商统一使用自定义用户名,以控制台说明为准。
- 密码或密钥:创建实例时若绑定了密钥对,多数厂商会默认关闭 Linux 的密码登录,只能用密钥;若忘了密码,在控制台“重置密码”后重启生效。
- 安全组放行:安全组(或防火墙规则)的入方向必须允许 22 或 3389 端口,来源尽量只填你的公网 IP,而不是 0.0.0.0/0。
Linux 云服务器:SSH 登录
用密码登录
Windows 10、11 已经内置 OpenSSH 客户端,打开 PowerShell 或 Windows Terminal;macOS 和 Linux 打开“终端”,输入:
ssh root@203.0.113.10
第一次连接会提示是否信任服务器指纹,输入 yes;接着输入密码,输入时屏幕不会显示任何字符,输完直接回车。端口不是 22 时用 -p 指定:
ssh -p 2222 root@203.0.113.10
用密钥登录
密钥比密码安全得多,也不用每次输入。创建实例时下载的私钥(.pem 文件)要先收紧权限,否则 SSH 会拒绝使用:
chmod 400 ~/Downloads/my-key.pem
ssh -i ~/Downloads/my-key.pem root@203.0.113.10
如果服务器现在是密码登录,想改成密钥登录,先在本机生成密钥对,再把公钥推到服务器上:
# 本机生成 ed25519 密钥对,一路回车即可
ssh-keygen -t ed25519
# 把公钥写入服务器的 ~/.ssh/authorized_keys(会要求输一次密码)
ssh-copy-id root@203.0.113.10
# 之后登录不再需要密码
ssh root@203.0.113.10
Windows 的 PowerShell 没有 ssh-copy-id,可以把 ~/.ssh/id_ed25519.pub 的内容手动追加到服务器 ~/.ssh/authorized_keys 文件末尾。
服务器多了以后,在本机 ~/.ssh/config 里给每台起个别名,以后只需 ssh hk1:
Host hk1
HostName 203.0.113.10
User root
Port 22
IdentityFile ~/.ssh/id_ed25519
ServerAliveInterval 30
常用 SSH 客户端
| 客户端 | 平台 | 特点 |
|---|---|---|
| OpenSSH(终端自带) | Windows / macOS / Linux | 无需安装,脚本化方便 |
| PuTTY | Windows | 轻量,私钥需用 PuTTYgen 转成 .ppk |
| Xshell、MobaXterm、FinalShell | Windows 为主 | 图形化会话管理,带 SFTP 文件传输 |
| Termius | 全平台含手机 | 会话跨设备同步 |
传文件用 scp 或 SFTP,与 SSH 走同一个端口,不需要额外放行:
scp -P 22 ./backup.tar.gz root@203.0.113.10:/root/
Windows 云服务器:远程桌面登录
用 mstsc 连接
- 按
Win + R,输入mstsc回车,打开“远程桌面连接”; - 在“计算机”栏输入公网 IP,端口不是 3389 时写成
203.0.113.10:3390; - 点“连接”,输入用户名
Administrator和密码; - 首次连接会提示证书无法验证,选“是”继续。
也可以直接用命令行打开:
mstsc /v:203.0.113.10:3389
macOS 用微软官方的 Windows App(旧名 Microsoft Remote Desktop);Linux 用 Remmina 或 FreeRDP:
xfreerdp /v:203.0.113.10 /u:Administrator /p:'你的密码' /size:1600x900
传文件与体验设置
在 mstsc 的“本地资源”选项卡里点“详细信息”,勾选“驱动器”下的本地磁盘,连上后在服务器的“此电脑”里就能看到你的硬盘,直接复制文件。远程桌面对带宽敏感,服务器带宽只有 1–2M 或延迟高时,在“体验”选项卡里把连接速度调低、关闭桌面背景和字体平滑,操作会流畅很多。
香港、美国等海外服务器登录有什么不同
方法完全一样,差别在网络:
- 延迟高:从国内访问,到香港大致几十毫秒,到美国西海岸一百多毫秒,到欧洲两百毫秒上下,随线路和运营商变化。SSH 里敲字有轻微延迟是正常的,RDP 会更明显,按上文调低画质;
- 连接偶尔中断:跨境链路抖动时 SSH 会话可能断开,可以在
~/.ssh/config里加ServerAliveInterval 30保活,或用tmux让任务在断线后继续跑; - 默认用户与时区:部分海外厂商的镜像默认用户名与国内不同,系统时区多为 UTC,登录后按需要调整;
- 安全组默认规则:海外厂商的默认安全组各不相同,有的只放行 22,有的默认全部拒绝,创建实例后先检查一遍入方向规则再登录。
登不上怎么排查
按下面的顺序,每一步排除一类原因,通常在前四步就能解决:
| 顺序 | 检查项 | 怎么查 | 常见处理 |
|---|---|---|---|
| 1 | 端口是否通 | 本机执行 Test-NetConnection 203.0.113.10 -Port 22(PowerShell)或 nc -zv 203.0.113.10 22 |
不通看第 2、3 步;通了看第 4 步 |
| 2 | 安全组 / 云防火墙 | 控制台看入方向规则是否放行 22 或 3389,来源是否包含你当前的公网 IP | 添加规则;家庭宽带 IP 会变,改为 0.0.0.0/0 时务必用密钥或强密码 |
| 3 | 系统内防火墙 | 通过 VNC 控制台登录后执行 firewall-cmd --list-ports 或 ufw status,Windows 看“高级安全防火墙”的入站规则 |
放行端口 |
| 4 | 密码或密钥 | 提示 Permission denied、Access denied | 控制台重置密码后重启;密钥检查 chmod 400 与用户名是否正确 |
| 5 | 端口被改 | ss -tlnp 看 sshd 监听的端口;Windows 查注册表 RDP-Tcp 下的 PortNumber |
用实际端口连接 |
| 6 | 服务没起 | VNC 里执行 systemctl status sshd;Windows 检查“远程桌面”是否开启 |
systemctl restart sshd;开启远程桌面 |
| 7 | 被封禁 | 多次输错密码后被 fail2ban 之类工具封 IP,换个网络能连 | 在 VNC 里解封,或等封禁到期 |
| 8 | 系统卡死或没启动 | VNC 看到黑屏、内核报错或卡在启动 | 控制台强制重启;仍不行进救援模式 |
Permission denied 但密码肯定没错,多半是三种情况:用户名不对(Ubuntu 要用 ubuntu)、服务器禁用了 root 密码登录(/etc/ssh/sshd_config 里 PermitRootLogin 或 PasswordAuthentication 为 no)、或者密钥文件权限过宽。
VNC 控制台:网络不通时的兜底
主流云厂商的控制台和多数服务商的客户面板都提供 VNC(或叫“远程连接”“控制台”)入口。它不走服务器的公网网络和 SSH 服务,而是由虚拟化层或服务器的 BMC 直接输出画面,所以安全组封了、防火墙配错了、sshd 挂了、系统卡在启动界面,都能用它登进去修。
典型用法:在 VNC 里用 root 登录,改回防火墙规则或修好 sshd 配置,再用 SSH 正常登录。独立服务器的服务商通常在客户自助端提供 VNC 控制台、重置密码和救援模式,例如 Toplink DCIM 的客户自助端可以直接在浏览器里打开 VNC、SSH 或 RDP 控制台,系统进不去时启动救援系统抢修数据。
登录成功后先做的三件事
- 改掉默认密码,或改成密钥登录:
passwd修改密码;确认密钥能登录后,把/etc/ssh/sshd_config里的PasswordAuthentication改为no,执行systemctl reload sshd(Ubuntu 上服务名也可以写ssh); - 收紧安全组来源:22 和 3389 只对办公网或自己的 IP 开放;Windows 开启网络级别身份验证(NLA);
- 换掉默认端口(可选):改
Port后记得先在安全组和系统防火墙里放行新端口,再重启 sshd,避免把自己锁在外面。
常见问题
Ubuntu 云服务器为什么不能用 root 登录?
很多 Ubuntu 镜像默认禁用 root 的 SSH 密码登录,要用厂商给的普通用户(常见为 ubuntu)登录后再 sudo -i 切换。具体默认用户名在控制台的实例详情或镜像说明里。
远程桌面提示“要求的函数不受支持”怎么办?
这是客户端与服务器的 CredSSP 补丁级别不一致导致的。正确做法是给服务器打齐 Windows 更新;临时办法是在客户端运行 gpedit.msc,在“计算机配置 → 管理模板 → 系统 → 凭据分配”里把“加密 Oracle 修正”设为“易受攻击”后再连接,连上后立即更新服务器并把该策略改回“未配置”。
手机能登录云服务器吗?
可以。手机上安装 SSH 客户端(如 Termius、JuiceSSH)或微软的远程桌面 App,输入同样的 IP、端口和账号即可,适合临时重启服务或查看日志。