vps防火墙设置【ubuntu】
在 Linux 系统中,限定特定端口只能由指定 IP 登录,可通过防火墙工具(如firewalld或iptables)实现。以下是两种常用工具的配置方法。Ubuntu 系统默认使用的防火墙工具是 ufw(Uncomplicated Firewall),它是iptables的前端工具,设计初衷是简化防火墙配置,适合新手和日常基础使用。
常用基础命令
- 启用防火墙
sudo ufw enable - 关闭防火墙
sudo ufw disable - 查看防火墙状态
sudo ufw status - 允许特定端口(如22号端口)
sudo ufw allow 22 - 允许特定IP访问所有端口
sudo ufw allow from 192.168.1.100 - 允许特定IP访问指定端口(如允许192.168.1.100访问80端口)
sudo ufw allow from 192.168.1.100 to any port 80 - 拒绝某个IP的所有访问
sudo ufw deny from 192.168.1.200 - 删除已添加的规则(先通过
sudo ufw status numbered查看规则编号)sudo ufw delete 规则编号
如果需要更复杂的防火墙配置(如端口转发、高级规则等),可以直接使用iptables,但ufw已能满足大多数常规场景需求。
生效与验证
- 启用防火墙(若未启用)
sudo ufw enable - 重新加载规则(配置后建议执行)
sudo ufw reload - 查看已配置的规则
sudo ufw status verbose
有必要限定ip的端口
- SSH 端口(22)
SSH 用于远程登录服务器,若开放给任意 IP,易遭受暴力破解攻击。强烈建议仅允许信任的 IP(如管理员办公 IP)访问。 - FTP 相关端口(21、20 等)
端口 21 是 FTP 控制端口,数据传输通常涉及端口 20(主动模式)或随机端口(被动模式)。FTP 传输未加密时风险高,建议仅对内部 IP 或特定业务 IP 开放。 - 数据库相关端口
3306(MySQL):数据库端口,若暴露公网,数据泄露风险极大,必须限定可访问的 IP(如应用服务器 IP)。
1433(SQL Server):同理,仅允许业务关联的 IP 访问。
优先处理 22、3306、1433、21 等直接涉及远程管理、数据存储的端口,通过 ufw 限定访问 IP,大幅降低被攻击风险。