Linux中iptables防火墙配置实例分享
来源:互联网 发布:水光面膜怎么样 知乎 编辑:程序博客网 时间:2024/05/12 09:38
转自:http://www.jbxue.com/LINUXjishu/9827.html
iptables -I OUTPUT -d 192.168.1.2 -j DROP// 禁止往外向192.168.1.2的数据
iptables -F// 去除所有iptables规则,立即生效
iptables -L -n// 查看所有iptables规则
linux中iptables防火墙的配置原则:
iptabls规则是从上往下应用,当找到能通过的规则,不管下面是否有规则冲突,也一样通过。
eth0 连接内部网络的网卡
eth1 连接外部网络的网卡
lo 本地环路
eth1 连接外部网络的网卡
lo 本地环路
1,丢弃所有来自外网的ftp包,内网例外
复制代码代码示例:
iptables -A -i lo -j ACCEPT(允许本机内部所有网络通信,必须的)
iptables -A -i eht0 -p tcp --dport 21 -j ACCEPT(在本机开放21端口,即ftp控制端口)
iptables -A -i eth0 -p tcp --dport 20 -j ACCEPT(在本机开放20端口,即ftp传输端口)
iptables -A -i eth1 -j DROP(禁止所有数据包通过){禁止外部ftp}
iptables -A -i eht0 -p tcp --dport 21 -j ACCEPT(在本机开放21端口,即ftp控制端口)
iptables -A -i eth0 -p tcp --dport 20 -j ACCEPT(在本机开放20端口,即ftp传输端口)
iptables -A -i eth1 -j DROP(禁止所有数据包通过){禁止外部ftp}
2,允许ssh禁止telnet
复制代码代码示例:
iptables -A -i lo -j ACCEPT(允许本机内部所有网络通信,必须的)
iptables -A -i eth0 -p tcp --dport 22 -j ACCEPT
iptables -A -i eth1 -p tcp --dport 22 -j ACCEPT
(在本机开放22端口,即ssh服务端口)
iptables -A -i eth1 -p tcp --dport 23 -j DROP(在本机关闭23端口,即telnet服务端口)或者用iptables -A -i eth0 -j DROP
iptables -A -i eth0 -p tcp --dport 22 -j ACCEPT
iptables -A -i eth1 -p tcp --dport 22 -j ACCEPT
(在本机开放22端口,即ssh服务端口)
iptables -A -i eth1 -p tcp --dport 23 -j DROP(在本机关闭23端口,即telnet服务端口)或者用iptables -A -i eth0 -j DROP
3,禁止使用ping命令,ping本机
复制代码代码示例:
iptables -A -p icmp --icmp-type 8 -s 0/0 -j DROP(0/0所有网络)
iptables -A -p icmp --icmp-type 0 -s 0/0 -j ACCEPT
iptables -A OUTPUT -p icmp --icmp-type 0 -s 192.168.29.1(本机ip) -j DROP
iptables -A OUTPUT -p icmp --icmp-type 8 -s 192.168.29.1 -j ACCEPT
iptables -A -p icmp --icmp-type 0 -s 0/0 -j ACCEPT
iptables -A OUTPUT -p icmp --icmp-type 0 -s 192.168.29.1(本机ip) -j DROP
iptables -A OUTPUT -p icmp --icmp-type 8 -s 192.168.29.1 -j ACCEPT
这样的配置是你能ping别人,别人不能ping自己的主机。
4,禁止访问21端口(ftp)和80端口(web)
复制代码代码示例:
iptables -A -i eth1 -p tcp --dprot 21 -j DROP
iptables -A -i eth0 -p tcp --dprot 21 -j DROP
iptables -A -i eth1 -p tcp --dprot 80 -j DROP
iptables -A -i eth0 -p tcp --dprot 80 -j DROP
iptables -A -i eth0 -p tcp --dprot 21 -j DROP
iptables -A -i eth1 -p tcp --dprot 80 -j DROP
iptables -A -i eth0 -p tcp --dprot 80 -j DROP
5,禁止所有udp端口
复制代码代码示例:
iptables -A -i eth0 -p udp -j DROP
iptables -A -i eth1 -p udp -j DROP
iptables -A -i eth1 -p udp -j DROP
6,禁止外部邮件通信,内部允许(禁止pop3,110和smtp,25)
复制代码代码示例:
iptables -A -i eth0 -p tcp --dprot 25 -j ACCEPT
iptables -A -i eth0 -p tcp --dprot 110 -j ACCEPT
iptables -A OUTPUT -i eth1 -p tcp --sprot 25 -j DROP
iptables -A OUTPUT -i eth1 -p tcp --sprot 110 -j DROP
iptables -A -i eth0 -p tcp --dprot 110 -j ACCEPT
iptables -A OUTPUT -i eth1 -p tcp --sprot 25 -j DROP
iptables -A OUTPUT -i eth1 -p tcp --sprot 110 -j DROP
7,禁止2个特定网络访问本机
复制代码代码示例:
iptables -A -i eth1 -s 192.168.1.0/24 -j DROP
iptables -A -i eth1 -s 172.16.0.0/16 -j DROP
iptables -A -i eth1 -s 172.16.0.0/16 -j DROP
8,允许从特的端口进入,但禁止对外
复制代码代码示例:
iptables -A -i eht1 --dport [端口号] -j ACCEPT
iptables -A OUTPUT -i eht1 --dport [端口号] -j DROP
iptables -A OUTPUT -i eht1 --dport [端口号] -j DROP
说明:
以上的iptables防火墙规则,大家在测试时,尽量选择本机,切不可直接就在生产环境的机器上运用,以免带来不必要的问题。
- Linux中iptables防火墙配置实例分享
- linux配置防火墙iptables实例分享
- Linux 中使用iptables配置防火墙
- Linux 防火墙iptables (五)用iptables为公司配置防火墙实例(实战)
- linux iptables 防火墙常用实例
- Linux-iptables配置-防火墙配置
- Linux iptables 防火墙的配置
- linux操作系统防火墙iptables配置
- Linux防火墙iptables配置详解
- linux防火墙iptables的配置
- iptables Linux防火墙配置工具
- linux防火墙的配置iptables
- 分享一例iptables 防火墙配置
- Fedora17中iptables防火墙配置
- linux 中防火墙配置 iptables 命令参数的含义介绍
- 嵌入式 iptables防火墙常用配置规则实例
- 嵌入式 iptables防火墙配置规则实例分析
- 用Linux+iptables构建防火墙实例
- Installing Backtrack5 tools + menu in Ubuntu 10.10
- Git Gui 查看分支历史的时候中文显示乱码
- IOS开发之关键字category详解
- ubuntu 下mysql安装
- Canvas上写字drawText -- 确定字符串居中位置
- Linux中iptables防火墙配置实例分享
- Android性能优化案例研究
- 【Android】Android之Activity的onSaveInstanceState和onRestoreInstanceState
- spring 笔记之 web.xml
- JQuery树插件---zTree使用感悟
- 相同MAC地址,相同IP的两天电脑为什么可以同时上网互不影响(转自Nothel的blog)
- 十大免费移动程序测试框架(Android/iOS)
- MySQL索引背后的数据结构及算法原理
- 【机器学习-斯坦福】学习笔记22——典型关联分析(Canonical Correlation Analysis)