🗣 Wd提问: VPS配置软防
🤖 Ai回答: 在VPS(虚拟专用服务器)上配置“软防”通常指的是通过软件方式实现防火墙和安全防护功能,以增强服务器的安全性。这里的“软防”可以理解为使用软件防火墙(如 iptables、firewalld、ufw 等)以及一些安全工具来防止攻击(如DDoS、SSH暴力破解、端口扫描等)。
以下是针对主流 Linux 系统(如 Ubuntu/CentOS)在 VPS 上配置软防的详细步骤:
一、基础安全设置
1、更新系统
bash
Ubuntu/Debian
sudo apt update && sudo apt upgrade -y
CentOS/RHEL
sudo yum update -y
2、更改 SSH 默认端口 & 禁用 root 登录
编辑 SSH 配置文件:
bash
sudo nano /etc/ssh/sshd_config
修改以下内容:
conf
Port 2222 改为非标准端口(如 2222)
PermitRootLogin no 禁止 root 直接登录
PasswordAuthentication no 建议禁用密码,使用密钥登录
重启 SSH 服务:
bash
sudo systemctl restart sshd
⚠️ 修改前请确保已配置好密钥登录,避免被锁!
二、配置软件防火墙
方案1:使用 `ufw`(Ubuntu 推荐)
1、安装 ufw
bash
sudo apt install ufw -y
2、设置规则
bash
sudo ufw default deny incoming 默认拒绝所有入站
sudo ufw default allow outgoing 默认允许出站
sudo ufw allow 2222/tcp 允许新的 SSH 端口
sudo ufw allow 80/tcp HTTP
sudo ufw allow 443/tcp HTTPS
可选:限制 SSH 登录频率(防暴力破解)
sudo ufw limit 2222/tcp
3、启用防火墙
bash
sudo ufw enable
4、查看状态
bash
sudo ufw status verbose
方案2:使用 `firewalld`(CentOS/RHEL 推荐)
1、安装并启动
bash
sudo yum install firewalld -y
sudo systemctl enable firewalld
sudo systemctl start firewalld
2、添加服务/端口
bash
sudo firewall-cmd permanent add-port=2222/tcp
sudo firewall-cmd permanent add-service=http
sudo firewall-cmd permanent add-service=https
限制 SSH 访问频率(使用 rich rule)
sudo firewall-cmd permanent add-rich-rule='rule family=ipv4 port protocol=tcp port=2222 limit value=3/m burst=6 accept'
3、重新加载
bash
sudo firewall-cmd reload
4、查看状态
bash
sudo firewall-cmd list-all
方案3:使用 `iptables`(通用底层方案)
bash
清空规则(谨慎操作)
sudo iptables -F
默认策略
sudo iptables -P INPUT DROP
sudo iptables -P FORWARD DROP
sudo iptables -P OUTPUT ACCEPT
允许本地回环
sudo iptables -A INPUT -i lo -j ACCEPT
sudo iptables -A INPUT -m state state ESTABLISHED,RELATED -j ACCEPT
开放指定端口
sudo iptables -A INPUT -p tcp dport 2222 -j ACCEPT
sudo iptables -A INPUT -p tcp dport 80 -j ACCEPT
sudo iptables -A INPUT -p tcp dport 443 -j ACCEPT
限制 SSH 暴力破解(每分钟最多3次)
sudo iptables -A INPUT -p tcp dport 2222 -m limit limit 3/min -j ACCEPT
sudo iptables -A INPUT -p tcp dport 2222 -j DROP
保存规则(Ubuntu):
bash
sudo iptables-save /etc/iptables/rules.v4
CentOS:
bash
service iptables save
三、增强防护工具(可选)
1、安装 Fail2Ban(防暴力破解)
bash
Ubuntu
sudo apt install fail2ban -y
CentOS
sudo yum install epel-release -y
sudo yum install fail2ban -y
配置:
bash
sudo cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local
sudo nano /etc/fail2ban/jail.local
修改关键项:
ini
[sshd]
enabled = true
port = 2222
filter = sshd
logpath = /var/log/auth.log
maxretry = 3
bantime = 3600
启动服务:
bash
sudo systemctl enable fail2ban
sudo systemctl start fail2ban
查看封禁状态:
bash
sudo fail2ban-client status sshd
2、防 DDoS 初级防护(使用轻量脚本或模块)
使用 `netdata` 或 `vnstat` 监控流量异常。
使用 `mod_evasive`(Apache)或 `ngx_http_limit_req_module`(Nginx)限制请求频率。
对于小规模 CC 攻击,可通过 Nginx 限流:
nginx
limit_req_zone $binary_remote_addr zone=one:10m rate=10r/s;
server {
location / {
limit_req zone=one burst=20 nodelay;
}
}
四、其他安全建议
1、定期备份重要数据。
2、关闭不用的服务(如 telnet、ftp)。
3、使用强密码 + SSH 密钥认证。
4、安装并更新杀毒软件(如 ClamAV)。
5、启用系统日志审计(auditd)。
6、使用云厂商提供的免费DDoS基础防护(如阿里云、腾讯云、AWS Shield)。
总结
| 功能 | 工具 |
| 软件防火墙 | ufw / firewalld / iptables |
| 暴力破解防护 | fail2ban |
| 流量监控 | netdata, vnstat |
| 请求限流 | Nginx/Apache 模块 |
🛡️ 注意:软防不能完全抵御大流量 DDoS,建议结合云厂商的高防 IP 或 CDN(如 Cloudflare)进行综合防护。
如果你提供具体的系统类型(Ubuntu 20.04?CentOS 7?)和用途(Web 服务器?代理?),我可以给出更定制化的软防配置方案。
📣 商家广告:





0
IP地址: 188.195.159.208
搜索次数: 229
提问时间: 2025-11-29 12:43:13
本站所有
❓
问答
均由Ai自动分析整理,内容仅供参考,若有误差请用“联系”里面信息通知我们人工修改或删除。
本站由
🟢
豌豆Ai
提供技术支持,使用的最新版:
豌豆Ai站群搜索引擎系统 V.25.10.25
搭建本站。