50% off 所有套餐限时优惠,起价 $2.48/mo
Security

安全的 Linux VPS

By Parnian R. 7 min read Updated Feb 15, 2026

在数字时代,保护你的 Linux 虚拟专用服务器 (VPS)
对于保护你的数据和基础设施至关重要。本
综合指南探讨了保护你的 Linux VPS 的方法
cyber threats.

保持系统更新
Updated

保护你的 Linux VPS 的最重要方面之一是
确保系统保持最新状态。过时的软件可能
包含恶意行为者可以利用的漏洞。以下是操作方法:
do it:

使用包管理器

大多数 Linux 发行版都提供包管理器。例如,如果
你使用的是基于 Debian 的系统,可以运行以下命令
来更新和升级软件包:

sudo apt update
sudo apt upgrade

如果你使用的是 CentOS 系统,请使用 yum:

sudo yum update

Set Up Automatic
Updates

在 Debian 系统上设置 unattended-upgrades 自动更新:
基于 Debian 的系统

在 Debian 系统(如 Ubuntu)上,你可以使用
unattended-upgrades 软件包自动化更新过程。

  1. 安装 unattended-upgrades:
sudo apt install unattended-upgrades
  1. 配置自动更新设置。编辑配置文件
    file:
sudo nano /etc/apt/apt.conf.d/50unattended-upgrades
  1. 为安全相关的软件包启用自动更新:
Unattended-Upgrade::Allowed-Origins {
    "${distro_id}:${distro_codename}-security";
    "${distro_id}:${distro_codename}-updates";
    "${distro_id}:${distro_codename}-proposed";
    "${distro_id}:${distro_codename}-backports";
};
  1. 启用并启动 unattended-upgrades 服务:
sudo dpkg-reconfigure -plow unattended-upgrades

This command will prompt you to confirm the changes. Select “Yes” to
启用自动更新。

使用 yum-cron 设置自动更新
CentOS:

在 CentOS 上,你可以使用 yum-cron 来自动更新系统:

  1. 安装 yum-cron:
sudo yum install yum-cron
  1. 启动并启用 yum-cron 服务:
sudo systemctl enable yum-cron
sudo systemctl start yum-cron

Use
强密码和 SSH 密钥确保安全认证

保护您的 Linux VPS 需要使用强身份验证方法。
无论您是从 Linux 还是 Windows 客户端连接,以下是操作方法
有效使用强密码和 SSH 密钥:

Using Strong
Passwords

在 VPS 上创建用户账户时,请确保密码
复杂度高,包含大小写字母、数字和特殊符号
个字符。避免使用容易被猜到的密码。

使用 SSH 密钥
Authentication

针对 Linux 客户端:

  1. 要在 Linux 客户端上生成 SSH 密钥对,请使用 ssh-keygen
    command:
ssh-keygen -t rsa -b 2048

默认情况下,公钥将存储在 ~/.ssh/id_rsa.pub。

  1. 将你的公钥复制到 VPS:
ssh-copy-id user@your_server_ip
  1. 在 SSH 服务器上禁用 VPS 的基于密码的 SSH 登录
    配置文件 (/etc/ssh/sshd_config):
PasswordAuthentication no

适用于 Windows 客户端:

  1. 在 Windows 上,使用 PowerShell 可以实现类似的功能:
ssh-keygen
  1. 使用 PowerShell 将你的公钥复制到 VPS。替换
    IP-ADDRESS-OR-FQDN 与远程服务器的
    address:
type $env:USERPROFILE\.ssh\id_rsa.pub | ssh root@{IP-ADDRESS-OR-FQDN} "cat >> .ssh/authorized_keys"
  1. 在 SSH 服务器上禁用 VPS 的基于密码的 SSH 登录
    配置文件 (/etc/ssh/sshd_config):
PasswordAuthentication no

Implement a Firewall

保护您的 Linux VPS 需要设置防火墙来控制
入站和出站流量。以下是防火墙的实现方法
enhance security:

在 Debian/Ubuntu 上使用 ufw(简易防火墙),或
firewalld on CentOS:

  1. 安装防火墙管理工具(如果尚未安装)。

在 Debian/Ubuntu 上使用 ufw:

sudo apt install ufw

在 CentOS 上使用 firewalld:

sudo yum install firewalld
  1. 在启用防火墙前添加规则以允许 SSH,防止被锁定
    locked out:

在 Debian/Ubuntu 上使用 ufw:

sudo ufw allow OpenSSH

在 CentOS 上使用 firewalld:

sudo firewall-cmd --permanent --add-service=ssh
  1. 启用防火墙并设置默认规则:

在 Debian/Ubuntu 上使用 ufw:

sudo ufw enable
sudo ufw default deny incoming
sudo ufw default allow outgoing

在 CentOS 上使用 firewalld:

sudo systemctl start firewalld
sudo systemctl enable firewalld
  1. 重新加载防火墙以使更改生效。

在 Debian/Ubuntu 上使用 ufw:

sudo ufw reload

在 CentOS 上使用 firewalld:

sudo systemctl reload firewalld

禁用 Root 登录

保护您的 Linux VPS 需要限制 root 访问权限。以下是
禁用 root 登录以增强安全性的方法:

  1. 创建新用户:以 root 用户身份登录您的 VPS。然后创建
    一个具有 sudo 权限的新用户账户。将 newuser 替换为您的
    desired username:
adduser newuser
usermod -aG sudo newuser
  1. 创建 .ssh 目录、authorized_keys 并为
    新用户设置权限:
mkdir -p /home/newuser/.ssh
touch /home/newuser/.ssh/authorized_keys
chmod 600 /home/newuser/.ssh/authorized_keys
chown -R newuser:newuser /home/newuser/.ssh
  1. 确保生成公钥并将其复制到您的
    VPS.

  2. 以新用户身份登录。

  3. 从 VPS 断开连接(如果您以 root 身份连接),然后使用
    新用户账户重新登录。这样可以确保您能够使用 sudo 执行
    管理任务。

  4. 编辑 SSH 配置:

在您的 VPS 上打开 SSH 服务器配置文件。该文件通常
位于 /etc/ssh/sshd_config:

sudo nano /etc/ssh/sshd_config

找到 PermitRootLogin 行并将其设置为 no:

PermitRootLogin no

保存文件并退出文本编辑器。

  1. 重启 SSH 服务:

更改此设置后,需要重启 SSH 服务才能让
新设置生效:

On Debian/Ubuntu:

sudo systemctl restart ssh

On CentOS:

sudo systemctl restart sshd

Harden SSH
Configuration

保护 Linux VPS 需要进一步加固 SSH
配置以增强安全性,并确保 UFW 规则保持
最新状态。以下是加固 SSH 设置和更新 UFW
rules:

  1. 在 UFW 中允许新的 SSH 端口:

如果使用 UFW(简化防火墙),在更改默认端口前,
先在 UFW 中允许新的 SSH 端口:

# Allow the new SSH port (e.g., 2222)
sudo ufw allow 2222/tcp
  1. 从 UFW 规则中移除 OpenSSH:

更改 SSH 端口后,应从 UFW 规则中移除旧的 OpenSSH
服务(默认端口 22),以确保只允许新的
SSH 端口:

# Remove the old OpenSSH service (default port 22)
sudo ufw delete allow OpenSSH
  1. 更改 SSH 端口:

SSH 默认使用端口 22。更改默认端口可增加一层安全保护,
让自动扫描工具更难发现
你的 SSH 服务器。

打开 SSH 服务器配置文件:

sudo nano /etc/ssh/sshd_config

找到显示 Port 22 的行,将端口号改为
另一个未使用的端口,例如 2222:

Port 2222
  1. 启用密钥重新认证:

可以为密钥重新认证设置时间限制,进一步保护
你的 SSH 会话。这意味着如果你的 SSH 会话
长时间无操作,它将在指定时间后自动过期。

在 SSH 服务器配置文件中添加或修改以下行
然后保存:

ClientAliveInterval 300
ClientAliveCountMax 2
  1. 重新加载 UFW 规则和 SSH 服务:
sudo ufw reload
sudo systemctl restart ssh
  1. 完成必要的更改后,可以使用以下命令建立新的 SSH
    连接:
ssh -p <new_port> user@your_server_ip

Implement Fail2Ban

保护 Linux VPS 需要防御暴力破解登录
尝试和其他恶意活动。Fail2Ban 是一个有用的
工具。以下是实现方式:

  1. Install Fail2Ban:

首先更新软件包列表,确保获得最新版本
available packages:

对于基于 Debian 的系统(例如 Ubuntu):

sudo apt update

For CentOS:

sudo yum update

Install Fail2Ban:

对于基于 Debian 的系统:

sudo apt install fail2ban

For CentOS:

sudo yum install fail2ban
  1. Configure Fail2Ban:

Fail2Ban 的主配置文件位于
/etc/fail2ban/jail.conf。你可以创建一个覆盖配置
file at /etc/fail2ban/jail.local to customize settings
而无需修改默认配置。打开此文件:

sudo nano /etc/fail2ban/jail.local

添加以下配置,在六次失败登录尝试后禁止 IP 地址 10 分钟
(600 秒)。根据需要调整参数
needed:

[sshd]
enabled = true
maxretry = 6
findtime = 600
bantime = 600

保存文件并退出文本编辑器。

  1. 启动并启用 Fail2Ban:

启动 Fail2Ban 并将其设置为开机启动:

sudo systemctl start fail2ban
sudo systemctl enable fail2ban
  1. Check Fail2Ban Status:

你可以检查 Fail2Ban 的状态,确保其正常工作
expected:

sudo fail2ban-client status

你应该看到它正在监控 SSH 服务。

这里讨论的 6 种基本方法提供了强大的防护
抵御潜在漏洞。通过保持系统更新、
使用强身份验证、配置防火墙、强化 SSH,
以及部署 Fail2Ban,你能够强化 VPS 并获得心安
心态始终保持警觉。如有任何疑问,请随时
联系我们的支持团队 submitting a
ticket
.

Share

需要帮助?

中位响应时间不超过 1 小时。由真实客服处理,不是机器人。