Linux的iptables常用配置范例(2)
iptables -F #清除所有规则
iptables -X #清除所有自定义规则
iptables -Z #各项计数归零
iptables -P INPUT DROP #将input链默认规则设置为丢弃
iptables -P OUTPUT DROP #将output链默认规则设置为丢弃
iptables -A INPUT -i lo -j ACCEPT
iptables -A OUTPUT -o lo -j ACCEPT #对运行在本机回环地址上的所有服务放行
iptables -A INPUT -m state –state ESTABLISHED,RELATED -j ACCEPT #把这条语句插在input链的最前面(第一条),并且对状态为ESTABLISHED,RELATED的连接放行。
iptables -A OUTPUT -p tcp –dport 80 -j ACCEPT #允许本机访问其他80服务
iptables -A OUTPUT -p udp –dport 53 -j ACCEPT #允许本机发送域名请求
iptables -A OUTPUT -p icmp -j ACCEPT #对本机出去的所有icmp协议放行,其实如果仅仅只是允许本机ping别的机器,更为严谨的做法是将此语句修改为:
iptables -A OUTPUT -p icmp –icmp-type echo-request -j ACCEPT
对状态为ESTABLISHED和RELATED的包放行,简单的说,就是说对允许出去的包被对方主机收到后,对方主机回应进来的封包放行。这条语
句很重
要,可以省去写很多iptables语句,尤其是在有ftp服务器的场合。你理解了这个意思,就应该知道,有了这条语句,第6条语句其实是可以省略的。
封网站:
iptables -F
iptables -X
iptables -Z
iptables -P OUTPUT DROP
iptables -A INPUT -i lo -j ACCEPT
iptables -A OUTPUT -o lo -j ACCEPT
iptables -A OUTPUT -p udp –dport 53 -j ACCEPT
iptables -A OUTPUT -p tcp -s 192.168.1.10 -d www.qq.com -j DROP(禁止网站)
iptables -A FORWARD -p tcp -s 192.168.1.11/24 -d www.qq.com -o eth0 -j DROP(禁止网段)
iptables -A FORWARD -p tcp -s 192.168.1.12 -d 192.168.1.13 -o eth0 -j DROP(禁止IP)
iptables -A OUTPUT -p tcp –dport 80 -j ACCEPT (这条写在禁止网站的下面)
#安全规则类似windows防火墙
iptables -A INPUT -p tcp –dport 1:1024 -j DROP
iptables -A INPUT -p udp –dport 1:1024 -j DROP 这两条可以防止nmap探测
iptables -A INPUT -p tcp –dport ** -j ACCEPT (要开放的端口)
#允许的端口,相对协议改一下就可以了, (端口过虑)
============================================
iptables架设安全的vsftp服务器
在实际工作中,可用以下脚本架设一台很的内部FTP;当然也可以配合Wireshark理解 vsftpd的被动与主动的区别,以本机192.168.0.10为例,脚本如下:
#!/bin/bash
-F
iptables -X
iptables -Z
iptables -t nat -F
iptables -t nat -X
iptables -t nat -Z
#开启ip转发功能
echo “1” > /proc/sys/net/ipv4/ip_forward
#加载ftp需要的一些模块功能
modprobe ip_conntrack_ftp
modprobe ip_conntrack-tftp
modprobe ip_nat_ftp
modprobe ip_nat_tftp
#为了更安全,将OUTPUT默认策略定义为DROP
iptables -P INPUT DROP
iptables -P OUTPUT DROP
iptables -P FORWARD ACCEPT
#开放本机的lo环回口,建议开放,不开放的会出现些莫名其妙的问题
iptables -A INPUT -i lo -j ACCEPT
iptables -A OUTPUT -o lo -j ACCEPT
#下面的脚本是架设安全的vsftpd关健,后二句脚本是放行服务器向客户端作回应的和已建立连接的数据包,因被动FTP比较复杂,六次握手,所以这里采用状态来做
iptables -A INPUT -s 192.168.0.0/24 -p tcp –dport 21 -j ACCEPT
iptables -A OUTPUT -d 192.168.0.0/24 -p tcp –sport 21 -j ACCEPT
iptables -A INPUT -m state –state RELATED,ESTABLISHED -j ACCEPT
iptables -A OUTPUT -m state –state RELATED,ESTABLISHED -j ACCEPT
=====================================
内网web服务器 适用于中小型公司有内网服务器发布的IPT
=====================================
防止攻击扫描
防止同步包洪水(Sync Flood)
# iptables -A FORWARD -p tcp –syn -m limit –limit 1/s -j ACCEPT
也有人写作
#iptables -A INPUT -p tcp –syn -m limit –limit 1/s -j ACCEPT
–limit 1/s 限制syn并发数每秒1次,可以根据自己的需要修改
防止各种端口扫描
# iptables -A FORWARD -p tcp –tcp-flags SYN,ACK,FIN,RST RST -m limit –limit 1/s -j ACCEPT
Ping洪水攻击(Ping of Death)
# iptables -A FORWARD -p icmp –icmp-type echo-request -m limit –limit 1/s -j ACCEPT
# Null Scan(possibly)XiKc.om
iptables -A INPUT -i eth0 -p tcp –tcp-flags ALL NONE -j DROP#ubuntu保存与开机加载
iptables-save > iptables.up.rules
cp iptables.up.rules /etc/
vi /etc/network/interfacesiptables-save > iptables.up.rules cp iptables.up.rules /etc/ vi /etc/network/interfaces
#在interfaces末尾加入
pre-up iptables-restore < /etc/iptables.up.rules
pre-up iptables-restore < /etc/iptables.up.rules#也可以设置网卡断开的rules。
post-down iptables-restore < /etc/iptables.down.rules
post-down iptables-restore < /etc/iptables.down.rules
#保存
service iptables save
强制所有的客户机访问192.168.1.100这个网站
iptables -t nat -I PREROUTING -i eth0 -p tcp –dport 80 -j DNAT
–to-destination 192.168.1.100 (PREROUTING和DNAT一起使用,POSTROUTING和SNAT一起使用)
发布内网的web服务器192.168.1.10
iptables -t nat -I PREROUTING -p tcp –dport 80 -j DNAT –to-destination 192.168.1.10
端口映射到内网的3389
iptables -t nat -I PREROUTING -p tcp –dport 3389 -j DNAT –to-destination 192.168.1.10:3389
Linux的iptables常用配置范例(2)的更多相关文章
- Linux的iptables常用配置范例(1)
以下是来自 http://wiki.ubuntu.org.cn/IptablesHowTo 上的配置说明 可以通过/sbin/iptables -F清除所有规则来暂时停止防火墙: (警告:这只适合在没 ...
- Linux的iptables常用配置范例(3)
编辑/etc/rc.local,加入iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -o eth1 -j MASQUERADE,外网口eth1为dhc ...
- Linux防火墙--IPtables企业级配置策略思路
一.防火墙简介 防火墙定义:是通过有机结合各类用于安全管理与筛选的软件和硬件设备,帮助计算机网络于其内.外网之间构建一道相对隔绝的保护屏障,以保护用户资料与信息安全性的一种技术. 防火墙发展应用:最早 ...
- Linux下iptables安全配置
Linux下配置IPTables,只开放特定端口,禁用其他网络. *filter :INPUT DROP [0:0] :FORWARD DROP [0:0] :OUTPUT ACCEPT [0:0] ...
- Linux防火墙iptables安装配置--使用远程工具Xmanager和ftp服务安装配置
一.linux关闭防火墙: a.用户直接在终端输入:service iptables stop 查看防火墙状况:service iptables status b.root用户在终端输 ...
- 高性能计算linux集群常用配置
1.检查超线程 查看线程数:grep siblings /proc/cpuinfo |uniq 查看物理核心数:grep cores /proc/cpuinfo |uniq 2.检查操作系统版本 ca ...
- iptables常用配置
常用的iptables模板 #!/bin/sh iptables -F iptables -X iptables -F -t mangle iptables -t mangle -X iptables ...
- linux之iptables常用命令
iptables详解 iptables -L 该命令会以列表的形式显示出当前使用的 iptables 规则,每一条规则前面的编号可以用来做为其它操作--例如删除操作--的参数,很有用 iptables ...
- linux 下 etc常用配置信息
这些都是比较有实用性的系统配置,收藏下,以备不时之需!以下是etc下重要配置文件解释: 1./etc/hosts #文件格式: IPaddress hostname aliases #文件功能: 提 ...
随机推荐
- 搭建Ubuntu下c/c++编译环境【转】
1. 安装Ubuntu. 2. 安装gcc 方法一: sudo apt-get install build-essential 安装完了可以执行 gcc--version的 ...
- SQL SERVER中强制类型转换cast和convert的区别
在SQL SERVER中,cast和convert函数都可用于类型转换,其功能是相同的, 只是语法不同. cast一般更容易使用,convert的优点是可以格式化日期和数值. 代码 select CO ...
- Java中的设计模式
1 单例模式和多例模式 一.单例模式和多例模式说明:1. 单例模式和多例模式属于对象模式.2. 单例模式的对象在整个系统中只有一份,多例模式可以有多个实例.(单例只会创 ...
- C++11 左值与右值
概念 左值:表达式结束后依然存在的对象 右值:表达式结束后就不存在的临时对象 2.如何判断左值和右值 能不能对表达式取地址,如果能,就是左值,否则就是右值 3.对下面的语句进行区分 int a = 3 ...
- UVA 1400 线段树
input n m 1<=n,m<=500000 a1 a2 ... an |ai|<=1e9 m行查询 每行一对a b output 对于每对a b输出区间[a,b]中最小连续和x ...
- 转载 Deep learning:五(regularized线性回归练习)
前言: 本节主要是练习regularization项的使用原则.因为在机器学习的一些模型中,如果模型的参数太多,而训练样本又太少的话,这样训练出来的模型很容易产生过拟合现象.因此在模型的损失函数中,需 ...
- hbase建索引的两种方式
转载自http://blog.csdn.net/ryantotti/article/details/13295325 在二级索引的实现技术上一般有几个方案: 1. 表索引 使用单独的hbas ...
- Windows下Apache+Django+mod_wsgi的static和media问题处理
配置好了Apache可以访问Django工程了(参见前篇:Windows编译安装mod_wsgi,配合使用Django+Apahce) 但是Django中的static.media等文件Apache是 ...
- Java 堆内存(Heap)[转]
将jvm内存很不错的文章,转自 堆(Heap)又被称为:优先队列(Priority Queue),是计算机科学中一类特殊的数据结构的统称.堆通常是一个可以被看做一棵树的数组对象.在队列中,调度程序反复 ...
- 关于this指针理解
1. this指针的用处: 一个对象的this指针并不是对象本身的一部分,不会影响sizeof(对象)的结果.this作用域是在类内部,当在类的非静态成员函数中访问类的非静态成员的时候,编译器会自动将 ...