一个经典实用的iptables shell脚本
这个iptables脚本不错,很实用,根据实际应用改一下就可以自己用。分享出来,供大家来参考。原作者佚名。源代码如下:
#!/bin/sh # modprobe ipt_MASQUERADE modprobe ip_conntrack_ftp modprobe ip_nat_ftp iptables -F iptables -t nat -F iptables -X iptables -t nat -X ###########################INPUT键################################### iptables -P INPUT DROP iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT iptables -A INPUT -p tcp -m multiport --dports 110,80,25 -j ACCEPT iptables -A INPUT -p tcp -s 192.168.0.0/24 --dport 139 -j ACCEPT #允许内网samba,smtp,pop3,连接 iptables -A INPUT -i eth1 -p udp -m multiport --dports 53 -j ACCEPT #允许dns连接 iptables -A INPUT -p tcp --dport 1723 -j ACCEPT iptables -A INPUT -p gre -j ACCEPT #允许外网***连接 iptables -A INPUT -s 192.186.0.0/24 -p tcp -m state --state ESTABLISHED,RELATED -j ACCEPT iptables -A INPUT -i ppp0 -p tcp --syn -m connlimit --connlimit-above 15 -j DROP #为了防止DOS太多连接进来,那么可以允许最多15个初始连接,超过的丢弃 iptables -A INPUT -s 192.186.0.0/24 -p tcp --syn -m connlimit --connlimit-above 15 -j DROP #为了防止DOS太多连接进来,那么可以允许最多15个初始连接,超过的丢弃 iptables -A INPUT -p icmp -m limit --limit 3/s -j LOG --log-level INFO --log-prefix "ICMP packet IN: " iptables -A INPUT -p icmp -j DROP #禁止icmp通信-ping 不通 iptables -t nat -A POSTROUTING -o ppp0 -s 192.168.0.0/24 -j MASQUERADE #内网转发 iptables -N syn-flood iptables -A INPUT -p tcp --syn -j syn-flood iptables -I syn-flood -p tcp -m limit --limit 3/s --limit-burst 6 -j RETURN iptables -A syn-flood -j REJECT #防止SYN*** 轻量 #######################FORWARD链########################### iptables -P FORWARD DROP iptables -A FORWARD -p tcp -s 192.168.0.0/24 -m multiport --dports 80,110,21,25,1723 -j ACCEPT iptables -A FORWARD -p udp -s 192.168.0.0/24 --dport 53 -j ACCEPT iptables -A FORWARD -p gre -s 192.168.0.0/24 -j ACCEPT iptables -A FORWARD -p icmp -s 192.168.0.0/24 -j ACCEPT #允许 ***客户走***网络连接外网 iptables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT iptables -I FORWARD -p udp --dport 53 -m string --string "tencent" -m time --timestart 8:15 --timestop 12:30 --days Mon,Tue,Wed,Thu,Fri,Sat -j DROP #星期一到星期六的8:00-12:30禁止qq通信 iptables -I FORWARD -p udp --dport 53 -m string --string "TENCENT" -m time --timestart 8:15 --timestop 12:30 --days Mon,Tue,Wed,Thu,Fri,Sat -j DROP #星期一到星期六的8:00-12:30禁止qq通信 iptables -I FORWARD -p udp --dport 53 -m string --string "tencent" -m time --timestart 13:30 --timestop 20:30 --days Mon,Tue,Wed,Thu,Fri,Sat -j DROP iptables -I FORWARD -p udp --dport 53 -m string --string "TENCENT" -m time --timestart 13:30 --timestop 20:30 --days Mon,Tue,Wed,Thu,Fri,Sat -j DROP #星期一到星期六的13:30-20:30禁止QQ通信 iptables -I FORWARD -s 192.168.0.0/24 -m string --string "qq.com" -m time --timestart 8:15 --timestop 12:30 --days Mon,Tue,Wed,Thu,Fri,Sat -j DROP #星期一到星期六的8:00-12:30禁止qq网页 iptables -I FORWARD -s 192.168.0.0/24 -m string --string "qq.com" -m time --timestart 13:00 --timestop 20:30 --days Mon,Tue,Wed,Thu,Fri,Sat -j DROP #星期一到星期六的13:30-20:30禁止QQ网页 iptables -I FORWARD -s 192.168.0.0/24 -m string --string "ay2000.net" -j DROP iptables -I FORWARD -d 192.168.0.0/24 -m string --string "宽频影院" -j DROP iptables -I FORWARD -s 192.168.0.0/24 -m string --string "×××" -j DROP iptables -I FORWARD -p tcp --sport 80 -m string --string "广告" -j DROP #禁止ay2000.net,宽频影院,×××,广告网页连接 !但中文 不是很理想 iptables -A FORWARD -m ipp2p --edk --kazaa --bit -j DROP iptables -A FORWARD -p tcp -m ipp2p --ares -j DROP iptables -A FORWARD -p udp -m ipp2p --kazaa -j DROP #禁止BT连接 iptables -A FORWARD -p tcp --syn --dport 80 -m connlimit --connlimit-above 15 --connlimit-mask 24 ####################################################################### sysctl -w net.ipv4.ip_forward=1 &>/dev/null #打开转发 ####################################################################### sysctl -w net.ipv4.tcp_syncookies=1 &>/dev/null #打开 syncookie (轻量级预防 DOS ***) sysctl -w net.ipv4.netfilter.ip_conntrack_tcp_timeout_established=3800 &>/dev/null #设置默认 TCP 连接痴呆时长为 3800 秒(此选项可以大大降低连接数) sysctl -w net.ipv4.ip_conntrack_max=300000 &>/dev/null #设置支持最大连接树为 30W(这个根据你的内存和 iptables 版本来,每个 connection 需要 300 多个字节) ####################################################################### iptables -I INPUT -s 192.168.0.50 -j ACCEPT iptables -I FORWARD -s 192.168.0.50 -j ACCEPT
#192.168.0.50是我的机子,全部放行!
转载于:https://blog.51cto.com/navyaijm/816634
一个经典实用的iptables shell脚本相关推荐
- php的图像处理有哪些实际作用,PHP_一个经典实用的PHP图像处理类分享,本图像处理类可以完成对图片 - phpStudy...
一个经典实用的PHP图像处理类分享 本图像处理类可以完成对图片的缩放.加水印和裁剪的功能,支持多种图片类型的处理,缩放时进行优化等. /** file: image.class.php 类名为Imag ...
- 100个实用的 Linux Shell 脚本经典案例,收藏备用~
点击关注公众号,利用碎片时间学习 1)编写hello world脚本 #!/bin/bash # 编写hello world脚本 echo "Hello World!" 2)通过位 ...
- 一个iptables shell脚本
转自:http://www.ha97.com/4096.html #!/bin/sh # modprobe ipt_MASQUERADE modprobe ip_conntrack_ftp modpr ...
- linux脚本攻击,一个防DDOS攻击的SHELL脚本
当遇到DDOS的攻击时,可以考虑封IP来源来暂时解决,但IP源变化多端,光靠手工添加不现实,所以写了个脚本,以实现自动添加.有需要的朋友,参考下吧. 1,防范ddos攻击的脚本 mkdir /root ...
- 如何让一个停不下来的shell脚本在规定时间内停下来?
1. 直接上命令:timeout 10 bash run.sh 之句话的意思是:让bash run.sh这个脚本最多跑10秒钟 2. 举个例子,写一个while循环脚本,让它输出1-10000 ...
- mysql 脚本 linux_MySQL的一些功能实用的Linux shell脚本分享
Memcached启动脚本 # vim /etc/init.d/memcached #!/bin/bash #============================================= ...
- 一个很牛的 linux shell脚本编写的俄罗斯方块游戏实例代码,非常牛逼
本文转载:https://www.qiansw.com/shell-tetris-game.html 可以将下面代码直接保存为sh文件. #!/bin/bash # Tetris Game # 1 ...
- mysql shell命令和作用_MySQL的一些功能实用的Linux shell脚本分享
#!/bin/bash#=======================================================================================# ...
- linux脚本简介,Linux Shell脚本简介
Shell 诞生于 Unix,是与 Unix/Linux 交互的工具,单独地学习 Shell 是没有意义的,请先参考Unix/Linux入门教程,了解 Unix/Lunix 基础. 近几年来,Shel ...
- linux连接oracle的日志,linux shell脚本连接oracle查询数据插入文件和日志文件中
#!/bin/sh sqlplus "用户名/密码@数据库"< sqlplus "用户名/密码"< sqlplus -S "用户名/密码& ...
最新文章
- 解决Wireshark 服务运行于非默认端口问题
- Specification使用in
- python求正方体体积_「高中数学」简单几何体的面积与体积相关知识点整理+例题...
- Java面试题详解二:java中的关键字
- 结构体符号重载(简单版+手动扩栈方法)
- html ui 下拉列表,html - 如何给样式Material-ui选择字段下拉菜单?
- 韩顺平oracle教学笔记,韩顺平 - 玩转oracle教程笔记(转)
- Pycharm汉化后设置无法打开解决办法
- 网易云ncm文件转mp3
- 停止内耗:过一个不累的人生-读书笔记
- 窥尽大数据背后被遮掩起来的财富
- 使用D3D8实现2D图形显示技术
- 安装配置群晖 DS918+ NAS及常用技巧
- JavaScript和CSS实现详情图片显示大图特效
- A20 Plus(esp8266与A6C)拍照传输图片
- 视频编解码中的temporal id和layer id(x265,HM,VTM)
- android手机 u盘 启动不起来,安卓手机不识别U盘、不能连接PC的处理方法
- 基于matlab的三体运动模拟
- 计算机方向学术入门经验,EI、SCI、顶级会议、期刊详解(转)
- 线路子区段划分示意图
热门文章
- 普通平键的主要尺寸有_你还在为怎样选择床上用品尺寸而烦恼吗?床品尺寸大解析帮到你!...
- oracle如何查找谁删除了数据_一文看懂Oracle是如何闪回数据库的?
- Java学习之路 之 容易混淆篇
- L1-032 Left-pad (20 分)—团体程序设计天梯赛
- 仿XP系统的任务栏菜单
- 816D.Karen and Test 杨辉三角 规律 组合
- 新浪微博客户端(26)-添加转发评论工具条
- 递归装饰器正则运算模块
- Jmeter参数化HTTP request中Send Files With The Request的文件路径和文件名
- pl/sql中添加 shortcuts插件