UFW防火墙配置
小白使用UFW
如果你对防火墙不了解,那么,这里适合你,按照以下步骤操作即可
Ubuntu安装UFW
1
| sudo apt-get install ufw
|
CentOS安装UFW
CentOS默认软件源不提供UFW,所以你需要安装EPEL软件源,运行以下命令:
1
| yum install epel-release -y
|
安装完成后使用以下命令安装UFW:
1
| yum install --enablerepo="epel" ufw -y
|
安装完成了,就可以使用下面的命令了。
启动UFW
默认拒绝外部访问本机
开放/拒绝端口
如需外部访问本机某端口,则使用以下开放端口命令
1 2 3 4
| sudo ufw allow 8080
sudo ufw deny 8090
|
UFW防火墙未开启
UFW安装
1
| sudo apt-get install ufw
|
启动防火墙
1 2
| sudo ufw enable sudo ufw default deny
|
运行以上两条命令后,开启了防火墙,并在系统启动时自动开启。关闭所有外部对本机的访问,但本机访问外部正常。
禁止开机启动UFW(关闭UFW)
开启/禁用服务
1
| sudo ufw allow|deny [service]
|
开启/禁用端口
1
| sudo ufw allow|deny [service]
|
举例
允许所有的外部IP访问本机的25/tcp (smtp)端口
允许所有的外部IP访问本机的22/tcp (ssh)端口
允许外部访问53端口(tcp/udp)
禁用53端口
1
| sudo ufw delete allow 53
|
指定IP访问所有的本机端口
1
| sudo ufw allow from 192.168.1.100
|
删除某条这条规则
即上面刚新建的规则
1
| sudo ufw delete allow from 192.168.1.100
|
禁止外部访问smtp服务
删除上面建立的某条规则
1
| sudo ufw delete allow smtp
|
查看防火墙状态及规则
开启/关闭防火墙
转换日志状态
设置默认策略
(比如 “mostly open” vs “mostly closed”)
1
| sudo ufw default allow|deny
|
查看防火墙版本
重启UFW防火墙
重置UFW防火墙配置
Firewalld防火墙配置
Firewalld是CentOS 7的防火墙,但,Firewalld底层调用的命令还是iptables,所以后面也有必要学一学iptables防火墙。
启动、关闭、重启
启动防火墙
1
| systemctl start firewalld
|
关闭防火墙
1
| systemctl stop firewalld
|
重启防火墙
1
| systemctl restart firewalld.service
|
开机自启、开机不启动
开机自启
开机自动启动防火墙。
1
| systemctl enable firewalld
|
开机启动
表示开机自动关闭防火墙。
1
| systemctl disable firewalld.service
|
查看防火墙
查看防火墙状态
1
| systemctl status firewalld.service
|
查看防火墙默认状态
查看防火墙的服务
1
| firewall-cmd --get-services
|
查看防火墙正在使用的域
1
| firewall-cmd --get-active-zones
|
查看防火墙默认域
1
| firewall-cmd --get-default-zone
|
查看防火墙的域
1
| firewall-cmd --get-zones
|
列出public域的所有设置
1
| firewall-cmd --zone=public --list-all
|
查看已启动的服务列表
1
| systemctl list-unit-files|grep enabled
|
开启端口
这里指定开启80
端口,并且是tcp协议,如果需要udp,将tcp改为udp即可
1
| firewall-cmd --zone=public --add-port=80/tcp --permanent
|
命令含义:
–zone
:作用域
–add-port=80/tcp
:添加端口,格式为:端口/通讯协议
–permanent
:永久生效,没有此参数重启后失效
开启 or 关闭防火墙端口,都需要重新加载防火墙才生效
加载防火墙配置
操作Firewalld
防火墙命令必须reload
才生效
Iptables防火墙配置
开放端口
案例一
1
| iptables -I INPUT -p tcp --dport 8001 -j ACCEPT
|
案例二
1
| iptables -t filter A INPUT -p tcp --dport 22 -j ACCEPT
|
参数:
-
-t
:表的选择
-
A
:追加
-
-p
:采用tcp协议
-
-dport
:指定开放端口22
-
-j
:动作为ACCEPT