SSH是管理Linux VPS的主要方式,因此在服务器用于公共服务之前应进行安全设置。首先添加SSH密钥和sudo用户,然后尽可能减少基于密码的访问。
在测试第二种登录方法之前,不要锁定SSH。在进行更改时保持一个有效的SSH会话打开。
- 添加SSH密钥:如何向您的VPS添加SSH密钥。
- 创建sudo用户:如何在Linux VPS上创建sudo用户。
- 测试sudo用户是否可以使用SSH密钥登录。
- 编辑SSH配置:
sudo nano /etc/ssh/sshd_config
常见的加固选项有:
PermitRootLogin no PasswordAuthentication no PubkeyAuthentication yes

这些选项的更改
| 选项 | 效果 |
|---|---|
PermitRootLogin no | 阻止直接root登录。管理员以普通用户身份登录并使用sudo。 |
PasswordAuthentication no | 阻止密码SSH登录。用户必须使用SSH密钥。 |
PubkeyAuthentication yes | 允许SSH密钥认证。 |
重启SSH
在Ubuntu或Debian上,服务通常命名为ssh:
sudo systemctl restart ssh
在AlmaLinux、Rocky Linux、Oracle Linux和大多数CentOS风格的系统上,服务通常命名为sshd:
sudo systemctl restart sshd
在关闭旧会话之前进行测试
- 保持当前SSH会话打开。
- 打开第二个终端。
- 使用新用户和密钥连接。
- 运行
sudo whoami。 - 只有在新会话正常工作后才关闭旧会话。
如果您将自己锁在外面,请使用VPS控制台修复/etc/ssh/sshd_config。
