跳转到内容
无痕工具库 无痕工具库

Hostinger VPS SSH 连接问题排查指南

排查 Hostinger VPS 上的 SSH 连接问题时,可以先检查 VPS 状态、登录凭据和防火墙配置,然后确认服务器 IP 地址,并在 SSH 客户端直连失败时通过 Hostinger 的网页控制台测试连接。本教程介绍了六种方法,帮助你识别并修复最常见的 SSH 连接失败原因,包括凭据错误、端口被屏蔽以及 DNS 记录过期等。

前提条件

在排查 SSH 连接问题之前,先来回顾一下所需条件。你需要具备以下内容:

  • 正常运行的 Hostinger VPS
  • SSH 客户端(PuTTY、macOS 终端、Linux shell 等)
  • Root 访问凭据(密码或 SSH 密钥)
  • VPS 的 IP 地址
  • 命令行界面(CLI)的基础知识

SSH 连接排查步骤

本视频演示了六种解决 Hostinger VPS 上 SSH 连接问题的方法。

观看视频

步骤 1 – 检查 VPS 状态

打开 Hostinger 的 VPS 控制面板,确认 VPS 状态为“Running(运行中)”。如有必要,请重启 VPS。

步骤 2 – 检查登录凭据

SSH 连接失败最常见的原因之一是使用了错误的登录凭据。SSH 要求用户名和密码(或密钥)都正确才能通过身份验证,即使是很小的失误也可能导致连接失败。

2.1. 确保用户名正确

对于 Hostinger VPS,通过 SSH 登录的默认用户名是 root,它拥有服务器的完整管理权限。

运行 SSH 命令时,请确保格式如下:ssh root@your_vps_ip

2.2. 确认密码正确

使用正确的密码至关重要,但从密码管理器或文档中复制粘贴密码时可能会出现问题。例如:

  • 空格问题:复制粘贴密码时可能会不小心带上多余的空格,导致登录失败。
  • 密码在终端中不显示:终端通常在你输入密码时不显示任何字符,看不到输入痕迹。这是正常现象,也是标准安全措施的一部分。即使你看不到任何输入内容,密码实际上已被输入。登录时请牢记这一点,尤其是在粘贴密码时。

建议:不要复制粘贴,而是尝试在终端中手动输入密码。这有助于确保没有多余的空格或格式问题干扰登录。

2.3. 必要时重置 SSH 密码或 SSH 配置

如果你不确定密码,或者密码已被更改或遗忘,可以通过 Hostinger 控制面板轻松重置。

2.4. 此外,你还可以轻松地将 SSH 配置重置为初始状态。

这会重置对 /etc/ssh/sshd_config 文件所做的所有更改,并将其替换为默认配置文件。

步骤 3 – 通过网页控制台测试 SSH 连接

Hostinger 提供网页控制台,让你无需外部 SSH 客户端即可直接从 Hostinger 控制面板访问 VPS。如果你的本地 SSH 客户端有问题,或者想快速访问服务器,这是一个非常方便的选择。

在 VPS 控制面板中打开网页控制台:

步骤 4 – 确认 IP 地址和域名配置

当你重新安装 VPS 或更改数据中心位置(例如改为 FR 或 LT)时,服务器的 IP 地址会发生变化。这可能导致你无法通过 SSH 连接,或者域名无法访问(如果域名仍指向旧 IP 地址)。

将 VPS 迁移到其他数据中心意味着服务器实际托管在新的物理位置,通常会分配新的 IP 地址。

如有必要,请更新 DNS 记录,确保域名指向新的 IP。

如果你的 DNS 记录之前指向旧的 IP 地址,那么在 IP 更改后将无法正确解析。要解决此问题,你必须更新 DNS 记录以反映新的 IP。

步骤 5 – 检查防火墙配置

SSH 连接问题的常见原因是防火墙或网络配置阻止了对端口 22(SSH 使用的默认端口)的访问。这种情况可能发生在你的 VPS、本地计算机甚至你的网络上。以下是确保一切配置正确的方法。

5.1. 确保 VPS 防火墙设置中端口 22 已开放

你的 VPS 可能启用了防火墙,这可能会阻止端口 22 上的 SSH 连接。你需要确认防火墙允许通过该端口的流量。

  1. 使用 Hostinger 的网页控制台登录你的 VPS。

  2. 运行以下命令检查防火墙状态,查看端口 22 是否开放:

适用于 Ubuntu / Debian / CloudLinux / AlmaLinux / Rocky Linux / CentOS / Fedora Cloud:

sudo ufw status

如果防火墙处于活动状态,你会看到一个规则列表。检查是否有一行允许端口 22 上的流量(格式类似于 22/tcp ALLOW)。

适用于 Alpine Linux:

sudo iptables -L

检查 INPUT 链中是否存在允许端口 22 流量的条目。

适用于 Arch Linux / Kali Linux:

sudo firewall-cmd --list-all

检查端口 22 是否列在允许的服务或端口中。

  1. 如果端口 22 未开放,你可以运行以下命令将其打开:

适用于 Ubuntu / Debian / CloudLinux / AlmaLinux / Rocky Linux / CentOS / Fedora Cloud:

sudo ufw allow 22/tcp

适用于 Alpine Linux:

sudo iptables -A INPUT -p tcp --dport 22 -j ACCEPT

sudo /etc/init.d/iptables save

适用于 Arch Linux / Kali Linux / openSUSE:

sudo firewall-cmd --permanent --add-port=22/tcp

  1. 重新加载防火墙以应用更改:

适用于 Ubuntu / Debian / CloudLinux / AlmaLinux / Rocky Linux / CentOS / Fedora Cloud:

sudo ufw reload

Arch Linux / Kali Linux / Fedora Cloud / openSUSE:

sudo firewall-cmd --reload

完成后,你的 VPS 应该已允许通过端口 22 进行 SSH 连接,你可以再次尝试连接。

5.2. 检查网络层限制

如果你使用的是受限网络(例如公司网络或公共 Wi-Fi),网络管理员可能会阻止端口 22 上的 SSH 流量。如果可能,请尝试从其他网络连接,或联系网络管理员看是否可以启用 SSH 访问。

如果连接仍然失败,请仔细检查是否有第三方防火墙软件或路由器可能阻止了你的流量。

监控失败的登录尝试

密切关注可疑的登录尝试非常重要。lastb 命令可以让你监控服务器上失败的登录尝试,帮助你了解潜在的安全威胁。

运行以下命令查看失败登录尝试的列表:sudo lastb

定期检查此日志可以帮助你发现暴力破解攻击模式或未经授权的服务器访问尝试。你可以利用这些信息屏蔽恶意 IP 地址,或加强服务器的安全设置。

更多资源