歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux教程 >> 網吧使用的Nat+Iptables+Squid的腳本

網吧使用的Nat+Iptables+Squid的腳本

日期:2017/2/28 17:48:41   编辑:Linux教程
#!/bin/bash
  # 飄飄的風於2003年7月26日修改,端口影射成功。
  
  ###---------------------###
  #以下是定義變數
  ###--------------------###
  
  PATH=/sbin:/usr/sbin:/bin:/usr/bin
  RC_SQUID=/etc/rc.d/init.d/squid
  EXT_IF=eth1
  #外網接口,確定網卡,如果是撥號就用ppp0
  INT_IF=eth0
  LAN_IP_RANGE="192.168.0.0/24"
  STATIC_IP="80.234.71.88"
  TRUSTED_TCP_PORT="22 25 53 80 110 143 443 993 995 3389"
  TRUSTED_UDP_PORT="53 3389"
  ALLOWED_ICMP="0 3 3/4 4 11 12 14 16 18"
  
  ###--------------------------------------------------------------------###
  #確定iptables安裝情況
  ###--------------------------------------------------------------------###
  
  which iptables &>/dev/null || {
  echo
  echo "$(basename $0): iptables程序沒有找到"
  echo "請先安裝好這個程序."
  echo
  exit 1
  }
  
  ###--------------------------------------------------------------------###
  #廢掉ipchains,這是針對RedHat以前的版本,新版已經把iptables嵌到內核裡了
  ###--------------------------------------------------------------------###
  
  lsmod | grep ipchains &>/dev/null && {
  echo "正在廢掉ipchains服務........."
  rmmod ipchains
  }
  
  ###--------------------------------------------------------------------###
  #裝載模塊modules
  ###--------------------------------------------------------------------###
  
  echo "模塊正在載人......"
  modprobe ip_tables &>/dev/null || {
  echo -n "$(basename $0): ip_tables模塊載人失敗"
  echo "請檢查"
  exit 3
  }
  for file in /lib/modules/`uname -r`/kernel/net/ipv4/netfilter/ip_conntrack_*.o
  do
  module=$(basename $file)
  modprobe ${module%.*} &>/dev/null
  done
  for file in /lib/modules/`uname -r`/kernel/net/ipv4/netfilter/ip_nat_*.o
  do
  module=$(basename $file)
  modprobe ${module%.*} &>/dev/null
  done
Copyright © Linux教程網 All Rights Reserved