linux菜鸟日记(5)
iptables详细语法及配置:
SNAT:源地址转换
DNAT:目标地址转换
PNAT:端口地址转换
----------------------------------
iptables规则链
路由以后到本机:INPUT
本机出口:OUTPUT
路由到本机以后转发:FORWARD
路由前:PREROUTING
路由后:POSTROUTING
---------------------------------
防火墙的功能
raw
mangle:拆包修改
nat:地址转换
filter:过滤
---------------------------------
filter
处理动作
ACCEPT:放行
DROP:拒绝(直接丢弃包)
REJECT:拒绝(向对方回应拒绝)
---------------------------------
iptables 基本语法
iptables [-t TABLE](指定表名 raw|mangle|nat| filter<默认> ) COMMAND CHAIN(链) [CRETIRIA](匹配条件) -j ACTION
COMMAND:对链,或者链链中规则进行管理操作
链中规则:
-A 新加一条规则
-I [*] 插入一条规则
-R [*] 替换一条规则 OR , -R CRETERIA
-D [*] 删除一条规则 OR , -D CRETERIA
链:
-N 新建一个自定义链
-X 删除一个自定义空链
-E 重命名一条自定义链
-F 清空指定链,如果不指定链,则清空表中所有链
-P 设定默认策略
-Z 置零(每条规则,包括默认策略都有两条计数器,一个是被本规则匹配的所有数据包的个数,另一个是被本条数据包匹配的大小之和)
-L 查看
-v 查看详细
-vv 查看更详细
-vvv 查看更加详细
-- line-numbers 查看行号
-x 计数器的精确值
-n 不要对地址和端口进行名称反解(显示数字地址)
------------------------------------
iptabels服务脚本: /etc/rc.d/init.d/iptables
脚本配置文件:/etc/sysconfig/iptables-config
service iptables [status|start|stop|restart|save<保存>]
iptables 规则的目录 /etc/sysconfig/iptables
匹配条件:
通用匹配
-s 源地址
-d 目标地址
| IP
| NETWORK/MASK
| ! (除指定IP或者网段以外)
-p [icmp|tcp|udp]
-i IN_INTERFACE 数据包流入接口
-o OUT_INTERFACE 数据包流出接口
扩展匹配
隐式扩展
-p tcp [icmp|tcp|udp]
|--sport 端口(必须为单个或者相连的端口)
|--dport 目标端口(必须为单个或者相连的端口)
|--tcp-flags [SYN,FIN,ACK,PSH,RST,URG](需要检查的位) [SYN,FIN,ACK,PSH,RST,URG](须为1的位)
|--syn 相当于 --tcp-flags SYN,ACK,RTS,FIN SYN
-p udp
|--sport
|--dport
-p icmp
|--icmp-type
| 0:echo-reply 回应报文
| 8:echo-request 请求报文
显式扩展
nitfilter扩展模块引入的扩展,用于指定新的匹配条件,通常需要额外的专用选项来定义
-m state:用于使用连接状态检测
--state
NEW(新的链接),ESTABLISHED(建立的链接)
RELATED(有关系的),INVALID(非法的)
-------------------------------------
CentOS 7 保存方法
直接修改/etc/sysconfig/iptables保存
/usr/libexec/iptables/iptables.init save
linux菜鸟日记(5)的更多相关文章
- linux菜鸟日记(4)
使用一个简单的for循环和if判断语句实现某个网段内所有ping所有客户机的shell程序: ..} do >&; then echo " ${i}通" else e ...
- linux菜鸟日记(3)
Centos7利用shell编辑一串 一键完成一些基础配置的代码: 在这串shell代码中我实现了 IP地址的配置.光盘的挂载.本地yum源的搭建.一些服务的安装例如 httpd. php. ntp ...
- linux菜鸟日记(2)
ntp服务的安装与配置: 安装ntp服务的过程比较简单首先你需要挂载光盘然后安装ntp服务如果配置了本地yum源可以直接使用光盘中的资源进行本地yum的安装,如果没有就使用rpm包进行安装. 由于我已 ...
- linux菜鸟日记
本地yum源的安装: 要安装本地yum源,首先需要熟悉本地yum文件的配置和光盘的挂载 第一步挂载光盘: 首先需要指定一个光盘挂载目录 通常情况下我习惯使用默认挂载目录,所以一般我使用的光盘挂载命令是 ...
- Linux学习日记-使用EF6 Code First(四)
一.在linux上使用EF 开发环境 VS2013+mono 3.10.0 +EF 6.1.0 先检测一下EF是不是6的 如果不是 请参阅 Linux学习日记-EF6的安装升级(三) 由于我的数据库 ...
- Linux管理日记(二)
14 启动内网端口转发 ### 2. 查看IP以及网卡信息 # 可以发现, eth0 的地址 inet addr:10.144.7.195, 此为内网网卡 # 公网网卡, eth1 的地址 inet ...
- Linux菜鸟成长日记 ( Linux 下的 ftp 文件传输协议 )
https://blog.csdn.net/buster_zr/article/details/80244542 FTP FTP 是 File Transfer Protocol (文件传输协议)的英 ...
- Linux 学习日记 1
这是我第一次系统地学习Linux,希望通过这个学习日记收获一些东西把-- @_@ Grub - 启动管理器 在启动时让用户选择要启动的系统.(但是windows比较霸道--重装windows后会将 ...
- Linux学习日记——源码编译Apache
[本文为笔者在学习Linux 下的软件安装时,尝试使用源码安装Apache 的过程,事后进行一个小小的总结,发现错误望指正.] 一.典型的源码编译安装软件的过程包括以下3步: 1) 运行 config ...
随机推荐
- linux 下C++查询mysql数据库
上一节我们看了怎么使用mysql提供的API来连接mysql数据库,现在来看看怎么执行一条简单的查询语句,并且把查询的结果显示出来. 准备工作:首先新建了一个数据库inote,在这个数据库下面新建了一 ...
- powershell例子
例子如下: $ErrorActionPreference="Stop" function getlist{ ls D:\tmp2|select name,extension,ful ...
- iOS web remote debug 正确的姿势
在使用iOS Remote debug需要做以下准备 1. iOS devices 开启java script and web inspector 开启方式如下: 2. mac OS 自带的Safar ...
- SQL批量增加修改数据
insert into A表(字段1,字段2) select 字段1,字段2 From B表 [注:字段类型.字段数应相同] --批量进行修改ID值 declare @i int begin )) F ...
- java动态调用webservice
cxf方式 public static Object[] invokeRemoteMethod(String url, String method, Object[] parameters) { Ja ...
- php链接数据库 批量删除 和 注册审核
理解 : hiden value session name="a[]" 1. form 表单上传的 value=" "值 ...
- C+继承
// 继承.cpp : Defines the entry point for the console application.// #include "stdafx.h" str ...
- 文件描述符、文件表项指针、inode节点的关系
内核使用3种数据结构表示打开的文件,他们之间的关系决定了在文件共享方面一个进程对另一个进程的影响. (1) 每个进程在进程表中都有一个纪录项,纪录项中包含一张打开文件描述符表,每个文件描述符各占一项, ...
- October 30th Week 45th Sunday 2016
Genius is nothing but labor and diligence. 天才不过是勤奋而已. Labor and diligence are the requirements for s ...
- Adobe illustrator & Photoshop 处理图片
Adobe illustrator 置入,可以将多张图片放在一张纸 (一个sheet)里面. Adobe photoshop: 新建一个图层,然后置入,将图片导入,然后裁剪,最后另存为就可以得到最后的 ...