防火墙知识
防火墙知识
author:troy
website : https://www.zygd.site
statement : Some source networks
Ubuntu
1. 安装
sudo apt-get install ufw
2. 启用
sudo ufw enable
sudo ufw default deny
- 运行以上两条命令后,开启了防火墙,并在系统启动时自动开启。关闭所有外部对本机的访问,但本机访问外部正常
- 开启/禁用
sudo ufw allow|deny [service]
- 打开或关闭某个端口,例如:
sudo ufw allow smtp 允许所有的外部IP访问本机的25/tcp (smtp)端口
sudo ufw allow 22/tcp 允许所有的外部IP访问本机的22/tcp (ssh)端口
sudo ufw allow 53 允许外部访问53端口(tcp/udp)
sudo ufw allow from 192.168.1.100 允许此IP访问所有的本机端口
sudo ufw allow proto udp 192.168.0.1 port 53 to 192.168.0.2 port 53
sudo ufw deny smtp 禁止外部访问smtp服务
sudo ufw delete allow smtp 删除上面建立的某条规则
- 查看防火墙状态
sudo ufw status
- 一般用户,只需如下设置:
sudo apt-get install ufw
sudo ufw enable
sudo ufw default deny
-
以上三条命令已经足够安全了,如果你需要开放某些服务,再使用sudo ufw allow开启。
-
开启/关闭防火墙 (默认设置是’disable’)
sudo ufw enable|disable
- 转换日志状态
sudo ufw logging on|off
- 设置默认策略 (比如 “mostly open” vs “mostly closed”)
sudo ufw default allow|deny
- 许可或者屏蔽端口 (可以在“status” 中查看到服务列表)。可以用“协议:端口”的方式指定一个存在于/etc/services中的服务名称,也可以通过包的meta-data。 ‘allow’ 参数将把条目加入 /etc/ufw/maps ,而 ‘deny’ 则相反。基本语法如下:
sudo ufw allow|deny [service]
- 显示防火墙和端口的侦听状态,参见 /var/lib/ufw/maps。括号中的数字将不会被显示出来。
sudo ufw status
UFW 使用范例:
- 允许 53 端口
sudo ufw allow 53
- 禁用 53 端口
sudo ufw delete allow 53
- 允许 80 端口
sudo ufw allow 80/tcp
- 禁用 80 端口
sudo ufw delete allow 80/tcp
- 允许 smtp 端口
sudo ufw allow smtp
- 删除 smtp 端口的许可
sudo ufw delete allow smtp
- 允许某特定 IP
sudo ufw allow from 192.168.254.254
- 删除上面的规则
sudo ufw delete allow from 192.168.254.254
Centos
- 安装
yum install firewalld
- 如果需要图形界面的话,则再安装
yum install firewall-config
使用方法
-
开启防火墙
systemctl start firewalld.service -
防火墙开机启动
systemctl enable firewalld.service -
关闭防火墙
systemctl stop firewalld.service -
查看防火墙状态
firewall-cmd --state -
查看现有的规则
iptables -nL -
重载防火墙配置
firewall-cmd --reload -
添加单个单端口
firewall-cmd --permanent --zone=public --add-port=81/tcp -
添加多个端口
firewall-cmd --permanent --zone=public --add-port=8080-8083/tcp -
删除某个端口
firewall-cmd --permanent --zone=public --remove-port=81/tcp -
针对某个 IP开放端口
firewall-cmd --permanent --add-rich-rule="rule family="ipv4" source address="192.168.142.166" port protocol="tcp" port="6379" accept" firewall-cmd --permanent --add-rich-rule="rule family="ipv4" source address="192.168.0.233" accept" -
删除某个IP
firewall-cmd --permanent --remove-rich-rule="rule family="ipv4" source address="192.168.1.51" accept" -
针对一个ip段访问
firewall-cmd --permanent --add-rich-rule="rule family="ipv4" source address="192.168.0.0/16" accept" firewall-cmd --permanent --add-rich-rule="rule family="ipv4" source address="192.168.1.0/24" port protocol="tcp" port="9200" accept" -
添加操作后别忘了执行重载
firewall-cmd --reload -
查看指定级别的所有信息,譬如 public
firewall-cmd --zone=public --list-all public (default, active) interfaces: eth0 sources: services: dhcpv6-client http ssh ports: masquerade: no forward-ports: icmp-blocks: rich rules:
纵饮孤独,程序员的世界是孤独的,这个平台让我们聚集在一起纵饮百年孤独

浙公网安备 33010602011771号