常见的linux系统防火墙有:UFW、firewall、iptables,其中,UFW是Debian系列的默认防火墙,

firewall 是红帽系列7及以上的防火墙(如CentOS7.x),iptables是红帽系列6及以下(如CentOS6.x)的防火墙。

废话不多说,直接上示例:

ufw防火墙配置示例:

#!/bin/bash
# Check if user is root
if [ $(id -u) != "0" ]; thenecho "Error: You must be root to run this script, please su to root user"exit 1
fi
echo "检测防火墙UFW 服务是否安装..."
if ! type ufw >/dev/null 2>&1; thenecho "ufw服务未安装,正在安装ufw..."apt-get install ufw -y
fi#设置默认策略,即拒绝传入并允许传出连接
ufw default deny incoming
ufw default allow outgoing
#允许SSH连接
ufw allow ssh
#如果将SSH守护程序配置为使用其他端口,则必须指定相应的端口
#ufw allow 22echo "允许IP访问本机的22端口:"
#允许IP段访问本机的22端口
ufw allow from 192.168.1.0/24 to any port 22
#允许IP访问本机的22端口
ufw allow from 192.168.2.5 to any port 22#其它的端口
# 如果要控制协议,只要加入“/协议”在端口后面就行了。例如: ufw allow 53/tcp或udp#开放http服务80端口,以下任意一条命令均可
ufw allow http
#ufw allow 80
#开放https服务443端口,以下任意一条命令均可
ufw allow https
#ufw allow 443# 允许IP段访问数据库端口
ufw allow from 192.168.31.0/24 to any port 5432
# 允许IP访问数据库端口
ufw allow from 192.168.2.5 to any port 5432#允许特定的IP地址
ufw allow from 192.168.2.6#允许特定子网
ufw allow from 192.168.1.0/24#允许特定端口范围,必须指定规则应适用的协议( tcp或udp )
ufw allow 52013:52020/tcp
ufw allow 52013:52020/udp#绑定特定网卡,如:希望PgSQL数据库服务器(端口5432 )监听专用网络接口eth1上的连接
ufw allow in on eth1 to any port 5432#拒绝某个IP
# ufw deny from 192.168.1.1
#拒绝某个服务或端口
# ufw deny http#删除规则
#1.按规则编号
#ufw status numbered
#2.根据编号删除
# ufw delete 3#或者直接删除
# ufw delete allow http
# ufw delete allow 80#禁止ping
#编辑/etc/ufw/before.rules
#将 -A ufw-before-input -p icmp-tyoe echo-request -j ACCEPT 中-j ACCEPT 换成 -j DROPecho "UFW规则配置完毕..."#重新加载防火墙规则
#启用UFW...
ufw enable#重启加载
#ufw reload#检测状态
ufw status verbose

firewall 防火墙配置示例:

#!/bin/bash
# Check if user is root
if [ $(id -u) != "0" ]; thenecho "Error: You must be root to run this script, please su to root user"exit 1
fi
echo "查看 firewalld 服务状态"
systemctl status firewalld
echo "删除防火墙开放的22端口规则"
firewall-cmd --permanent --zone=public --remove-service=ssh
#firewall-cmd --zone=public --remove-port=22/tcp --permanent
#添加服务
#firewall-cmd --permanent --zone=public --add-service=ssh
echo "允许IP访问本机的22端口:"
#允许IP段访问本机的22端口
firewall-cmd --permanent --add-rich-rule='rule family=ipv4 source address=192.168.1.0/24 port protocol=tcp port=22 accept'
#允许IP访问本机的22端口
firewall-cmd --permanent --add-rich-rule='rule family=ipv4 source address=192.168.2.5/32 port protocol=tcp port=22 accept'
#允许icmp包通过,也就是允许ping
firewall-cmd --permanent --add-rich-rule='rule protocol value="icmp" accept'
#删除防火墙开放的5432端口规则
firewall-cmd --zone=public --remove-port=5432/tcp --permanent
# 允许IP段访问数据库端口
firewall-cmd --permanent --zone=public --add-rich-rule="rule family='ipv4' source address='192.168.1.0/24' port port='5432' protocol='tcp' accept"
# 允许IP访问数据库端口
firewall-cmd --permanent --zone=public --add-rich-rule="rule family='ipv4' source address='192.168.1.99' port port='5432' protocol='tcp' accept"#开放http,https端口
firewall-cmd --zone=public --add-port=80/tcp --permanent
firewall-cmd --zone=public --add-port=443/tcp --permanent
#删除规则(需要删除的规则请用firewall-cmd --list-all 查询)
#firewall-cmd --permanent --zone=public --remove-rich-rule="rule protocol value="icmp" accept"echo "firewall规则配置完毕..."#重新加载防火墙规则
echo "firewall规则重新加载中..."
firewall-cmd --reload#查看规则
firewall-cmd --list-all 

iptables防火墙配置示例:

#!/bin/bash
# Check if user is root
if [ $(id -u) != "0" ]; thenecho "Error: You must be root to run this script, please su to root user"exit 1
fi#这个一定要先做,不然清空后可能会悲剧
iptables -P INPUT ACCEPT
#清空默认所有规则
iptables -F
#清空自定义的所有规则
iptables -X
#计数器置0
iptables -Z
#允许来自于lo接口的数据包
iptables -A INPUT -i lo -j ACCEPT
#开放80端口
iptables -I INPUT -p tcp --dport 80 -j ACCEPT
#在tcp协议中,禁止所有的ip访问本机的22端口。
iptables -I INPUT -p tcp --dport 22 -j DROP
#允许IP段访问本机的22端口
iptables -I INPUT -s 192.168.1.0/24 -p tcp --dport 22 -j ACCEPT
#允许IP访问本机的22端口
iptables -I INPUT -s 192.168.2.5 -p tcp --dport 22 -j ACCEPT
#允许icmp包通过,也就是允许ping
iptables -A INPUT -p icmp -m icmp --icmp-type 8 -j ACCEPT
#本机对外请求相当于OUTPUT,对于返回数据包必须接收啊,这相当于INPUT了
iptables -A INPUT -m state --state ESTABLISHED -j ACCEPT#过滤所有非以上规则的请求
iptables -P INPUT DROP
#保存iptables
service iptables save
#重启防火墙
service iptables restart

UFW、firewall、iptables防火墙配置相关推荐

  1. Iptables防火墙配置详解

    iptables防火墙配置详解 iptables简介 iptables是基于内核的防火墙,功能非常强大,iptables内置了filter,nat和mangle三张表. (1)filter表负责过滤数 ...

  2. Linux学习笔记 --iptables防火墙配置

    iptables防火墙配置 一.防火墙简介 1.功能: 1)通过源端口,源IP地址,源MAC地址,包中特定标记和目标端口,IP,MAC来确定数据包是否可以通过防火墙 2)分割内网和外网[附带的路由器的 ...

  3. centos iptables 防火墙配置

    2019独角兽企业重金招聘Python工程师标准>>> 配置Cento6.4 iptables防火墙. 1. 查看防火墙状态 service iptables status #或 / ...

  4. iptables防火墙配置工具ShoreWall的安装和使用实例

    shorewall不是一个daemon的程序,它是一个加载iptables指令的套件,所以请别指望使用ps -aux这类的指令来查询它的行程,接下来的部份就分别说明各个设定文件的功能及格式. 本质上来 ...

  5. Keepalived 无法自动转换主备角色,请关注 iptables 防火墙配置

    最近在研究服务器高可用集群 (HA)-- 搭建了主备两台Keepalived,配置什么的全是网上照抄的,被验证过无数遍的示例-- 然而Master和Backup无法自动切换.两边会同时绑定浮动IP(V ...

  6. Linux下iptables防火墙配置

    目录 一.Linux防火墙基础 1.1 防火墙概述 1.2  四表五链 二. iptables--命令 2.1 iptables的安装 2.2 iptables的配置方法 三.配置Filter表防火墙 ...

  7. Linux中iptables防火墙配置实例分享

    转自:http://www.jbxue.com/LINUXjishu/9827.html iptables -I OUTPUT -d 192.168.1.2 -j DROP // 禁止往外向192.1 ...

  8. 服务器防火墙,linux下iptables防火墙配置相关

    iptables防火墙 iptables常用命令 iptables配置文件`/etc/sysconfig/iptables` iptables服务命令 -- 启动服务 -- 停止服务 -- 重启服务 ...

  9. Iptables防火墙配置

    iptables 服务的配置文件:/etc/sysconfig/iptables-config 系统默认策略:  /etc/sysconfig/iptables 一  查看现有iptables配置信息 ...

  10. Ubuntu UFW 防火墙配置

    Ubuntu 附带的 UFW(Uncomplicated Firewall)防火墙配置工具,用于管理 iptables 防火墙规则,用于监视和过滤传入和传出网络流量的工具,通过定义一组安全规则来确定是 ...

最新文章

  1. Redis在CentOS 6.8中的安装方法,JAVA初级使用Redis连接池
  2. 初识 Spring(02)---(IOC)
  3. dubbo控制中心部署,权重配置,以及管控台中各个配置的简单查看
  4. 鸿蒙2.0都来了,快搭个环境玩起来吧!
  5. git 拉取远程其他分支代码_git切换远程分支并拉取远程分支代码
  6. android 时间差 秒_Android 根据两个时间戳计算时间差(亲测可用)
  7. 如何控制Go编码JSON数据时的行为
  8. greenplum 单表 数据扫描
  9. C++ 之父即将开始直播,请就位!
  10. 石头扫地机器人音量怎么调_石头的新扫地机器人 T6,内外都有升级
  11. Linux yum安装unrar、rar
  12. thymeleaf随机数_JavaScript 产生不重复的随机数三种实现思路
  13. Listings of System and Object Privileges--系统和对象权限列表
  14. 开源BI工具对比(三) DataEase
  15. linux51单片机烧录程序,单片机成长之路(51基础篇) - 006 在Linux下搭建51单片机的开发烧写环境...
  16. Linux Netfilter/NAT的两个典型问题
  17. xcode run跑项目或者Archive打包项目的时候显示Build Succeeded一闪而过但是程序无反应问题解决
  18. java agent简介热部署SDK接入
  19. 【机器学习】【隐马尔可夫模型-3】后向算法:算法详解+示例讲解+Python实现
  20. 互斥锁的应用与pthread_mutex_destory的出错

热门文章

  1. 【搜素算法02】—回溯法
  2. 简单、好用的PHP爬虫框架开发实战:教你轻松抓取 10w+ 美女壁纸!
  3. SpringBoot体验Mybatis、MybatisPlus、TKMybatis
  4. Spotfire 修改标记及颜色
  5. 用于检测未知恶意软件的深度学习方法
  6. 2019软博会:和利时将展示在智能工厂等行业的解决方案
  7. antd 实现pdf 预览_react 的pdf预览插件应用
  8. win7录屏_win7/win10屏幕录制教程?
  9. 应急指挥中心整体建设方案(ppt)
  10. Qt中QListView设置其编辑状态