CentOS开发之——防火墙
一 Linux系统防火墙工具发展历史
防火墙工具变化如下: ipfirewall--->ipchains--->iptables--->firewalld
- Linux 2.0版内核中,包过滤机制为ipfw,管理工具是ipfwadm。
- Linux 2.2版内核中,包过滤机制为ipchain,管理工具是ipchains。
- Linux 2.4版内核中,包过滤机制为netfilter,管理工具是iptables。
- Linux 3.1版内核中,采取daemon动态管理防火墙,管理工具是firewalld。
我们现在常用的防火墙工具是:iptables、firewalld
二 几种常见的防火墙及其关系
- iptables是Linux下功能强大的应用层防火墙工具
- firewall是centos7里面新的防火墙管理命令
- ufw是Ubuntu下的一个简易的防火墙配置工具
三 几种常见防火墙如何使用
3.1 iptables防火墙
3.1.1 iptables的位置
- ptables服务将配置存储在/etc/sysconfig/iptables和/etc/sysconfig/ip6tables中
3.1.2 基本操作
安装iptables
yum install iptables-services
卸载iptables
yum remove iptables-services
查看防火墙状态
service iptables status
启动防火墙
service iptables start
停止防火墙
service iptables stop
永久关闭防火墙
chkconfig iptables off
永久关闭后重启
chkconfig iptables on
查看iptable端口
iptables -L -n
关闭所有的 INPUT FORWARD OUTPUT 只对某些端口开放
iptables -P INPUT DROP iptables -P FORWARD DROP iptables -P OUTPUT DROP
打开所有的 INPUT FORWARD OUTPUT 只对某些端口开放
iptables -P INPUT ACCEPT iptables -P FORWARD ACCEPT siptables -P OUTPUT ACCEPT
开放指定的端口(22)
可以打开文件查看 vi /etc/sysconfig/iptables
iptables -A INPUT -p tcp --dport 22 -j ACCEPT iptables -A OUTPUT -p tcp --sport 22 -j ACCEPT
iptables 保存
service iptables save
保存退出后重启防火墙
service iptables restart
3.2 firewall防火墙
3.2.1 firewall的位置
- firewalld将配置存储在/usr/lib/firewalld/和/etc/firewalld/中的各种XML文件中
3.2.2 基本操作
查看firewalld是否安装
rpm -qa|grep firewalld
查看yum中firewalld中列表
yum list firewalld*
firewalld 安装
yum install firewalld*
firewalld 卸载
yum remove firewall*
firewalld 升级
yum -y update firewalld
查看firewall 安装信息
rpm -qi firewalld firewall-config
查看firewall服务状态
systemctl status firewalld
查看firewall的状态
firewall-cmd --state
开启firesalld服务
service firewalld start
关闭firewalld服务
service firewalld stop
重启firewalld服务
service firewalld restart
查看防火墙规则
firewall-cmd --list-all
开启防火墙
systemctl start firewalld
关闭防火墙
systemctl stop firewalld
允firewall开机启动
systemctl disable firewalld
禁止firewall开机启动
systemctl enable firewalld
查询端口是否开放(8080)
firewall-cmd --query-port=8080/tcp
开放某一端口(8080)
firewall-cmd --permanent --add-port=8080/tcp
移除端口(8080)
firewall-cmd --permanent --remove-port=8080/tcp
重启防火墙
firewall-cmd --reload
3.3 ufw防火墙
3.3.1 ufw的位置
- ufw服务将配置存储在/etc/ufw/user.rules 中
3.3.2 基本操作
uwf安装
sudo apt-get install ufw
ufw卸载
sudo apt-get remove ufw
查看防火墙状态
ufw status
开启防火墙
ufw enable
禁用防火墙
ufw disable
添加某个端口
ufw allow in 33 ufw insert 2 allow in 22/tcp ufw allow 80/tcp
禁用某个端口
ufw deny in 33
四 参考
- 防火墙之发展历史
- SELinux、Netfilter、iptables、firewall和UFW五者关系
- Centos中iptables和firewall防火墙开启、关闭、查看状态、基本设置等
- Linux下iptables 禁止端口和开放端口
- 同时开启firewall和iptables
- Linux添加防火墙、iptables的安装和配置(亲测)
- CentOS7中firewalld的安装与使用详解
- ubuntu ufw相关命令
- Ubutnu UFW防火墙的简单设置