Tropic Host

如何通过 SSH 连接 Linux 服务器:Linux、macOS 和 Windows 命令

阅读约需 7 分钟
Tropic
如何通过 SSH 连接 Linux 服务器:Linux、macOS 和 Windows 命令

如何通过 SSH 连接 Linux 服务器

当您需要在终端进入 Linux 服务器、安装软件包、查看日志、重启服务或上传项目时,就需要使用 SSH。第一次连接不需要先学习大量理论:通常只要一条命令和正确的访问信息即可。

下面先介绍最快的连接方法,然后说明 Windows、Linux 和 macOS 的操作方式、常见错误以及基本安全规则。

快速通过 SSH 连接 Linux 服务器

如果您已经拥有服务器 IP 地址、用户名以及密码或密钥,就不需要进行复杂准备。大多数情况下,第一次登录只需要一条命令:

ssh username@server_ip

如果 SSH 服务器监听的不是标准端口,请使用 -p 添加端口:

ssh -p 2222 username@server_ip

如果服务器配置为使用密钥登录,请指定私钥路径:

ssh -i ~/.ssh/id_ed25519 username@server_ip

这样就足以快速进入服务器并开始工作。之后仍然值得了解连接所需的信息、不同操作系统之间的差异,以及如何提高访问安全性。

连接需要哪些信息

SSH,即 Secure Shell,是一种远程打开服务器命令行的安全方式。第一次连接通常需要:

  • 服务器的 IP 地址或域名;
  • 用户名,例如 rootubuntuadmin 或其他账户;
  • 密码或私有 SSH 密钥;
  • SSH 端口,如果使用的不是标准端口 22
  • 服务器本身已启用 SSH 访问。

成功登录后,您会进入远程 Linux 服务器的终端,可以像在本地一样执行命令。

如果服务器使用密钥

使用密钥登录时,服务器会检查您的私钥是否与已经添加到服务器上的公钥匹配。在这种情况下可能完全不需要密码。对于长期使用,密钥登录通常更安全、更方便。

通常的流程是:

  1. 在自己的计算机上创建密钥。
  2. 将公钥添加到服务器。
  3. 通过 ssh 连接,无需每次输入密码。

在 Linux 和 macOS 上,通常使用以下命令生成密钥:

ssh-keygen -t ed25519

从 Linux 和 macOS 连接

Linux 和 macOS 通常已经安装 SSH。打开终端并执行:

ssh username@server_ip

如果需要使用其他端口:

ssh -p 2222 username@server_ip

如果使用密钥连接,请执行:

ssh -i ~/.ssh/id_ed25519 username@server_ip

第一次登录后,建议立即确认自己进入的是目标服务器:

hostname
whoami

这是一个简单但很有用的习惯,尤其适合同时管理多个服务器和环境的情况。

从 Windows 连接

Windows 有两种实用方式:PowerShell 或 Windows Terminal 中内置的 OpenSSH,以及 PuTTY 等独立客户端。对于大多数任务,内置方式是最容易开始的选择。

打开 PowerShell 并执行:

ssh username@server_ip

如果端口不是标准端口:

ssh -p 2222 username@server_ip

如果使用密钥,请指定其路径:

ssh -i $env:USERPROFILE\.ssh\id_ed25519 username@server_ip

PuTTY 的逻辑相同:输入地址、端口和用户名;使用密钥认证时,在客户端设置中加载 .ppk 密钥。

如果 Windows 中 SSH 无法启动,应检查什么

有时系统尚未安装内置 SSH 客户端。这时可以在 Windows 设置中启用 OpenSSH Client 组件,或暂时使用 PuTTY。

连接时的常见错误

大多数问题不在命令本身,而在其中某个参数。

Connection refused

这通常表示服务器上的 SSH 服务没有运行,或者端口已关闭。请确认 sshd 正在工作,并且所需端口已在防火墙和服务器控制面板中开放。

Permission denied

通常是用户名、密码或密钥不正确。请检查:

  • 登录名是否正确;
  • 密钥路径是否正确;
  • 公钥是否存在于服务器上;
  • 密钥是否与服务器期待的密钥匹配。

Host key verification failed

此消息与 known_hosts 有关,它保存 SSH 已知的服务器列表。重新安装系统、更换 IP 地址或重新创建服务器后,可能会出现此错误。如果您确认连接的是正确的机器,可以删除旧记录:

ssh-keygen -R server_ip

然后重新连接并确认服务器的新密钥。

Could not resolve hostname

这表示 DNS 找不到主机名,或者地址中存在拼写错误。作为检查,可以尝试使用 IP 地址连接。

如何提高连接安全性

SSH 本身提供保护,但一些基本设置可以显著减少错误和日志中的无用噪声。

使用 SSH 密钥代替密码

对于日常工作,密钥认证通常更可靠、更方便。如果服务器已经配置好密钥登录,建议从一开始就使用它。

禁止以 root 登录

日常工作不需要直接以 root 登录。更安全的做法是使用普通用户连接,仅在确实需要时通过 sudo 提升权限。

将标准端口改为其他端口

可以将端口 22 更换为其他端口,例如 2222。这不会让服务器对攻击完全隐形,但会减少只扫描标准端口的随机扫描和机器人请求。

检查 known_hosts

当 SSH 警告服务器密钥发生变化时,不要忽略该消息。原因有时很正常,但也可能意味着冒充或中间人攻击。如果服务器确实重新安装或更换过,请先通过控制面板或管理员确认,再更新 known_hosts 中的记录。

这与服务器选择有什么关系

租用 VPS 或独立服务器后,SSH 会成为主要工作通道。您可以通过它安装软件包、更新系统、部署 Docker、查看日志并检查服务状态。如果访问稳定可预测,您就能把时间用于项目,而不是排查奇怪的登录问题。

因此选择主机服务商时,不要只比较 CPU、RAM 和磁盘。还应关注能否快速获得清晰的 SSH 访问信息、查看服务器参数并开始管理。对于这类需求,tropic.host 是快速启动 VPS、避免繁琐准备的实用选择。

简短结论

通过 SSH 连接 Linux 服务器通常很简单:需要地址、用户以及密码或密钥。Linux 和 macOS 只需终端;Windows 可以使用内置的 OpenSSH 或 PuTTY。如果连接失败,请先检查端口、登录名、密钥和 known_hosts,再检查服务器设置。长期使用时,应尽早改用 SSH 密钥、禁用 root 登录,并把非标准端口作为额外安全措施。

FAQ

第一次连接应使用什么 SSH 命令格式?

通常使用 ssh username@server_ip 即可。如果 SSH 运行在其他端口,请添加 -p

可以从 Windows 通过 SSH 连接 Linux 服务器吗?

可以。最简单的方法是使用 PowerShell 或 Windows Terminal 中内置的 ssh 命令,也可以使用 PuTTY。

SSH 要求确认新的服务器密钥时怎么办?

如果服务器确实重新安装过或 IP 地址发生变化,这是正常现象。如果不确定原因,请先确认连接的确实是目标机器。

为什么 SSH 密钥比密码更好?

密钥适合长期使用,通常也比密码更可靠。它能降低凭据被猜中的风险,并避免反复输入密码。

是否必须更改 SSH 端口?

不是必须的。不过,更改端口可以作为抵御大规模自动扫描的额外措施。