Notiz: Basis ipv6 Firewall

damit ich nicht immer suchen muss:

Eine Basis Firewall für IPv6 mittels ip6tables. Kommentare willkommen:


#!/bin/sh
# Generische Firewall fuer IPv6 - Basic

### Wo liegt ip6tables?

IP6TABLES=`which ip6tables`

### Interface fuer Extern
INTERFACE_EXTERN=sixxs
netaddr=2a01:xxx:xxx:xxx::y

### Bestehende Regeln loeschen

$IP6TABLES -F INPUT
$IP6TABLES -F OUTPUT
$IP6TABLES -F FORWARD
$IP6TABLES -F

# Default POLICY DROP
$IP6TABLES -P INPUT DROP
$IP6TABLES -P FORWARD DROP
$IP6TABLES -P OUTPUT ACCEPT

# RH0 Pakete verwerfen, braucht man nicht, will man nicht
$IP6TABLES -A INPUT -m rt --rt-type 0 -j DROP
$IP6TABLES -A OUTPUT -m rt --rt-type 0 -j DROP
$IP6TABLES -A FORWARD -m rt --rt-type 0 -j DROP

# Lokale erlauben

$IP6TABLES -A INPUT -i lo -j ACCEPT
$IP6TABLES -A OUTPUT -o lo -j ACCEPT

# Link-Local
$IP6TABLES -A INPUT -s fe80::/10 -j ACCEPT
$IP6TABLES -A OUTPUT -s fe80::/10 -j ACCEPT

### ICMP erlauben

$IP6TABLES -A INPUT -p icmpv6 -j ACCEPT
$IP6TABLES -A OUTPUT -p icmpv6 -j ACCEPT
$IP6TABLES -A FORWARD -p icmpv6 -j ACCEPT

# Allow multicast
$IP6TABLES -A INPUT -s ff00::/8 -j ACCEPT
$IP6TABLES -A OUTPUT -s ff00::/8 -j ACCEPT

### Bestehende, eingehende Verbindungen erlauben

$IP6TABLES -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

### Zugang von aussen auf Port 22 und 80 zulassen

$IP6TABLES -A INPUT -p tcp -i $INTERFACE_EXTERN -m multiport --dports 2016,80 -j ACCEPT

### Weiterleitungen von bestehenden Verbindungen zusallen

$IP6TABLES -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT

Deine IP ist:
54.167.62.170