新VPS的安全措施(基于Debian 12)

对于一台暴露在公网上的 VPS,不做安全措施就像是“裸奔”,很容易遭到暴力破解攻击。我们需要在不破坏 Docker 网络的前提下,给系统加上几把锁。

修改 SSH 默认端口(最有效)

黑客的自动化脚本会扫描所有 IP 的 22 端口。换成一个五位数的端口可以挡掉 99% 的暴力攻击。

编辑配置文件:nano /etc/ssh/sshd_config,直接在终端(SSH 窗口)输入以下命令并回车即可:

sudo nano /etc/ssh/sshd_config

找到 #Port 22,去掉 # 并改为 Port 12345(换成 10000-65535 之间的任意数字)。

输入上述命令后,如果系统提示 Password,请输入你的 root 或用户密码(输入时屏幕不会显示字符)。

编辑内容:使用键盘的方向键移动光标,直接输入或删除文字进行修改。

保存退出

按下 Ctrl + O(写入文件)。

按下 Enter 键确认文件名。

按下 Ctrl + X 退出编辑器。

保存退出后重启

sudo systemctl restart ssh

在修改 sshd_config(尤其是修改端口或禁用密码登录)时,建议保持当前的 SSH 连接不要关闭,并同时开一个新的窗口测试是否能正常登录。如果配置错误导致无法登录,旧的连接可以帮你改回来,否则你可能需要通过 VPS 服务商的 Web 控制台(VNC)进行抢救。

启用防火墙并开放必要端口

如果你用了 Docker,防火墙配置需要特别小心,避免把 Docker 的流量墙掉。

# 安装 UFW
apt install ufw -y
 
# 默认禁止所有传入,允许所有传出
ufw default deny incoming
ufw default allow outgoing
 
# 必须放行的端口
ufw allow 80/tcp       # HTTP (Caddy 申请证书用)
ufw allow 443/tcp      # HTTPS (访问博客用)
ufw allow 12345/tcp    # 你的新 SSH 端口 (务必根据上一项修改!)
ufw allow 1080/udp     # Hysteria 2 主端口
ufw allow 20000:50000/udp # Hysteria 2 端口跳跃范围
 
# 启用防火墙
ufw enable

安装 Fail2Ban(自动禁封)
这个工具会自动监控登录日志,如果有人尝试密码错误超过 3 次,直接封锁对方 IP 24 小时。

sudo apt install fail2ban -y

# 使用 tee 写入配置文件(findtime 已包含在 EOF 块内)
sudo tee /etc/fail2ban/jail.local <<EOF
[sshd]
enabled = true
# 注意下面的端口
port = 12345
filter = sshd
logpath = /var/log/auth.log
maxretry = 3
findtime = 10m
bantime = 24h
EOF

# 重启服务使配置生效
sudo systemctl restart fail2ban

执行完代码后,使用以下命令检查 Fail2ban 是否成功监控了 SSH:

sudo fail2ban-client status sshd

如果输出显示 Status for the jail: sshd 且 Currently failed 有数值,说明配置成功。

确认日志文件存在(Debian 12+ 用户注意):
如果你的系统是最新的 Debian 12,可能没有默认的 auth.log。请运行:

ls /var/log/auth.log

如果提示文件不存在,请运行

sudo apt install rsyslog -y 

来生成该日志文件,否则 Fail2ban 无法读取登录记录。

万一你自己被封禁了怎么办?
如果你不小心输错 3 次密码导致自己的 IP 被封禁,可以从另一台设备登录或通过服务商的 VNC 控制台执行:sudo fail2ban-client set sshd unbanip <你的IP地址>
例如:

sudo fail2ban-client set sshd unbanip 151.247.129.48

或解封所有被封禁的 IP

sudo fail2ban-client unban --all

查看当前有哪些 IP 被封禁了:

sudo fail2ban-client status sshd

注意: 如果你执行解封命令时提示 IP 151.247.129.48 is not banned,说明该 IP 目前并没有在封禁名单中。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

f518126

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值