当前位置:首页 > CN2资讯 > 正文内容

Linux IPv6 Iptables Firewall Scriptipv6 Linux

7小时前CN2资讯
Linux IPv6 Iptables Firewall Script #!/bin/bash # A bash shell script for ip6tables to protect single hosting / dedicated / vps / colo server running CentOS / Debian / RHEL / or any other Linux distribution. # ------------------------------------------------------------------------- # Copyright (c) 2007 nixCraft project <http://www.cyberciti.biz/fb/> # This script is licensed under GNU GPL version 2.0 or above # ------------------------------------------------------------------------- # This script is part of nixCraft shell script collection (NSSC) # Visit http://bash.cyberciti.biz/ for more information. # ---------------------------------------------------------------------- # Last updated on Jan-23, 2008 : Added support for tcp packets # --------------------------------------------------------------------------- IPT6="/sbin/ip6tables"   # Interfaces PUB_IF="eth1" PUB_LO="lo0" PUB_×××="eth0"   # Custom chain names CHAINS="chk_tcp6_packets_chain chk_tcp_inbound chk_udp_inbound chk_icmp_packets" HTTP_SERVER_6="2001:470:1f04:55a::2 2001:470:1f04:55a::3 2001:470:1f04:55a::4 2001:470:1f04:55a::5"   echo "Starting IPv6 firewall..." # first clean old mess $IPT6 -F $IPT6 -X $IPT6 -Z for table in $(</proc/net/ip6_tables_names) do $IPT6 -t $table -F $IPT6 -t $table -X $IPT6 -t $table -Z done $IPT6 -P INPUT ACCEPT $IPT6 -P OUTPUT ACCEPT $IPT6 -P FORWARD ACCEPT   # Set default DROP all $IPT6 -P INPUT DROP $IPT6 -P OUTPUT DROP $IPT6 -P FORWARD DROP   # Create the chain for c in $CHAINS do $IPT6 --new-chain $c done   # Input policy $IPT6 -A INPUT -i $PUB_LO -j ACCEPT $IPT6 -A INPUT -i $PUB_××× -j ACCEPT $IPT6 -A INPUT -i $PUB_IF -j chk_tcp6_packets_chain $IPT6 -A INPUT -i $PUB_IF -m state --state RELATED,ESTABLISHED -j ACCEPT $IPT6 -A INPUT -i $PUB_IF -p tcp -j chk_tcp_inbound $IPT6 -A INPUT -i $PUB_IF -p udp -j chk_udp_inbound $IPT6 -A INPUT -i $PUB_IF -p icmp -j chk_icmp_packets $IPT6 -A INPUT -i $PUB_IF -p ipv6-icmp -j chk_icmp_packets $IPT6 -A INPUT -i $PUB_IF -m limit --limit 3/min --limit-burst 3 -j LOG --log-prefix "INPUT OUTPUT " $IPT6 -A INPUT -i $PUB_IF -j DROP   # Output policy $IPT6 -A OUTPUT -o $PUB_LO -j ACCEPT $IPT6 -A OUTPUT -o $PUB_××× -j ACCEPT $IPT6 -A OUTPUT -o $PUB_IF -j ACCEPT $IPT6 -A OUTPUT -o $PUB_IF -m limit --limit 3/min --limit-burst 3 -j LOG --log-prefix "DROP OUTPUT "   ### Custom chains ### # Bad packets chk $IPT6 -A chk_tcp6_packets_chain -p tcp -m tcp --tcp-flags FIN,SYN,RST,PSH,ACK,URG NONE -m limit --limit 3/min --limit-burst 3 -j LOG --log-prefix "Bad tcp packets" $IPT6 -A chk_tcp6_packets_chain -p tcp -m tcp --tcp-flags FIN,SYN,RST,PSH,ACK,URG NONE -j DROP $IPT6 -A chk_tcp6_packets_chain -p tcp -m tcp --tcp-flags FIN,SYN,RST,PSH,ACK,URG FIN,SYN,RST,PSH,ACK,URG -m limit --limit 3/min --limit-burst 3 -j LOG --log-prefix "Bad tcp packets" $IPT6 -A chk_tcp6_packets_chain -p tcp -m tcp --tcp-flags FIN,SYN,RST,PSH,ACK,URG FIN,SYN,RST,PSH,ACK,URG -j DROP $IPT6 -A chk_tcp6_packets_chain -p tcp -m tcp --tcp-flags FIN,SYN,RST,PSH,ACK,URG FIN,PSH,URG -m limit --limit 3/min --limit-burst 3 -j LOG --log-prefix "BAD tcp" $IPT6 -A chk_tcp6_packets_chain -p tcp -m tcp --tcp-flags FIN,SYN,RST,PSH,ACK,URG FIN,PSH,URG -j DROP $IPT6 -A chk_tcp6_packets_chain -p tcp -m tcp --tcp-flags FIN,SYN,RST,PSH,ACK,URG FIN,SYN,RST,ACK,URG -m limit --limit 3/min --limit-burst 3 -j LOG --log-prefix "Bad tcp" $IPT6 -A chk_tcp6_packets_chain -p tcp -m tcp --tcp-flags FIN,SYN,RST,PSH,ACK,URG FIN,SYN,RST,ACK,URG -j DROP $IPT6 -A chk_tcp6_packets_chain -p tcp -m tcp --tcp-flags SYN,RST SYN,RST -m limit --limit 3/min --limit-burst 3 -j LOG --log-prefix "Bad tcp " $IPT6 -A chk_tcp6_packets_chain -p tcp -m tcp --tcp-flags SYN,RST SYN,RST -j DROP $IPT6 -A chk_tcp6_packets_chain -p tcp -m tcp --tcp-flags FIN,SYN FIN,SYN -m limit --limit 3/min --limit-burst 3 -j LOG --log-prefix "Bad tcp " $IPT6 -A chk_tcp6_packets_chain -p tcp -m tcp --tcp-flags FIN,SYN FIN,SYN -j DROP $IPT6 -A chk_tcp6_packets_chain -p tcp -j RETURN   # Open TCP Ports # Open http port for h in $HTTP_SERVER_6 do $IPT6 -A chk_tcp_inbound -p tcp -m tcp --dport 80 -d $h -j ACCEPT done   # Open 53 port $IPT6 -A chk_tcp_inbound -p tcp -m tcp --dport 53 -j ACCEPT ############################### # Add your rules below to open other TCP ports # Open smtp # $IPT6 -A chk_tcp_inbound -p tcp -m tcp --dport 25 -j ACCEPT # Open pop3 # $IPT6 -A chk_tcp_inbound -p tcp -m tcp --dport 113 -j ACCEPT # Open ssh # $IPT6 -A chk_tcp_inbound -p tcp -m tcp --dport 22 -j ACCEPT ############################### # do not modify following rule $IPT6 -A chk_tcp_inbound -p tcp -j RETURN   # Open UDP Ports # Open dns 53 udp $IPT6 -A chk_udp_inbound -p udp -m udp --dport 53 -j ACCEPT ############################### # Add your rules below to open other UDP ports # ############################### # do not modify following rule $IPT6 -A chk_udp_inbound -p udp -j RETURN   # ICMP - allow ping pong $IPT6 -A chk_icmp_packets -p ipv6-icmp -j ACCEPT $IPT6 -A chk_icmp_packets -p icmp -j RETURN
    你可能想看:

    扫描二维码推送至手机访问。

    版权声明:本文由皇冠云发布,如需转载请注明出处。

    本文链接:https://www.idchg.com/info/31528.html

    分享给朋友:

    “Linux IPv6 Iptables Firewall Scriptipv6 Linux” 的相关文章

    CN2 GIA:享受高效稳定的国际网络连接服务

    CN2 GIA 概述 CN2 GIA,即全球互联网接入,是由中国电信推出的一个国际专线网络服务。作为CN2系列服务中最顶尖的产品,CN2 GIA 主要面向那些需要稳定、快速国际网络连接的用户。设想一下,有多少次我们正在进行重要的商务沟通,却因为网络问题而中断。针对这样的需求,CN2 GIA无疑提供了...

    如何开启BBR查询并提升TCP网络性能

    BBR(Bottleneck Bandwidth and Round-trip propagation time)是一种由Google开发的TCP拥塞控制算法,我对它的了解让我感到非常兴奋。BBR旨在通过精确的网络条件监测,以提高传输速度和稳定性。传统的拥塞控制算法往往依赖于丢包率的变化来调整传输速...

    选择台湾VPS的优势与实用技巧分析

    在当今互联网迅速发展的时代,虚拟专用服务器(VPS)成为了众多企业和个人不二的选择。台湾VPS作为一个相对新兴的产品,凭借自己独特的地理位置和优异的技术性能,逐渐在市场上占据了一席之地。身为个人或企业,在选择服务器时,了解台湾VPS的基本概念及其优势无疑是一个明智的开始。 什么是VPS? VPS,即...

    VPS是什么?全面解析虚拟专用服务器的优势与选择

    VPS 是 什么 VPS,全称虚拟专用服务器,是一种通过虚拟化技术在物理服务器上创建多个独立环境的方案。具体来说,每个VPS都能运行自己的操作系统,并拥有独立的CPU、内存和存储资源。这就意味着,用户可以像在独立服务器上那样自由管理自己的VPS,进行各种应用和服务的部署。 最初,当我接触到VPS时,...

    搬瓦工VPS:初学者的最佳选择与使用指南

    大家对VPS可能不太熟悉,搬瓦工VPS在整个市场中已经站稳了脚跟。作为加拿大IT7公司旗下的一款主机服务,搬瓦工以其性价比高的OpenVZ VPS起步,而现在主要以KVM架构为主流,逐渐发展成为国内用户的热门选择。这种转型让我觉得很有意思,因为它不仅仅是一种产品的升级,更是一种服务的提升。 搬瓦工提...

    甲骨文云无法选择ARM架构的原因及解决方案

    在如今这个信息化的时代,云计算技术已经成为了各类企业和个人用户的重要工具。而甲骨文云服务器正是众多云服务中的一员,凭借其强大的计算能力和灵活的可扩展性,吸引了越来越多的用户。甲骨文云服务器为用户提供了一种高效、灵活的解决方案,让他们能够在不同的业务需求下,快速部署和管理自己的应用程序。 当谈到甲骨文...