iptables防火墙

iptables防火墙

安装可以使用RPM安装,下载最新的版本,然后./configure --prifix=/some/path/ && make && make install 就可以了。重点在如何step by step 简历一个自己的iptables防火墙。

首先在使用iptables之前敲入一下两条命令

# iptables -F    #这句话的意思是清空所有的链

# iptables -X   #这句话的意思是清空所有自定义的链

以上两条的含义你可以简单的认为是iptables的初始化命令,无需深入。

下面我们将要开始建立一个iptables防火墙了。我们的做法是,默认所有的数据都丢弃,除非我认为满足条件的我才接受,有针对的打开我们需要的端口,无疑是很安全的一种做法。下面两句话可以定义默认全部丢弃数据包:

> iptables -P INPUT DROP

> iptables -P OUTPUT DROP

-P参数的意思是policy,翻译成策略~那么这两句话就好理解了。

第一句的意思是:

输入(INPUT)的数据包默认的策略(-P)是丢弃(DROP)的

第二句的意思是:

输出(OUTPUT)的数据包默认的策略(-P)是丢弃(DROP)的

用shell脚本写下一下内容,然后再执行这个脚本,把相应的内容写到相应的链中

#!/bin/bash

#filename:iptabshell

#

iptables -A INPUT -p icmp --icmp-type any -j ACCEPT     //允许icmp包进入

iptables -A INPUT -s localhost -d localhost -j ACCEPT   //允许本地的数据包

iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT   //允许已经建立和相关的数据包进入

iptables -A OUTPUT -p icmp --icmp any -j ACCEPT   //允许icmp包出去

iptables -A OUTPUT -s localhost -d localhost -j ACCEPT    //允许本地数据包出去

iptables -A OUTPUT -m state --state ESTABLISHED,RELATED -j ACCEPT   //允许已经建立和相关的数据包出去

#http&https

iptables -A INPUT -p tcp --dport 80 -j ACCEPT     //允许http的数据进入

iptables -A OUTPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

//允许已经建立的数据包出去

iptables -A OUTPUT -p tcp -m state --state NEW --dport 80 -j ACCEPT

                                      //允许http的数据出去

iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT                                     //允许已经建立的数据包出去

iptables -A INPUT -p tcp --dport 443 -j ACCEPT    //允许https数据进入

iptables -A OUTPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

iptables -A OUTPUT -p tcp -m state --state NEW --dport 443 -j ACCEPT

iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

#dns

iptables -A INPUT -m state --state NEW -m tcp -p tcp --dport 53 -j ACCEPT

//允许dns中的tcp数据包进入

iptables -A INPUT -m state --state NEW -m udp -p udp --dport 53 -j ACCEPT

      //允许dns中的tcp数据包进入

iptables -A OUTPUT -p udp --dport 53 -j ACCEPT

//允许dns中的tcp数据包出去

#ssh

iptables -A INPUT -p tcp --dport 22 -j ACCEPT     //允许ssh的数据进入

iptables -A OUTPUT -p tcp --dport 22 -j ACCEPT    //允许ssh的数据出去

#smtp

iptables -A INPUT -p tcp --dport 25 -j ACCEPT     //允许smtp的数据进入

iptables -A OUTPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

          

iptables -A OUTPUT -p tcp --dport 25 -j ACCEPT    //允许smtp的数据进入

iptables -A OUTPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

#samba

iptables -A INPUT -p udp --dport 137 -j ACCEPT

iptables -A INPUT -p udp --dport 138 -j ACCEPT

iptables -A INPUT -p tcp --dport 139 -j ACCEPT

iptables -A INPUT -p tcp --dport 445 -j ACCEPT

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值