Linux中的堡垒--iptables
iptables的构成(四表五链)
表
filter:过滤数据包
nat :转换数据包的源或目标地址
mangle:用来mangle包,改变包的属性
raw:用来不让iptables做数据包的链接跟踪处理,主要是提高性能
*优先级:raw>mangle>nat>filter(请注意优先级)
链
INPUT:对进入主机的数据包进行修改
OUPTUT:从主机向外发送的数据包进行修改
FORWARD:转发的数据包,路由判断后最后一次更改包的源地址前对数据包进行修改
PREROUTING:数据包进入防火墙后,路由判断之前对数据包进行修改
POSTROUTING:路由判断后对数据包进行修改
iptables的基本操作
一、管理防火墙
启动
# service iptables start
# chkconfig --level 2345 iptables on
管理程序:/etc/init.d/iptables
关闭
# service iptables stop
# chkconfig iptables off
保存防火墙规则
# service iptables save
规则保存位置:/etc/sysconfig/iptables
iptables 命令格式: iptables [-t 表名] 选项 规则
二、防火墙规则管理
1)显示防火墙中的规则
-L:显示防火墙中的规则列表
-n:不将规则反解成服务名称(以数字)
--line:显示规则编号
-v:显示规则详细信息
【在关闭的情况下,是看不到防火中的规则的】
2)删除规则
-D #:删除指定编号的规则
-F:清空规则
例子:删除filter表的INPUT链的第三个规则
# iptables -t filter -D INPUT 3
例子:删除filter表的INPUT链的全部规则
# iptables -t filter -F INPUT
例子:删除filter表的全部规则
# iptables -t filter -F
3)保存规则
# service iptables save
【执行保存规则操作的时候,会将内存中的规则刷新磁盘上/etc/sysconfig/iptables】
4)清空防火墙的计时器
-Z: 清空规则计时器
例子:清空filter的全部计数器
# iptables -t filter -Z
5)添加
-A: 在最后一条规则后,添加新规则
-I:在指定的位置前插入规则。如果不指定位置,是插入在第一条
-R:替换指定编号的规则
-j 动作:指定一个数据包匹配到这个规则后所执行的操作
动作:
ACCEPT:放行
DROP:丢弃
匹配条件:
-d xxx:指定数据包中的目的IP
-s xxx:指定数据包中的源的IP
--sport xx:指定指定数据包中的源端口
--dport xx:指定数据包中的目的端口
-p xx:指定协议类型
例子:禁止192.168.6.222链接当前主机的tcp 22端口
# iptables -t filter -A INPUT -p tcp --dport 22 -j DROP
6)修改默认规则
-P: 修改链的默认规则
修改默认规则为DROP前,必须首先放行22端口
练习:
1、清空防火墙的规则
# iptables -t filtler -F
# iptables -t nat -F
# iptalbes -t mangle -F
# iptables -t raw -F
2、清空计数器
# iptables -t filtler -Z
# iptables -t nat -Z
# iptalbes -t mangle -Z
# iptables -t raw -Z
3、保存规则
# service iptables save
4、配置规则实现只允许自己的window链接linux主机
# iptables -A INPUT -s x.x.x.x -p tcp --dport 22 -j ACCEPT
# iptables -A OUTPUT -d x.x.x.x -p tcp --sport 22 -j ACCEPT
5、修改默认规则为DROP
# iptables -P INPUT DROP
# iptables -P OUTPUT DROP
# service iptables save
6、禁止外部主机ping linux,但是linux可以ping外部主机
# iptables -A OUTPUT -p icmp --icmp-type 8 -j ACCEPT
# iptables -A INPUT -p icmp --icmp-type 0 -j ACCEPT
7、允许任意主机访问linux的80端口
# iptables -A INPUT -p tcp --dport 80 -j ACCEPT
# iptables -A OUTPUT -p tcp --sport 80 -j ACCEPT
8、保存规则
# service iptables save
PS:还望指正,谢谢 –author by :潇湘雨错,zxhk
Linux中的堡垒--iptables的更多相关文章
- Linux中的防火墙----iptables
防火墙,它是一种位于内部网络与外部网络之间的网络安全系统.一项信息安全的防护系统,依照特定的规则,允许或是限制传输的数据通过. 防火墙根据主要的功能可分为网络层防火墙.应用层防火墙.数据库防火墙. 网 ...
- linux中firewall与iptables防火墙服务
火墙firewall-cmd --state 查看火墙的状态firewall-cmd --get-active-zones 目前所处的域firewall-cmd --get-default-zone ...
- linux中利用iptables+geoip过滤指定IP
1. 前提条件 iptables >= 1.4.5 kernel-devel >= 3.7 2. 安装依赖包 代码如下 复制代码 # yum install gcc gcc-c++ m ...
- linux中iptables配置文件及命令详解详解
iptables配置文件 直接改iptables配置就可以了:vim /etc/sysconfig/iptables. 1.关闭所有的 INPUT FORWARD OUTPUT 只对某些端口开放. 下 ...
- linux中iptables配置文件及命令详解
转自:https://www.cnblogs.com/itxiongwei/p/5871075.html iptables配置文件 直接改iptables配置就可以了:vim /etc/sysconf ...
- LINUX中IPTABLES防火墙使用
对于有公网IP的生产环境VPS,仅仅开放需要的端口,即采用ACL来控制IP和端口(Access Control List). 这里可以使用Linux防火墙netfilter的用户态工具 iptable ...
- linux 中使用iptables 防止ddocs及cc攻击配置 。
#防止SYN攻击,轻量级预防 iptables -N syn-floodiptables -A INPUT -p tcp –syn -j syn-floodiptables -I syn-flood ...
- Linux中的防火墙(Netfilter、Iptables、Firewalld)
目录 Netfilter Iptables iptables做本地端口转发 Firewalld Netfilter Netfilter是Linux 2.4内核引入的全新的包过滤引擎,位于Linux内核 ...
- linux中iptables的用法
iptables基本操作笔记 一.基本操作 #启动防火墙 service iptables start #停止防火墙 service iptables stop #重启防火墙 service ipta ...
随机推荐
- SSIS执行SQL任务时加入参数
昨天开发的SSIS包中,获取ERP系统parttran表时,数据量比较大,达到255万多,因为SQL执行的关系,致使处理时效率很慢,所以就想用增量更新的方法处理该表数据.这是增量更新的SQL任务集合, ...
- bootstrap多层模态窗
<head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8&quo ...
- PTA 5-12 排序 (25分)
给定NN个(长整型范围内的)整数,要求输出从小到大排序后的结果. 本题旨在测试各种不同的排序算法在各种数据情况下的表现.各组测试数据特点如下: 数据1:只有1个元素: 数据2:11个不相同的整数,测试 ...
- POJ 1179 IOI1998 Polygon
Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 5472 Accepted: 2334 Description Polyg ...
- org.openqa.selenium.remote.SessionNotFoundException: The FirefoxDriver cannot be used after quit() was called.
该问题已经困扰了我很多天 问题终于解决了,全局变量导致的,碰到这种问题很难再自己本身的机器上发现错误,所以,应该看一下自己写的方法是否涉及到了全局变量出现不一致的情况,让其统一即可.
- mvc:annotation-driven' must have no character or element问题
使用SpringMVC,启动tomcat报这个错误 解决办法 首先将Spring版本提升到3.1及以上 如果还不行替换xml文件头部: <?xml version="1.0" ...
- windows 7 64位 安装oracle 11g R2
1.下载Oracle 11g R2 for Windows的版本 下载地址: http://www.oracle.com/technetwork/database/enterprise-edition ...
- nginx-systemtap-toolkit
https://github.com/openresty/nginx-systemtap-toolkit
- lsb_release 提示命令不存在
1. 报错信息 bash: lsb_release: command not found 2. 问题原因 未安装 lsb_release 命令 3. 解决方法 用 yum 命令安装 lsb_relea ...
- How to let gedit of linux display "space"
gedit--> preference --> check "draw spaces" . Then gedit will display spaces