pastebin - collaborative debugging

pastebin is a collaborative debugging tool allowing you to share and modify code snippets while chatting on IRC, IM or a message board.

This site is developed to XHTML and CSS2 W3C standards. If you see this paragraph, your browser does not support those standards and you need to upgrade. Visit WaSP for a variety of options.

 >  > Запись оставлена OCTAGRAM 18.02.2018 в 05:26 Получить справку

Запись оставлена OCTAGRAM 18.02.2018 в 05:26
скачать | новая запись

  1. #!/bin/sh
  2. #              Written by Simon Richter <sjr@debian.org>
  3. #              modified by Jonathan Wiltshire <jmw@debian.org>
  4. #              with help from Christoph Anton Mitterer
  5. #
  6. ### BEGIN INIT INFO
  7. # Provides:          iptables-persistent
  8. # Required-Start:    mountkernfs $local_fs
  9. # Required-Stop:     $local_fs
  10. # Default-Start:     2 3 4 5
  11. # Default-Stop:      0 1 6
  12. # X-Start-Before:    $network
  13. # X-Stop-After:      $network
  14. # Short-Description: Set up iptables rules
  15. # Description:       Loads/saves current iptables rules from/to /etc/iptables
  16. #  to provide a persistent rule set during boot time
  17. ### END INIT INFO
  18. . /lib/lsb/init-functions
  19.  
  20. rc=0
  21.  
  22. load_rules()
  23. {
  24.         log_action_begin_msg "Loading ip sets"
  25.  
  26.         #load IP sets
  27.         if [ ! -f /etc/iptables/sets ]; then
  28.                 log_action_cont_msg " skipping IP sets (no sets to load)"
  29.         else
  30.                 log_action_cont_msg " IP sets"
  31.                 ipset restore < /etc/iptables/sets 2> /dev/null
  32.                 # if [ $? -ne 0 ]; then
  33.                         # rc=1
  34.                 # fi
  35.         fi
  36.  
  37.         log_action_begin_msg "Loading iptables rules"
  38.  
  39.         #load IPv4 rules
  40.         if [ ! -f /etc/iptables/rules.v4 ]; then
  41.                 log_action_cont_msg " skipping IPv4 (no rules to load)"
  42.         else
  43.                 log_action_cont_msg " IPv4"
  44.                 iptables-restore < /etc/iptables/rules.v4 2> /dev/null
  45.                 if [ $? -ne 0 ]; then
  46.                         rc=1
  47.                 fi
  48.         fi
  49.  
  50.         #load IPv6 rules       
  51.         if [ ! -f /etc/iptables/rules.v6 ]; then
  52.                 log_action_cont_msg " skipping IPv6 (no rules to load)"
  53.         else
  54.                 log_action_cont_msg " IPv6"
  55.                 ip6tables-restore < /etc/iptables/rules.v6 2> /dev/null
  56.                 if [ $? -ne 0 ]; then
  57.                         rc=1
  58.                 fi
  59.         fi
  60.  
  61.         log_action_end_msg $rc
  62. }
  63.  
  64. save_rules()
  65. {
  66.         log_action_begin_msg "Saving sets"
  67.  
  68.         #save IP sets
  69.         #need at least ipt_set loaded:
  70.         /sbin/modprobe -q ipt_set
  71.         # if [ ! -f /proc/net/ip_tables_names ]; then
  72.         #       log_action_cont_msg " skipping IP sets (no modules loaded)"
  73.         if [ -x /sbin/ipset ]; then
  74.                 log_action_cont_msg " IP sets"
  75.                 ipset save > /etc/iptables/sets 2> /dev/null
  76.                 if [ $? -ne 0 ]; then
  77.                         rc=1
  78.                 fi
  79.         fi
  80.  
  81.         log_action_begin_msg "Saving rules"
  82.  
  83.         #save IPv4 rules
  84.         #need at least iptable_filter loaded:
  85.         /sbin/modprobe -q iptable_filter
  86.         if [ ! -f /proc/net/ip_tables_names ]; then
  87.                 log_action_cont_msg " skipping IPv4 (no modules loaded)"
  88.         elif [ -x /sbin/iptables-save ]; then
  89.                 log_action_cont_msg " IPv4"
  90.                 iptables-save > /etc/iptables/rules.v4
  91.                 if [ $? -ne 0 ]; then
  92.                         rc=1
  93.                 fi
  94.         fi
  95.  
  96.         #save IPv6 rules
  97.         #need at least ip6table_filter loaded:
  98.         /sbin/modprobe -q ip6table_filter
  99.         if [ ! -f /proc/net/ip6_tables_names ]; then
  100.                 log_action_cont_msg " skipping IPv6 (no modules loaded)"
  101.         elif [ -x /sbin/ip6tables-save ]; then
  102.                 log_action_cont_msg " IPv6"
  103.                 ip6tables-save > /etc/iptables/rules.v6
  104.                 if [ $? -ne 0 ]; then
  105.                         rc=1
  106.                 fi
  107.         fi
  108.  
  109.         log_action_end_msg $rc
  110. }
  111.  
  112. flush_rules()
  113. {
  114.         log_action_begin_msg "Flushing sets"
  115.  
  116.         if [ -x /sbin/ipset ]; then
  117.                 log_action_cont_msg " IP sets"
  118.                 /sbin/ipset -X
  119.         fi
  120.  
  121.         log_action_begin_msg "Flushing rules"
  122.  
  123.         if [ ! -f /proc/net/ip_tables_names ]; then
  124.                 log_action_cont_msg " skipping IPv4 (no module loaded)"
  125.         elif [ -x /sbin/iptables ]; then
  126.                 log_action_cont_msg " IPv4"
  127.                 for param in F Z X; do /sbin/iptables -$param; done
  128.                 for table in $(cat /proc/net/ip_tables_names)
  129.                 do
  130.                         /sbin/iptables -t $table -F
  131.                         /sbin/iptables -t $table -Z
  132.                         /sbin/iptables -t $table -X
  133.                 done
  134.                 for chain in INPUT FORWARD OUTPUT
  135.                 do
  136.                         /sbin/iptables -P $chain ACCEPT
  137.                 done
  138.         fi
  139.        
  140.         if [ ! -f /proc/net/ip6_tables_names ]; then
  141.                 log_action_cont_msg " skipping IPv6 (no module loaded)"
  142.         elif [ -x /sbin/ip6tables ]; then
  143.                 log_action_cont_msg " IPv6"
  144.                 for param in F Z X; do /sbin/ip6tables -$param; done
  145.                 for table in $(cat /proc/net/ip6_tables_names)
  146.                 do
  147.                         /sbin/ip6tables -t $table -F
  148.                         /sbin/ip6tables -t $table -Z
  149.                         /sbin/ip6tables -t $table -X
  150.                 done
  151.                 for chain in INPUT FORWARD OUTPUT
  152.                 do
  153.                         /sbin/ip6tables -P $chain ACCEPT
  154.                 done
  155.         fi
  156.  
  157.         log_action_end_msg 0
  158. }
  159.  
  160. case "$1" in
  161. start|restart|reload|force-reload)
  162.         load_rules
  163.         ;;
  164. save)
  165.         save_rules
  166.         ;;
  167. stop)
  168.         # Why? because if stop is used, the firewall gets flushed for a variable
  169.         # amount of time during package upgrades, leaving the machine vulnerable
  170.         # It's also not always desirable to flush during purge
  171.         echo "Automatic flushing disabled, use \"flush\" instead of \"stop\""
  172.         ;;
  173. flush)
  174.         flush_rules
  175.         ;;
  176. *)
  177.     echo "Usage: $0 {start|restart|reload|force-reload|save|flush}" >&2
  178.     exit 1
  179.     ;;
  180. esac
  181.  
  182. exit $rc

Отправка исправлений и поправок. (cоздать новую запись)
После отправки поправок вы сможете посмотреть различия между старой и новой записью.

Использовать подсветку синтаксиса
В текущей реализации JS-DOS Read/ReadLn работают только при подключенном модуле Crt! Для подсветки отдельных строк используйте для них префикс @@


картинка


Запомнить мои настройки