TShopping

 找回密碼
 註冊
搜索
查看: 2815|回復: 6

[教學] 簡易 NAT 與 Firewall 設定

    [複製鏈接]
發表於 2008-5-19 11:50:03 | 顯示全部樓層 |閱讀模式
 
Push to Facebook Push to Plurk Push to Twitter 
#!/bin/bash

# ============================================================================

# network interface define

INTERNET_NIC=eth0 # to internet, eg eth0 or ppp+
INSIDE_NIC=eth1 # lan

INSIDE_NET=192.168.1.0/24 # internal network area

# ============================================================================

# firewall module

modprobe ip_tables
modprobe ip_conntrack
modprobe ip_conntrack_ftp
modprobe ip_conntrack_irc

modprobe ip_nat_ftp
modprobe ip_nat_irc

# ============================================================================

# reset main firewall policy

iptables -P INPUT DROP
iptables -P OUTPUT ACCEPT
iptables -P FORWARD DROP

iptables -t nat -P PREROUTING ACCEPT
iptables -t nat -P POSTROUTING ACCEPT
iptables -t nat -P OUTPUT ACCEPT

iptables -t mangle -P INPUT ACCEPT
iptables -t mangle -P OUTPUT ACCEPT
iptables -t mangle -P FORWARD ACCEPT
iptables -t mangle -P PREROUTING ACCEPT
iptables -t mangle -P POSTROUTING ACCEPT
iptables -t mangle -P OUTPUT ACCEPT

# ============================================================================

# reset main firewall rule

iptables -F -t filter
iptables -F -t nat
iptables -F -t mangle

iptables -X -t filter
iptables -X -t nat
iptables -X -t mangle

# ============================================================================

# allow ESTABLISHED,RELATED packet and lo loopback

iptables -A INPUT -i lo -j ACCEPT
iptables -A INPUT -i $INSIDE_NIC -j ACCEPT
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

# ============================================================================

# drop port scan ...

# NMAP FIN/URG/PSH
iptables -A INPUT -p tcp --tcp-flags ALL FIN,URG,PSH -j DROP

# Xmas Tree
iptables -A INPUT -p tcp --tcp-flags ALL ALL -j DROP

# Another Xmas Tree
iptables -A INPUT -p tcp --tcp-flags ALL SYN,RST,ACK,FIN,URG -j DROP

# Null Scan(possibly)
iptables -A INPUT -p tcp --tcp-flags ALL NONE -j DROP

# SYN/RST
iptables -A INPUT -p tcp --tcp-flags SYN,RST SYN,RST -j DROP

# SYN/FIN -- Scan(possibly)

iptables -A INPUT -p tcp --tcp-flags SYN,FIN SYN,FIN -j DROP

# ============================================================================

# main firewall rule, open ports...

iptables -A INPUT -i $INTERNET_NIC -p tcp --dport 22 -m state --state NEW -j ACCEPT

iptables -A INPUT -i $INTERNET_NIC -p tcp --dport 80 -m state --state NEW -j ACCEPT

# ============================================================================

# nat

# forward rule

echo "1" > /proc/sys/net/ipv4/ip_forward

iptables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A FORWARD -s $INSIDE_NET -j ACCEPT

iptables -A POSTROUTING -t nat -o $INTERNET_NIC -j MASQUERADE

#

 

臉書網友討論
發表於 2013-11-10 00:57:28 | 顯示全部樓層
自己知道了  

版主招募中

發表於 2013-12-16 18:03:44 | 顯示全部樓層
爱死你了,这么好的帖子要顶的


發表於 2014-8-28 20:39:12 | 顯示全部樓層


   路过 看看。


發表於 2016-2-16 14:49:22 | 顯示全部樓層
先顶后看~~












开发会员系统


您需要登錄後才可以回帖 登錄 | 註冊 |

本版積分規則



Archiver|手機版|小黑屋|免責聲明|TShopping

GMT+8, 2016-12-7 10:08 , Processed in 0.059895 second(s), 22 queries .

本論壇言論純屬發表者個人意見,與 TShopping綜合論壇 立場無關 如有意見侵犯了您的權益 請寫信聯絡我們。

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回復 返回頂部 返回列表