关于centos7   firewalld    http://www.ibm.com/developerworks/cn/linux/1507_caojh/index.html

如何保存及重载规则:

保存规则至指定文件:

iptables-save > /PATH/TO/SOMEFILE

# iptables-save > /root/iptables.1

# cat iptables.1

# Generated by iptables-save v1.4.21 on Tue Oct 16 21:47:02 2018
*filter
:INPUT DROP [267:22395]   //设定默认策略
:FORWARD DROP [0:0]
:OUTPUT DROP [326:21082]
-A INPUT -m state --state ESTABLISHED -j ACCEPT
-A INPUT -d 192.168.184.142/32 -p tcp -m multiport --dports 22,80 -m state --state NEW -j ACCEPT
-A OUTPUT -m state --state ESTABLISHED -j ACCEPT
COMMIT
# Completed on Tue Oct 16 21:47:02 2018

从指定文件重载规则:

iptables-restore < /PATH/FROM/SOMEFILE

CentOS 6规则保存

service iptables save   相当于  iptables-save > /etc/sysconfig/iptables

service iptables restart   相当于  iptables-restore < /etc/sysconfig/iptables

如果此前禁用了iptables,那么/etc/sysconfig/iptables这个文件是不存在的,可以使用service iptables save创建iptables文件

CentOS 7:  (要在centos7上使用iptables,首先要禁用firewalld)

引入了新的iptables前端管理服务工具:firewalld

firewalld-cmd

firewalld-config

关于firewalld:

http://www.ibm.com/developerworks/cn/linux/1507_caojh/index.html

iptable-nat演示
网络拓扑图 设置防火墙服务器物理网卡 # ifconfig ens37 172.16.100.10/24 up    //为内网网卡添加IP
 
 设置内网主机物理网卡(在设置内网之前先安装好web服务,并添加网页) # route add default gw 172.16.100.10   //为内网主机网络设置默认网关 用内网主机ping服务器的外网网卡 以上网络配置好,那么内网主机172.16.100.9可以ping通外网主机192.168.184.143吗?
首先服务器需要开启网络间转发功能
# cat /proc/sys/net/ipv4/ip_forward   
0     //此时服务器是没有打开网络间转发功能,意味着内网主机只能ping服务器的外网IP,却无法ping通服务器以外的外网主机IP 设置打开防火墙服务器网络转发功能
# sysctl -w net.ipv4.ip_forward=1  //只是临时生效
net.ipv4.ip_forward = 1
# cat /proc/sys/net/ipv4/ip_forward
1 失败的原因 这里在外网主机上添加路由
# route add -net 172.16.100.0/24 gw 192.168.184.141  //如果访问目标是172.16.100.0网络,那么网关是192.168.184.141 现在内外网已经可以通信了
在内网主机启动web服务
服务器可以访问内网主机的web服务
外网主机也可以访问内网主机的web服务
下面是在服务器上添加规则控制 用服务器为内网主机加一个防火墙,只允许外网主机143访问内网主机访的web服务,不允许外网主机ping内网主机
# iptables -P FORWARD DROP  //在服务器上把FORWOARD链的默认配置改为DROP,此时外网主机无法ping内网主机,也无法访问内网主机的web服务
下面放行web服务,是外网主机可以访问内网主机,因为只有一台服务器,所以报文的请求与响应都会经过本服务器的FORWARD链
# iptables -A FORWARD -d 172.16.100.9 -p tcp --dport 80 -j ACCEPT  //服务器转发放行任何主机对内网主机web服务请求
# iptables -A FORWARD -s 172.16.100.9 -p tcp --sport 80 -j ACCEPT  //服务器转发放行内网主机对任何主机请求报文的响应 下面配置服务器放行内网主机的22号端口
# iptables -F FORWARD
# iptbales -P FORWARD DROP
# iptables -A FORWARD -m state --state ESTABLISHED -j ACCEPT  //在服务器上FORWARD链上添加只要是ESTABLISHED状态,无论进出统统转发放行
# iptables -A FORWARD -d 172.16.100.9 -p tcp -m multiport --dports 22,80 -m state --state NEW -j ACCEPT  //假设请求一般是外网请求 假如内网主机有frp服务,如何开放?
内网主机无法直接直接链接外网,想要安装软件直接通过源码或者rpm包安装,由于上图内网主机与外网主机143已经开通了22号端口,所以本文利用SSH协议把vsftpd软件包经过scp命令传输到内网根目录下进行安装。SCP协议基于SSH协议:https://blog.csdn.net/DSLZTX/article/details/50586504 # cp /etc/fstab /var/ftp/pub/    //在内网主机上,把fstab文件放到vsftpd服务的默认目录下
# yum install lftp -y   //在服务器上(192.168.184.141)安装lftp
但是外网143是无法访问的,引文服务器141并没有放行服务
下面把ftp服务的请求功能打开
1、装载模块
# modprobe nf_conntrack_ftp
2、放行命令链接、放行数据链接、放行响应连接 # iptables -R FORWARD 1 -m state --state ESTABLISHED,RELATED -j ACCEPT   //对之前配置的规则进行修改
# iptables -R FORWARD 2 -d 172.16.100.9 -p tcp -m multiport --dports 21,22,80 -m state --state NEW -j ACCEPT   //同样对规则进行修改
3、外网主机安装lftp
# yum install lftp -y 要想规则永久有效,应该保存下来,
# iptables-save > /root/iptables.2   //对服务器规则连进行存贮 

练习:

主机防火墙:

放行telnet, ftp, web服务;

放行samba服务;

放行dns服务(查询和区域传送);

telnet: 23/tcp

samba: 137/udp, 138/udp, 139/tcp, 445/tcp

dns: INPUT: 53/udp, OUTPUT: 53/udp

网络防火墙:

放行telnet, ftp, web服务;

放行samba服务;

放行dns服务(查询和区域传送);

核心转发:/proc/sys/net/ipv4/ip_forward

/etc/sysct.conf

net.ipv4.ip_forward = 1

telnet: 23/tcp

samba: 137/udp, 138/udp, 139/tcp, 445/tcp

dns: INPUT: 53/udp, OUTPUT: 53/udp

4、iptables扩展匹配及网络防火墙功能的更多相关文章

  1. iptables 扩展匹配 第三章

    获取帮助: centos 6 :man iptables centos 7: man iptables-extensions 扩展匹配: 隐式扩展:当使用-p指定某一协议之后,协议自身所支持的扩展就叫 ...

  2. iptables详解(6):iptables扩展匹配条件之’–tcp-flags’

    如果你看过前文,那么你一定知道,前文已经对"tcp扩展模块"做过总结,但是只总结了tcp扩展模块中的"--sport"与"--dport"选 ...

  3. iptables的扩展匹配

    iptables的匹配条件 一.通用匹配:-s.-d.-p.-i.-o 二.扩展匹配 1.隐含扩展:使用-p{tcp|udp|icmp}指定某特定协议后,自动能够对协议进行扩展 -p tcp --dp ...

  4. Linux防火墙之iptables基本匹配条件和隐式扩展匹配条件

    一.iptables的基本匹配条件 上一篇博文我们说到了iptables的基本工作原理.数据报文在内核的走向和管理链.管理规则.以及查看规则.导入和导出规则:回顾请参考https://www.cnbl ...

  5. Linux防火墙之iptables常用扩展匹配条件(一)

    上一篇博文讲了iptables的基本匹配条件和隐式匹配条件,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/12269717.html:今天在来说说iptabel ...

  6. Linux防火墙之iptables常用扩展匹配条件(二)

    上一篇博文我们讲到了iptables的一些常用的扩展匹配模块以及扩展模块的一些选项的说明,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/12273755.htm ...

  7. 3、iptables扩展及使用

    iptables/netfilter netfilter: kernel framework,位于内核中的协议框架 iptables  是规则管理命令行工具 四表:filter, nat, mangl ...

  8. iptables详解(7):iptables扩展之udp扩展与icmp扩展

    前文中总结了iptables的tcp扩展模块,此处,我们来总结一下另外两个跟协议有关的常用的扩展模块,udp扩展与icmp扩展. udp扩展 我们先来说说udp扩展模块,这个扩展模块中能用的匹配条件比 ...

  9. Linux防火墙之iptables扩展处理动作

    前文我们讲了iptables的扩展匹配,一些常用的扩展模块以及它的专有选项的使用和说明,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/12285152.html ...

随机推荐

  1. MyDO

    编写MyOD.java 用java MyOD XXX实现Linux下od -tx -tc XXX的功能提交测试代码和运行结果截图. od -tx -tc XXX是输出文件的十六进制数和ASCII字符或 ...

  2. Linux基础命令---文本统计paste

    paste 将文件以行的方式合并在一起,用tab字符分隔开,将结果送到标准输出.此命令的适用范围:RedHat.RHEL.Ubuntu.CentOS.SUSE.openSUSE.Fedora. 1.语 ...

  3. bootsrtap h5 移动版页面 在苹果手机ios滑动上下拉动滚动卡顿问题解决方法

    bootsrtap h5 移动版页面 在苹果手机ios滑动上下拉动滚动卡顿问题解决方法 bootsrtap框架做的h5页面,在android手机下没有卡顿问题,在苹果手机就一直存在这问题,开始毫无头绪 ...

  4. JS实现input中输入数字,控制每四位加一个空格(银行卡号格式)

    前言 今天来讲讲js中实现input中输入数字,控制每四位加一个空格的方法!这个主要是应用于我们在填写表单的时候,填写银行卡信息,要求我们输入的数字是四位一个空格!今天主要介绍两种方式来实现这个方法! ...

  5. JS 和 Jquery 的一些常用效果

    https://www.cnblogs.com/beiz/tag/%E7%BD%91%E9%A1%B5%E5%B8%B8%E8%A7%81%E6%95%88%E6%9E%9C/   北执

  6. ubuntu 18.04下安装Java

    参照以下链接,这个是我找到的最易上手的学习教程了 https://blog.csdn.net/sangewuxie/article/details/80958611 按其步骤,我下载的是Java 11 ...

  7. pat 团体赛练习题集 L2-006. 树的遍历

    给定一棵二叉树的后序遍历和中序遍历,请你输出其层序遍历的序列.这里假设键值都是互不相等的正整数. 输入格式: 输入第一行给出一个正整数N(<=30),是二叉树中结点的个数.第二行给出其后序遍历序 ...

  8. STM32硬件IIC (转)

    源: STM32硬件IIC

  9. Pytorch的torch.cat实例

    import torch 通过 help((torch.cat)) 可以查看 cat 的用法 cat(seq,dim,out=None) 其中 seq表示要连接的两个序列,以元组的形式给出,例如:se ...

  10. Docker学习笔记之了解 Docker 的核心组成

    0x00 概述 在掌握 Docker 的一些背景知识后,我们还不得不花费一节的篇幅来简单介绍有关 Docker 核心的一些知识.当然,大家不要觉得有“核心”这类的词,我们就要在这一节中深入 Docke ...