一、Ubuntu

防火墙简介
ubuntu 带了一个相对Centos 简单很多的防火墙 ufw

1
2
3
4
5
6
7
8
ufw status  #查看端口开启状态
ufw allow 10050 #开启某个端口,例如10050
ufw enable #开启防火墙
ufw disable #关闭防火墙
ufw reload #重启防火墙
ufw delete allow 80 #禁止外部某个端口例如80
netstat -lth 10050 #查看端口IP

二、Centos

Centos6防火墙简介

Centos6.0默认使用的是iptable作为防火墙

1
2
3
4
5
6
service iptable status #查看防火墙的状态
service iptable stop # 临时关闭防火墙
chkconfig iptables off #永久关闭防火墙
iptables -I INPUT -p tcp --dport 80 -j ACCEPT #允许80tcp端口访问
/etc/init.d/iptables save 或 service iptables save #保存防火墙规则即写到防火墙配置文件里

Centos7防火墙简介

Centos7.0默认使用的是firewall作为防火墙

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
firewall-cmd --state #查看防火墙的状态
systemctl stop firewalld.service #停止防火墙
systemctl disable firewalld.service #禁止防火墙开机启动
firewall-cmd --zone=public --permanent --add-port=80/tcp #允许80tcp端口访问
firewall-cmd --reload #重启加载配置
firewall-cmd --list-ports #查看已经开放的端口
firewall-cmd --list-services #查看开放的服务
命令含义:
--zone #作用域
--permanent #永久生效,没有此参数重启后失效
--add-port=80/tcp #添加端口,格式为:端口/通讯协议
补充:
firewall-cmd --add-service=mysql #开放mysql端口
firewall-cmd --add-port=3306/tcp #开放通过tcp访问3306
firewall-cmd --remove-service=http #阻止http端口
firewall-cmd --remove-port=80tcp #阻止通过tcp访问3306

三、SUSE

防火墙简介
1、SLES系统安装后,防火墙一般是启动的,它有两个服务:SuSEfirewall2_setup
SuSEfirewall2_init
2、SUSE默认的防火墙设置为禁止所有外来联结。如果你想开放某个端口的话,就得修改防火墙设置开放这个端口。

1
2
3
4
5
6
7
rcSuSEfirewall2 stop #SUSE防火墙立即停止命令
rcSuSEfirewall2 start #SUSE防火墙开启命令
rcSuSEfirewall2 restart #SUSE防火墙重启命令

chkconfig SuSEfirewall2_init off #禁用防火墙自动启动
chkconfig SuSEfirewall2_setup off #禁用防火墙自动启动

1
2
3
4
5
6
7
8
9
10
11
12
配置防火墙
修改配置文件:/etc/sysconfig/SuSEfirewall2
如下以TCP服务为例开放服务或者端口号,使用配置FW_SERVICES_EXT_TCP,它的值可以等于:/etc/services中的服务名,端口号,或者端口号范围,或者混合,使用空格分隔。
开放ssh服务
FW_SERVICES_EXT_TCP="ssh"
开放123 和 514端口
FW_SERVICES_EXT_TCP="123 514"
开放3200到3299之间的100个端口
FW_SERVICES_EXT_TCP="3200:3299"
开放ftp服务,22端口,telnet服务,512到514这三个端口
FW_SERVICES_EXT_TCP="ftp 22 telnet 512:514"