Ich habe im Server 2 Netzwerkkarten für intern und extern.
Für die Firewall habe ich mir ein Script angepasst aus der Vorlage:
OpenSUSE 42.3/Firewall – Hyperweb & OpenSim
Bash
interface="eth1" # für Interne Netzwerkkarten
#### IPv6 Konfigurationsblock ####
# alle alten Regeln löschen
ip6tables -F
# alle Ports schließen
ip6tables -P INPUT DROP
ip6tables -P OUTPUT DROP
ip6tables -P FORWARD DROP
#### IPv4 Konfigurationsblock ####
# alle alten Regeln löschen
iptables -F
# alle Ports schließen
iptables -P INPUT DROP
iptables -P OUTPUT DROP
iptables -P FORWARD DROP
# spezielle Steuersignale für IPv4 Kommunikation
iptables -A INPUT -p icmp --icmp-type destination-unreachable -j ACCEPT
iptables -A INPUT -p icmp --icmp-type time-exceeded -j ACCEPT
iptables -A INPUT -p icmp --icmp-type parameter-problem -j ACCEPT
iptables -A OUTPUT -p icmp -j ACCEPT
# lokalen Datenverkehr erlauben, notwendig für das Betriebssystem!
iptables -A INPUT -i lo -j ACCEPT
iptables -A OUTPUT -o lo -j ACCEPT
# bereits bestehenden Verbindungen das Antworten erlauben
iptables -A INPUT -m conntrack --ctstate ESTABLISHED -j ACCEPT
iptables -A OUTPUT -m conntrack --ctstate ESTABLISHED -j ACCEPT
# eingehend SSH erlauben, eventuell Portnummer anpassen (für Fernwartung)
iptables -A INPUT -i ${interface} -p tcp --dport 22 -m conntrack --ctstate NEW -j ACCEPT
# ausgehend DNS erlauben (für Auflösung von Domainnamen)
iptables -A OUTPUT -o ${interface} -p udp --dport 53 -m conntrack --ctstate NEW -j ACCEPT
iptables -A OUTPUT -o ${interface} -p tcp --dport 53 -m conntrack --ctstate NEW -j ACCEPT
# ein- und ausgehend HTTP erlauben (für SW-Updates und Webserver)
iptables -A INPUT -i ${interface} -p tcp --dport 80 -j ACCEPT
iptables -A OUTPUT -o ${interface} -p tcp --dport 80 -j ACCEPT
# ausgehend NTP erlauben (für Zeitsynchronisation, entfällt bei virtuellen Servern)
iptables -A OUTPUT -o ${interface} -p udp --dport 123 -m conntrack --ctstate NEW -j ACCEPT
Alles anzeigen
Nun wollte ich meine 2. Netzkarte für Extern konfigurieren, dazu verdoppel ich das von oben und kommentiere sowas wie SSH aus, weil der Server nur über 192.168.x.x administriert wird.
also
....
# Jetzt 2 Netzwerk Karte für Extern
interface="eth0" # für Extern
... alles wie oben bis auf 1-2 Ausnahmen wie kein SSH
Doch damit werden alle Einstellung von ganz oben (eth0) überschrieben.
Wie kann ich beide Netzwerkkarten unabhängig konfigurieren?