全球主机交流论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

CeraNetworks网络延迟测速工具IP归属甄别会员请立即修改密码
查看: 2933|回复: 5
打印 上一主题 下一主题

[疑问] Setting chains to policy ACCEPT: security raw nat mangle fi[FAILED]

[复制链接]
跳转到指定楼层
1#
发表于 2011-12-13 14:50:20 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
linode的 vps  iptables启动报错

之前他们提供的解决方法如下:
cd /etc/init.d
mv iptables ~/iptables.bak
wget http://epoxie.net/12023.txt && cat 12023.txt | tr -d '\r' > iptables
chmod +x iptables
rm -rf 12023.txt

Now, "iptables" should now start successfully:

service iptables restart

现在  http://epoxie.net/12023.txt  这个已经404了 各位有何解决办法么?

谢谢
2#
发表于 2011-12-13 14:51:09 | 只看该作者
楼下来
3#
发表于 2011-12-13 14:54:23 | 只看该作者

  1. #!/bin/sh
  2. #
  3. # iptables        Start iptables firewall
  4. #
  5. # chkconfig: 2345 08 92
  6. # description:        Starts, stops and saves iptables firewall
  7. #
  8. # config: /etc/sysconfig/iptables
  9. # config: /etc/sysconfig/iptables-config

  10. # Source function library.
  11. . /etc/init.d/functions

  12. IPTABLES=iptables
  13. IPTABLES_DATA=/etc/sysconfig/$IPTABLES
  14. IPTABLES_CONFIG=/etc/sysconfig/${IPTABLES}-config
  15. IPV=${IPTABLES%tables} # ip for ipv4 | ip6 for ipv6
  16. PROC_IPTABLES_NAMES=/proc/net/${IPV}_tables_names
  17. VAR_SUBSYS_IPTABLES=/var/lock/subsys/$IPTABLES

  18. if [ ! -x /sbin/$IPTABLES ]; then
  19.     echo -n $"/sbin/$IPTABLES does not exist."; warning; echo
  20.     exit 0
  21. fi

  22. if lsmod 2>/dev/null | grep -q ipchains ; then
  23.     echo -n $"ipchains and $IPTABLES can not be used together."; warning; echo
  24.     exit 1
  25. fi

  26. # Old or new modutils
  27. /sbin/modprobe --version 2>&1 | grep -q module-init-tools \
  28.     && NEW_MODUTILS=1 \
  29.     || NEW_MODUTILS=0

  30. # Default firewall configuration:
  31. IPTABLES_MODULES=""
  32. IPTABLES_MODULES_UNLOAD="yes"
  33. IPTABLES_SAVE_ON_STOP="no"
  34. IPTABLES_SAVE_ON_RESTART="no"
  35. IPTABLES_SAVE_COUNTER="no"
  36. IPTABLES_STATUS_NUMERIC="yes"

  37. # Load firewall configuration.
  38. [ -f "$IPTABLES_CONFIG" ] && . "$IPTABLES_CONFIG"

  39. rmmod_r() {
  40.     # Unload module with all referring modules.
  41.     # At first all referring modules will be unloaded, then the module itself.
  42.     local mod=$1
  43.     local ret=0
  44.     local ref=

  45.     # Get referring modules.
  46.     # New modutils have another output format.
  47.     [ $NEW_MODUTILS = 1 ] \
  48.         && ref=`lsmod | awk "/^${mod}/ { print \\\$4; }" | tr ',' ' '` \
  49.         || ref=`lsmod | grep ^${mod} | cut -d "[" -s -f 2 | cut -d "]" -s -f 1`

  50.     # recursive call for all referring modules
  51.     for i in $ref; do
  52.         rmmod_r $i
  53.         let ret+=$?;
  54.     done

  55.     # Unload module.
  56.     # The extra test is for 2.6: The module might have autocleaned,
  57.     # after all referring modules are unloaded.
  58.     if grep -q "^${mod}" /proc/modules ; then
  59.         modprobe -r $mod > /dev/null 2>&1
  60.         let ret+=$?;
  61.     fi

  62.     return $ret
  63. }

  64. flush_n_delete() {
  65.     # Flush firewall rules and delete chains.
  66.     [ -e "$PROC_IPTABLES_NAMES" ] || return 1

  67.     # Check if firewall is configured (has tables)
  68.     tables=`cat $PROC_IPTABLES_NAMES 2>/dev/null`
  69.     [ -z "$tables" ] && return 1

  70.     echo -n $"Flushing firewall rules: "
  71.     ret=0
  72.     # For all tables
  73.     for i in $tables; do
  74.         # Flush firewall rules.
  75.         $IPTABLES -t $i -F;
  76.         let ret+=$?;

  77.         # Delete firewall chains.
  78.         $IPTABLES -t $i -X;
  79.         let ret+=$?;

  80.         # Set counter to zero.
  81.         $IPTABLES -t $i -Z;
  82.         let ret+=$?;
  83.     done

  84.     [ $ret -eq 0 ] && success || failure
  85.     echo
  86.     return $ret
  87. }

  88. set_policy() {
  89.     # Set policy for configured tables.
  90.     policy=$1

  91.     # Check if iptable module is loaded
  92.     [ ! -e "$PROC_IPTABLES_NAMES" ] && return 1

  93.     # Check if firewall is configured (has tables)
  94.     tables=`cat $PROC_IPTABLES_NAMES 2>/dev/null`
  95.     [ -z "$tables" ] && return 1

  96.     echo -n $"Setting chains to policy $policy: "
  97.     ret=0
  98.     for i in $tables; do
  99.         echo -n "$i "
  100.         case "$i" in
  101.            security)
  102.                     $IPTABLES -t security -P INPUT $policy \
  103.                     && $IPTABLES -t security -P OUTPUT $policy \
  104.                     && $IPTABLES -t security -P FORWARD $policy \
  105.                    || let ret+=1
  106.                 ;;
  107.             raw)
  108.                 $IPTABLES -t raw -P PREROUTING $policy \
  109.                     && $IPTABLES -t raw -P OUTPUT $policy \
  110.                     || let ret+=1
  111.                 ;;
  112.             filter)
  113.                 $IPTABLES -t filter -P INPUT $policy \
  114.                     && $IPTABLES -t filter -P OUTPUT $policy \
  115.                     && $IPTABLES -t filter -P FORWARD $policy \
  116.                     || let ret+=1
  117.                 ;;
  118.             nat)
  119.                 $IPTABLES -t nat -P PREROUTING $policy \
  120.                     && $IPTABLES -t nat -P POSTROUTING $policy \
  121.                     && $IPTABLES -t nat -P OUTPUT $policy \
  122.                     || let ret+=1
  123.                 ;;
  124.             mangle)
  125.                 $IPTABLES -t mangle -P PREROUTING $policy \
  126.                     && $IPTABLES -t mangle -P POSTROUTING $policy \
  127.                     && $IPTABLES -t mangle -P INPUT $policy \
  128.                     && $IPTABLES -t mangle -P OUTPUT $policy \
  129.                     && $IPTABLES -t mangle -P FORWARD $policy \
  130.                     || let ret+=1
  131.                 ;;
  132.             *)
  133.                 let ret+=1
  134.                 ;;
  135.         esac
  136.     done

  137.     [ $ret -eq 0 ] && success || failure
  138.     echo
  139.     return $ret
  140. }

  141. start() {
  142.     # Do not start if there is no config file.
  143.     [ -f "$IPTABLES_DATA" ] || return 1

  144.     echo -n $"Applying $IPTABLES firewall rules: "

  145.     OPT=
  146.     [ "x$IPTABLES_SAVE_COUNTER" = "xyes" ] && OPT="-c"

  147.     $IPTABLES-restore $OPT $IPTABLES_DATA
  148.     if [ $? -eq 0 ]; then
  149.         success; echo
  150.     else
  151.         failure; echo; return 1
  152.     fi
  153.    
  154.     # Load additional modules (helpers)
  155.     if [ -n "$IPTABLES_MODULES" ]; then
  156.         echo -n $"Loading additional $IPTABLES modules: "
  157.         ret=0
  158.         for mod in $IPTABLES_MODULES; do
  159.             echo -n "$mod "
  160.             modprobe $mod > /dev/null 2>&1
  161.             let ret+=$?;
  162.         done
  163.         [ $ret -eq 0 ] && success || failure
  164.         echo
  165.     fi
  166.    
  167.     touch $VAR_SUBSYS_IPTABLES
  168.     return $ret
  169. }

  170. stop() {
  171.     # Do not stop if iptables module is not loaded.
  172.     [ -e "$PROC_IPTABLES_NAMES" ] || return 1

  173.     flush_n_delete
  174.     set_policy ACCEPT
  175.    
  176.     if [ "x$IPTABLES_MODULES_UNLOAD" = "xyes" ]; then
  177.         echo -n $"Unloading $IPTABLES modules: "
  178.         ret=0
  179.         rmmod_r ${IPV}_tables
  180.         let ret+=$?;
  181.         rmmod_r ${IPV}_conntrack
  182.         let ret+=$?;
  183.         [ $ret -eq 0 ] && success || failure
  184.         echo
  185.     fi
  186.    
  187.     rm -f $VAR_SUBSYS_IPTABLES
  188.     return $ret
  189. }

  190. save() {
  191.     # Check if iptable module is loaded
  192.     [ ! -e "$PROC_IPTABLES_NAMES" ] && return 1

  193.     # Check if firewall is configured (has tables)
  194.     tables=`cat $PROC_IPTABLES_NAMES 2>/dev/null`
  195.     [ -z "$tables" ] && return 1

  196.     echo -n $"Saving firewall rules to $IPTABLES_DATA: "

  197.     OPT=
  198.     [ "x$IPTABLES_SAVE_COUNTER" = "xyes" ] && OPT="-c"

  199.     ret=0
  200.     TMP_FILE=`/bin/mktemp -q /tmp/$IPTABLES.XXXXXX` \
  201.         && chmod 600 "$TMP_FILE" \
  202.         && $IPTABLES-save $OPT > $TMP_FILE 2>/dev/null \
  203.         && size=`stat -c '%s' $TMP_FILE` && [ $size -gt 0 ] \
  204.         || ret=1
  205.     if [ $ret -eq 0 ]; then
  206.         if [ -e $IPTABLES_DATA ]; then
  207.             cp -f $IPTABLES_DATA $IPTABLES_DATA.save \
  208.                 && chmod 600 $IPTABLES_DATA.save \
  209.                 || ret=1
  210.         fi
  211.         if [ $ret -eq 0 ]; then
  212.             cp -f $TMP_FILE $IPTABLES_DATA \
  213.                 && chmod 600 $IPTABLES_DATA \
  214.                 || ret=1
  215.         fi
  216.     fi
  217.     [ $ret -eq 0 ] && success || failure
  218.     echo
  219.     rm -f $TMP_FILE
  220.     return $ret
  221. }

  222. status() {
  223.     tables=`cat $PROC_IPTABLES_NAMES 2>/dev/null`

  224.     # Do not print status if lockfile is missing and iptables modules are not
  225.     # loaded.
  226.     # Check if iptable module is loaded
  227.     if [ ! -f "$VAR_SUBSYS_IPTABLES" -a -z "$tables" ]; then
  228.         echo $"Firewall is stopped."
  229.         return 1
  230.     fi

  231.     # Check if firewall is configured (has tables)
  232.     if [ ! -e "$PROC_IPTABLES_NAMES" ]; then
  233.         echo $"Firewall is not configured. "
  234.         return 1
  235.     fi
  236.     if [ -z "$tables" ]; then
  237.         echo $"Firewall is not configured. "
  238.         return 1
  239.     fi

  240.     NUM=
  241.     [ "x$IPTABLES_STATUS_NUMERIC" = "xyes" ] && NUM="-n"
  242.     VERBOSE=
  243.     [ "x$IPTABLES_STATUS_VERBOSE" = "xyes" ] && VERBOSE="--verbose"
  244.     COUNT=
  245.     [ "x$IPTABLES_STATUS_LINENUMBERS" = "xyes" ] && COUNT="--line-numbers"

  246.     for table in $tables; do
  247.         echo $"Table: $table"
  248.         $IPTABLES -t $table --list $NUM $VERBOSE $COUNT && echo
  249.     done

  250.     return 0
  251. }

  252. restart() {
  253.     [ "x$IPTABLES_SAVE_ON_RESTART" = "xyes" ] && save
  254.     stop
  255.     start
  256. }

  257. case "$1" in
  258.     start)
  259.         stop
  260.         start
  261.         RETVAL=$?
  262.         ;;
  263.     stop)
  264.         [ "x$IPTABLES_SAVE_ON_STOP" = "xyes" ] && save
  265.         stop
  266.         RETVAL=$?
  267.         ;;
  268.     restart)
  269.         restart
  270.         RETVAL=$?
  271.         ;;
  272.     condrestart)
  273.         [ -e "$VAR_SUBSYS_IPTABLES" ] && restart
  274.         ;;
  275.     status)
  276.         status
  277.         RETVAL=$?
  278.         ;;
  279.     panic)
  280.         flush_n_delete
  281.         set_policy DROP
  282.         RETVAL=$?
  283.         ;;
  284.     save)
  285.         save
  286.         RETVAL=$?
  287.         ;;
  288.     *)
  289.         echo $"Usage: $0 {start|stop|restart|condrestart|status|panic|save}"
  290.         exit 1
  291.         ;;
  292. esac
复制代码
4#
发表于 2011-12-13 14:54:35 | 只看该作者
5#
 楼主| 发表于 2011-12-13 14:55:16 | 只看该作者
楼上大哥,对菜鸟能不能说的明白点。。
6#
发表于 2011-12-13 14:57:13 | 只看该作者
原帖由 电工 于 2011-12-13 14:55 发表
楼上大哥,对菜鸟能不能说的明白点。。

改用http://epoxie.net/14867.txt
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|全球主机交流论坛

GMT+8, 2025-10-13 14:50 , Processed in 0.063593 second(s), 10 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表