Netzwerk Einrichtung · 7 min read · Oct 28, 2025

NAT Gateway, Iptables, Port Forwarding, DNS Und DHCP Einrichtung - Ubuntu 8.10 Server

NAT Gateway, Iptables, Port Forwarding, DNS Und DHCP Einrichtung - Ubuntu 8.10 Server

Also, du bist zu arm, um dir einen weiteren teuren Router zu leisten und möchtest die Dinge selbst in die Hand nehmen. Du hast das richtige Tutorial gefunden! Dieses Tutorial zeigt dir, wie du einen Ubuntu 8.10 Router mit NAT, Portweiterleitung, einem DNS-Server und einem DHCP-Server einrichtest.

Warum Ubuntu, fragst du?

Nicht nur, dass Ubuntu ein großartiges Betriebssystem ist, es ist auch sehr flexibel und leistungsstark genug, um dir zu ermöglichen, schnell einsatzbereit zu sein! Hinweis: Bitte starte deinen Computer nach jedem Schritt neu. Dies stellt sicher, dass alles korrekt funktioniert.

Einige der grundlegenden Dinge, die wir benötigen, sind…

DHCP – dhcp3-server
DNS – bind9
iptables – in Ubuntu enthalten

Zuerst die Grundlagen

Du benötigst 2 Netzwerkkarten. Nimm deine erste Netzwerkkarte und stecke deine WAN-Verbindung hinein. Du solltest wissen, welche Netzwerkkarte das ist, eth0, eth1 usw. Wenn du nicht weißt, welche es ist, probiere es einfach aus, mein Freund.

Nehmen wir an, deine WAN-Karte ist eth0 ( wenn es eth1 ist, mache einfach alles gleich, aber passe deine Konfiguration entsprechend an). Wir wollen die Datei /etc/network/interfaces finden. Mache ein VI auf der Datei wie folgt:

sudo vi /etc/network/interfaces

Du solltest in der Datei sehen ( wenn du noch nichts eingerichtet hast):

# Diese Datei beschreibt die verfügbaren Netzwerkschnittstellen auf deinem System
# und wie man sie aktiviert. Für weitere Informationen siehe interfaces(5).
# Die Loopback-Netzwerkschnittstelle
auto lo
iface lo inet loopback

Wir werden dies zur Datei hinzufügen. Als Anmerkung, wenn du nicht weißt, wie man VI benutzt, verwende nano oder lerne VI.

auto eth0
iface eth0 inet dhcp

Der Code auto eth0 sagt eth0, dass es beim Booten gestartet werden soll, ähnlich wie beim Ausführen von

sudo ifconfig eth0 up

Der Code iface eth0 inet dhcp sagt der eth0-Schnittstelle, dass sie nach einem DHCP-Server suchen und ihre Informationen von dort beziehen soll. Dies ist wichtig, wenn du an ein Kabelmodem angeschlossen bist, da du eine öffentliche IP von deinem ISP erhalten möchtest.

Der nächste Schritt ist die Konfiguration deiner Netzwerkkarte eth1. Dies wird deine “LAN”-Karte sein.

Wenn du dich erinnerst, sah unsere /etc/network/interfaces-Konfiguration so aus:

# Diese Datei beschreibt die verfügbaren Netzwerkschnittstellen auf deinem System
# und wie man sie aktiviert. Für weitere Informationen siehe interfaces(5).
# Die Loopback-Netzwerkschnittstelle
auto lo
iface lo inet loopback
# Die primäre Netzwerkschnittstelle
auto eth0
iface eth0 inet dhcp

Wir werden wieder in die interfaces-Datei mit VI gehen und ein paar weitere Zeilen hinzufügen:

sudo vi /etc/network/interfaces

Füge diese Zeilen am Ende der Datei hinzu.

auto eth1
iface eth1 inet static
        address         172.17.207.121
        netmask         255.255.255.0
        broadcast       172.17.207.255
        network         172.17.207.0

Dies gibt dir eine statische IP-Adresse für deinen Server auf deiner LAN-Karte.

Deine Datei sollte jetzt so aussehen:

# Diese Datei beschreibt die verfügbaren Netzwerkschnittstellen auf deinem System
# und wie man sie aktiviert. Für weitere Informationen siehe interfaces(5).
# Die Loopback-Netzwerkschnittstelle
auto lo
iface lo inet loopback
# Die primäre Netzwerkschnittstelle
auto eth0
iface eth0 inet dhcp
auto eth1
iface eth1 inet static
        address         172.17.207.121
        netmask         255.255.255.0
        broadcast       172.17.207.255
        network         172.17.207.0

Jetzt, bevor wir es vergessen, lass uns deine /etc/hosts-Datei bearbeiten.

sudo vi /etc/hosts

Lass die Datei wie meine aussehen, obwohl du sie auch userve oder myserver nennen kannst.

Beachte auch den Domainnamen asus.local, es ist eine gute Idee, deinen eigenen wie mydomain.local zu verwenden, aber du kannst das verwenden, was ich für Lernzwecke habe.

Wir verwenden .local, weil es leicht zu merken ist und nicht öffentlich, sodass wir nicht mit irgendetwas interferieren.

127.0.0.1       localhost server.localhost
172.17.207.121  server.asus.local server asus.local

Jetzt, da wir unsere Schnittstellen konfiguriert haben, werden wir einen DHCP-Server installieren und einrichten. Um den DHCP-Server zu installieren, führe den Befehl aus:

sudo apt-get install dhcp3-server

Lass uns die dhcpd.conf-Datei bearbeiten. Beginne mit dem Ausführen des Befehls:

sudo vi /etc/dhcp3/dhcpd.conf

Wenn etwas in dieser Datei ist, ENTFERNE ES.

Kopiere und füge dies in deine Datei ein, dann schreibe und verlasse.

ddns-update-style none;
option domain-name "whatever.local"; //ändere dies in etwas, das du willst.local wie mydomain.local
option domain-name-servers 172.17.207.121, 24.92.226.41; //du möchtest vielleicht auch den zweiten DNS-Server in den lokalen DNS-Server deines ISP ändern
option routers 172.17.207.121;
default-lease-time 42300;
max-lease-time 84600;
authoritative;
log-facility local7;
subnet 172.17.0.0 netmask 255.255.255.0 {
        range 172.17.207.1 172.17.207.100; //du kannst den Bereich einfach erweitern, indem du .100 in .254 oder so änderst
}

Jetzt führe den Befehl aus:

sudo /etc/init.d/dhcp3-server start

Dies wird deinen DHCP-Server starten und wir können diesen Teil als FERTIG kennzeichnen.

Weiter zu… DNS

Bind ist das DNS-Paket, das wir verwenden werden. Um dies zu installieren, führen wir einfach aus:

sudo apt-get install bind9

Dies wird unseren Bind-Server herunterladen und installieren.

Beginne mit dem Ausführen des Befehls:

vi /etc/bind/named.conf

Entferne dann alles in der Datei und achte auf meine Kommentare, die normalerweise durch // angezeigt werden.

// Dies ist die primäre Konfigurationsdatei für den BIND DNS-Server namens. // Bitte lies /usr/share/doc/bind9/README.Debian.gz für Informationen über die // Struktur der BIND-Konfigurationsdateien in Debian, *BEVOR* du diese Konfigurationsdatei anpasst. // Wenn du nur Zonen hinzufügst, mache das bitte in /etc/bind/named.conf.local include "/etc/bind/named.conf.options"; // prime den Server mit Wissen über die Root-Server zone "." { type hint; file "/etc/bind/db.root"; }; // sei autoritativ für die localhost Vorwärts- und Rückwärtszonen und für // Broadcast-Zonen gemäß RFC 1912 zone "asus.local" { //ändere asus.local in was auch immer du deine Domain genannt hast, wie mydomain.local type master; file "/etc/bind/zones/asus.local.db"; //diese Datei oder dieser Ordner existiert nicht, also müssen wir ihn erstellen }; zone "207.17.172.in-addr.arpa" { type master; file "/etc/bind/zones/rev.207.17.172.in-addr.arpa";//diese Datei existiert nicht, also müssen wir sie ebenfalls erstellen }; zone "localhost" { type master; file "/etc/bind/db.local"; }; zone "127.in-addr.arpa" { type master; file "/etc/bind/db.127"; }; zone "0.in-addr.arpa" { type master; file "/etc/bind/db.0"; }; zone "255.in-addr.arpa" { type master; file "/etc/bind/db.255"; }; include "/etc/bind/named.conf.local";

Bevor wir die beiden Dateien asus.local.db und rev.207.17.172.in-addr.arpa erstellen können, müssen wir eine andere Datei bearbeiten. Also

sudo vi /etc/bind/named.conf.options

Entferne alles in der Datei und benutze dies…

options {
        directory "/var/cache/bind";
        // Wenn es eine Firewall zwischen dir und den Nameservern gibt, mit denen du sprechen möchtest,
        // musst du möglicherweise die Firewall so anpassen, dass mehrere
        // Ports kommunizieren können. Siehe http://www.kb.cert.org/vuls/id/800113
        // Wenn dein ISP eine oder mehrere IP-Adressen für stabile
        // Nameserver bereitgestellt hat, möchtest du sie wahrscheinlich als Weiterleitungen verwenden.
        // Kommentiere den folgenden Block aus und füge die Adressen ein, die die
        // Platzhalter mit allen 0en ersetzen.
         forwarders {
          24.92.226.41; //sehr wichtig, ändere dies in die DNS-Server deines lokalen ISPs
      24.92.224.40;
         };
        auth-nxdomain no;    # konform zu RFC1035
        listen-on-v6 { any; };
};

Achte auf die Kommentare, sie sagen dir, dass du die Adresse(n) unserer Weiterleitungen in die DNS deines lokalen ISPs ÄNDERN sollst.

Als nächstes wechsle in dein Bind-Verzeichnis:

cd /etc/bind/
sudo mkdir zones
cd zones
sudo vi asus.local.db

(Oder verwende deinen Domainnamen wie mydomain.local.db.)

Sobald du in der asus.local.db-Datei oder der mydomain.local.db-Datei (wie auch immer du sie genannt hast) bist, kopiere und füge dies ein, und mache die entsprechenden Änderungen an deinem Domainnamen.

$ORIGIN .
$TTL 4000 ;
asus.local.     IN SOA  server.asus.local. admin.asus.local. (
2007031001      ; serial
28800           ; refresh
3600            ; retry
604800          ; expire
38400           ; min
)
                NS      server.asus.local.
$ORIGIN asus.local.
                IN      A       172.17.207.121
www             IN      A       172.17.207.121 //ein Beispiel
server          IN      A       172.17.207.121 //ein Beispiel
macpro          IN      A       172.17.207.4   //ein Beispiel

Wenn du ein nslookup macpro machst, erhältst du 172.17.207.4 als Antwort zurück, also ändere die Domainnamen und IPs gemäß deinen Einstellungen.

Als nächstes werden wir die rev.207.17.172.in-addr.arpa-Datei, die noch nicht existiert, vi. Aber sie wird existieren, sobald wir sie speichern. Angenommen, du bist immer noch im Zonenordner:

vi rev.207.17.172.in-addr.arpa

Kopiere und füge ein, was ich hier habe, und mache die entsprechenden Änderungen.

$ORIGIN .
$TTL 28800      ; 8 Stunden
207.17.172.IN-ADDR.ARPA IN SOA server.asus.local. admin.asus.local. (
                                2008110601 ; serial
                                28800      ; refresh (8 Stunden)
                                7200       ; retry (2 Stunden)
                                604800     ; expire (1 Woche)
                                86400      ; minimum (1 Tag)
                                )
                        NS      server.asus.local.
$ORIGIN 207.17.172.IN-ADDR.ARPA.
4                     PTR    macpro.asus.local.

Jetzt, wenn du eine Rückwärtssuche auf 172.17.207.4 machst, würdest du macpro.asus.local erhalten.

Jetzt führe den Befehl aus, um named zu starten:

sudo /etc/init.d/named start

Wenn es nicht startet, überprüfe die Protokolle in /var/logs.

Zu guter Letzt, IPTABLES

Zuerst müssen wir die sysctl.conf im Ordner /etc/ bearbeiten, also:

sudo vi /etc/sysctl.conf

Kommentiere die Zeile 28 aus. Das bedeutet, dass du das # davor entfernst. Die Zeile sollte net.ipv4.ip_forward=1 sein.

Als nächstes gehen wir zu rc.local:

sudo vi /etc/rc.local

Füge diese beiden Zeilen am Ende der Datei hinzu:

/sbin/iptables -P FORWARD ACCEPT
/sbin/iptables --table nat -A POSTROUTING -o eth0 -j MASQUERADE

Dies wird dein Gateway mit iptables einrichten. Du kannst iptables verwenden, um dies sicherer zu machen als diese grundlegende Einrichtung.

Um Ports weiterzuleiten, kannst du etwas wie dies am Ende der rc.local-Datei hinzufügen.

/sbin/iptables -t nat -A PREROUTING -p tcp -i eth0 -d jgibbs.dyndns.org --dport 3389 -j DNAT --to 172.17.207.4:3389

Die lange Zeile oben wird gesamten eingehenden Verkehr auf Port 3389 an die IP 172.17.207.4 weiterleiten, sodass ich von außerhalb meines Netzwerks auf meinen Windows-Rechner zugreifen kann.

Du kannst dies mit beliebigen Ports tun, die du möchtest.

NEUSTART!

Berichte auch über Probleme und ich werde dieses Tutorial mit Updates korrigieren. Danke, Jeremy Benutzer gibbsj.

Share: X/Twitter LinkedIn

Erhalte neue Beiträge in deinem Posteingang.

Kein Spam. Jederzeit abmelden.