Netzwerk Sicherheit · 4 min read · Feb 12, 2026

CentOS 5 - Heimgateway-Firewall mit DHCP-Server für die Verbindungsteilung

CentOS 5 - Heimgateway-Firewall mit DHCP-Server für die Verbindungsteilung

Version 1.0
Autor: Cameron Camp
Zuletzt bearbeitet: 16. Jan. 2008

Wenn Sie versuchen, ein Heimnetzwerk einzurichten, möchten Sie wahrscheinlich einen Computer, der zur Perimeterseite hin ausgerichtet ist und mit Ihrem DSL-/Kabelmodem verbunden ist, einrichten und dann alle Ihre Computer hinter dieser Firewall-Box platzieren, um sie zu schützen. Dieses Tutorial zeigt Ihnen, wie Sie eine einzelne externe Verbindung auf dem Gateway-Computer (unter Verwendung der Iptables-Firewall) und eine zweite interne Verbindung auf demselben Gerät einrichten, damit Sie die Computer in Ihrem Zuhause/Büro damit verbinden und ihnen automatisch IP-Adressen zuweisen können, wenn Sie sie anschließen (unter Verwendung des DHCP-Servers). Iptables kann sehr kompliziert sein, wir werden nur eine grundlegende Firewall konfigurieren, Sie können später mehr Sicherheit hinzufügen, ohne etwas zu beschädigen. In Linux gibt es viele Möglichkeiten, dies zu tun, diese hier ist hoffentlich einfach genug und wird Ihnen die Grundlagen beibringen. Ich habe dies auf einem CentOS 5-Computer durchgeführt, obwohl es auch auf Debian-Varianten mit nur geringfügigen Änderungen funktionieren würde. Während dieses Tutorials bin ich als root angemeldet, was Sie im Allgemeinen NICHT tun sollten, aber es macht das Tutorial einfacher. Wenn Sie es sicherer machen möchten, fügen Sie “sudo” vor jedem Befehl hinzu, und es wird funktionieren.

gateway_diagram2

Die Computer in Ihrem Büro können auch miteinander kommunizieren, sodass Sie Drucker, Computer anschließen und Netzwerkverbindungen über den Switch teilen können. Sie können später auch Dinge auf Ihrem Gateway-Server einrichten, wie z. B. ein Netzwerk-Backup-Laufwerk für alle Ihre Computer, das relativ einfach mit Samba eingerichtet werden kann. In diesem Setup gibt es viel Erweiterbarkeit, aber wir halten es vorerst einfach.

Das erste, was Sie auf Ihrem Gateway-Server tun müssen, ist, Iptables zu konfigurieren und zu aktivieren, die Standardfirewall, die mit CentOS geliefert wird. Wir werden ihm sagen, dass es ausgehenden Datenverkehr von Ihrer eth1-Schnittstelle ins Internet zulassen soll. Sie müssen einen Iptables-Eintrag hinzufügen, ihn speichern und Iptables neu starten.

iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE  
service iptables save  
service iptables restart

Jetzt müssen wir dem Kernel sagen, dass er das Weiterleiten zulassen soll, damit die Regel funktioniert:

echo 1 > /proc/sys/net/ipv4/ip_forward

Dies funktioniert nur bis zum Neustart, also lassen Sie es uns dauerhaft machen, indem Sie mit Ihrem bevorzugten Editor die folgende Zeile zu /etc/sysconfig/network hinzufügen:

FORWARD_IPV4=YES

Jetzt müssen wir einen DHCP-Server einrichten, um den Computern im LAN IP-Adressen zuzuweisen. Das tun wir, indem wir den DHCP-Server wie folgt installieren:

yum install dhcp

Standardmäßig wird eine Beispiel-DHCP-Datei erstellt, die wir bearbeiten und dann durch die echte ersetzen:

cd /usr/share/doc/dhcp-whateverversionyouhave/  
vi dhcpd.conf.sample

Sie können die Datei, die ich verwende, ausschneiden/einfügen oder Ihre einfach bearbeiten, um Ihren Bedürfnissen gerecht zu werden. Ein Wort der Warnung: Ihr Netzwerk könnte anders sein als meines. Diese Datei wird Ihren internen Computern einen IP-Bereich von 192.168.0.128 bis 192.168.0.254 mit einer Subnetzmaske von 255.255.255.0 zuweisen, ändern Sie sie nach Ihren Bedürfnissen. Sie müssen auch die IP-Informationen später auf eth1 statisch anpassen, wenn Sie hier Ihre eigenen Werte verwenden.

ddns-update-style none; # halten Sie es vorerst einfach
ignore client-updates;  # hier auch
DHCPARGS=eth1;          # sagt, auf welcher Schnittstelle zugehört werden soll
subnet 192.168.0.0 netmask 255.255.255.0 {
# --- Standardgateway
       option routers                  192.168.0.1;   # Gateway auf Ihrer eth1 internen Schnittstelle
       option subnet-mask              255.255.255.0; # Subnetzmaske
       option domain-name              "example.com" # Domainname, der dem Client zugewiesen wird
       option domain-name-servers      209.242.10.10; # die IP Ihrer ISP-Namensserver, die Sie verwenden
       option time-offset              -18000;        # Eastern Standard Time - setzen Sie es auf das, was Sie haben
       range 192.168.0.128 192.168.0.254;             # der IP-Bereich, den Ihre Clients erhalten
       default-lease-time 21600;                      # wie lange die Clients die gleiche IP behalten
       max-lease-time 43200;
       # wir möchten, dass der Nameserver an einer festen Adresse erscheint
       host ns {
               next-server ns1.ispserver.net;         # ändern Sie zu den Nameservern Ihres ISP
               hardware ethernet 00:09:5B:8E:05:67;   # Hardware MAC
               fixed-address 209.242.10.10;           # die IP des Nameservers Ihres ISP
      }
}

Jetzt sichern Sie Ihre aktuelle DHCP-Konfigurationsdatei und kopieren die gerade erstellte darüber:

mv /etc/dhcpd.conf /etc/dhcpd.conf.old  
cp dhcpd.conf.sample /etc/dhcpd.conf

Jetzt starten wir den DHCP-Server neu (nachdem wir die Konfiguration auf Fehler überprüft haben; wenn es Fehler gibt, finden Sie diese in /var/log/messages aufgelistet), damit die Änderungen wirksam werden.

service dhcpd configtest  
service dhcpd restart

Jetzt müssen wir die eth1 (interne) Schnittstelle so konfigurieren, dass sie mit dem übereinstimmt, was wir gerade im DHCP-Server gemacht haben. Bearbeiten Sie die Datei /etc/sysconfig/network-scripts/ifcfg-eth1, sodass sie ungefähr so aussieht:

DEVICE=eth1
BOOTPROTO=static
ONBOOT=yes
IPADDR=192.168.0.1
NETMASK=255.255.255.0
GATEWAY=10.1.10.43

Sie müssen mindestens die GATEWAY-IP bearbeiten, das ist nur die IP meiner eth0-Schnittstelle. Ändern Sie sie in die IP Ihrer eth0, die Sie herausfinden können, indem Sie Folgendes ausführen:

ifconfig

Es sollte etwa so aussehen: eth0 inet addr:10.1.10.43, das ist die, die Sie wollen.

Als Nächstes müssen Sie Ihrem Computer sagen, dass er auf die charakteristische DHCP-Anfrage hören soll, die über das interne Netzwerk kommt. Wenn ein Client-Computer nach einer DHCP-Adresse sucht, sendet er einen Blast an jeden, der zuhört, mit der IP-Adresse 255.255.255.255, also müssen Sie Ihrem DHCP-Server sagen, dass er auf diese IP hören soll:

route add -host 255.255.255.255 dev eth1

Jetzt testen wir das Setup. Sie sollten in der Lage sein, zu einem der Client-Computer zu gehen, ihn mit dem Switch zu verbinden, an den Ihr Gateway angeschlossen ist (in meinem Fall ein billiger Netgear $30 8-Port-Switch Modell# FS608), und er sollte eine IP-Adresse mit Ihrem neuen DHCP-Server finden, und Sie sollten in der Lage sein, im Internet zu surfen.

Sie sollten auch Ihre Firewall so konfigurieren, dass sie mehr Dinge blockiert, als wir in diesem Tutorial getan haben, um Ihre internen Computer zu schützen, was Sie tun können, indem Sie das Konfigurationstool ausführen:

setup

um der Firewall zu sagen, was sie blockieren soll. Eine Faustregel ist, alles zu blockieren und dann nur das zuzulassen, was Sie benötigen, aber Sie können darüber an anderer Stelle in erschreckender Tiefe lesen, wenn Sie möchten.

Share: X/Twitter LinkedIn

Erhalte neue Beiträge in deinem Posteingang.

Kein Spam. Jederzeit abmelden.