用 SSH 登录 VPS

服务器的 IP 地址、SSH 端口和 root 密码都在客户区。SSH 端口不一定是 22,请以客户区显示的端口为准。

1. 找到登录信息

  1. 登录客户区(my.vps.taxi),打开你的服务器。
  2. 页面顶部的服务器卡片里有 IPv4 地址、SSH 端口和 root 密码。

SSH 端口不一定是 22。新开的服务器会分配随机的 SSH 端口,请以客户区显示的端口为准。

点显示可以查看初始密码(或最近一次重置的密码),只显示 7 天;之后页面不再显示,但服务器上的密码没有变。忘记密码可以在系统设置里用重置 root 密码,马上生成新的随机密码(服务器需要开机)。

2. 连接服务器

Windows 10 / 11

打开 PowerShell 或 Windows 终端,运行下面的命令。把 PORT 和 SERVER_IP 换成客户区里的 SSH 端口和 IPv4 地址。

ssh -p PORT root@SERVER_IP

用 PuTTY 的话:Host Name 填服务器的 IPv4 地址,Port 填 SSH 端口,连接类型选 SSH,用户名 root。

macOS / Linux

打开“终端”,运行同样的命令:

ssh -p PORT root@SERVER_IP

第一次连接

SSH 会询问是否信任服务器的主机密钥(“Are you sure you want to continue connecting?”),输入 yes。然后输入 root 密码:输入时屏幕上不显示任何字符,这是正常的。也可以直接粘贴(在 PowerShell 或 Windows 终端里点右键)。

3. 用 SSH 密钥登录(可选)

下单时或在客户区「重装系统」表单里填了 OpenSSH 公钥,新系统就只允许用这把钥匙 SSH 登录:SSH 密码登录关闭,root 密码只用于网页控制台。留空则照常用 root 密码登录。

在自己的电脑上生成一对密钥(PowerShell、macOS、Linux 都一样):

ssh-keygen -t ed25519

公钥在 ~/.ssh/id_ed25519.pub(Windows:C:\Users\你的用户名\.ssh\id_ed25519.pub),把文件内容粘贴到公钥框里。重装表单也可以在浏览器里直接生成一对密钥。之后这样连接:

ssh -i ~/.ssh/id_ed25519 -p PORT root@SERVER_IP

正在运行的服务器也可以自己把公钥加进 /root/.ssh/authorized_keys,这样密码登录保持不变。

4. 连不上怎么办

  • 核对客户区里的 IPv4 地址和 SSH 端口:端口不一定是 22。
  • 用客户区的网页控制台:网络不通或 SSH 进不去时也能在浏览器里用,用 root 和密码登录(服务器需要开机)。noVNC 显示服务器屏幕,xterm.js 是可以复制粘贴的文字终端。
  • 自己改过 SSH 端口的:客户区始终显示最初分配的端口,重装系统后也会恢复成这个端口。
  • 刚开通的服务器在中国大陆完全访问不到:请提交工单。工作人员确认地址从一开始就无法访问后,会免费换一个地址。
  • 原来能用、现在在中国大陆访问不到的地址:见《在客户区自助更换 IP》。

5. 修改 SSH 端口(可选)

可以用 root 自己修改,不需要我们操作。修改时保持当前 SSH 会话不要断开,另开一个窗口测试新端口。

  1. 编辑 /etc/ssh/sshd_config.d/04-vpstaxi-ssh-port.conf 里的 Port 一行。
  2. 系统里开了防火墙的,先放行新端口:
    # ufw(Ubuntu / Debian)
    ufw allow NEW_PORT/tcp
    # firewalld(AlmaLinux / Rocky Linux)
    firewall-cmd --permanent --add-port=NEW_PORT/tcp
    firewall-cmd --reload
  3. AlmaLinux / Rocky Linux 开着 SELinux(getenforce 显示 Enforcing)的:先允许 SSH 使用新端口:semanage port -a -t ssh_port_t -p tcp NEW_PORT(没有 semanage 就先 dnf install -y policycoreutils-python-utils)。
  4. 用 sshd -t 检查配置(没有输出就是正常),然后重启 SSH:
    # "systemctl is-active ssh.socket" 显示 active 的(Ubuntu 24.04 及以后)
    systemctl daemon-reload && systemctl restart ssh.socket
    # 其他 Ubuntu 和 Debian
    systemctl restart ssh
    # AlmaLinux / Rocky Linux
    systemctl restart sshd
  5. 在第二个窗口用新端口连接,成功后再关闭原来的会话。

新端口重启后仍然有效。客户区始终显示最初分配的端口,重装系统会恢复成这个端口。改错进不去了,可以用网页控制台登录改回来。