Netzwerk · 4 min read · Jan 15, 2026

Port-Weiterleitung Mit rinetd Auf Debian Etch

Port-Weiterleitung Mit rinetd Auf Debian Etch

Version 1.0
Autor: Falko Timme

Dieser Artikel zeigt, wie Sie Port-Weiterleitung mit rinetd auf Debian Etch durchführen können. rinetd ermöglicht es Ihnen, Ports von einem System auf ein anderes weiterzuleiten. Dies ist nützlich, wenn Sie Ihre Webseiten auf einen neuen Server mit einer anderen IP-Adresse verschoben haben. Natürlich haben Sie Ihre DNS-Einträge geändert, aber es kann einige Tage dauern, bis die DNS-Änderungen wirksam werden, und hier kommt rinetd ins Spiel. Wenn Clients weiterhin die alten DNS-Einträge verwenden, kann rinetd sie auf den neuen Server umleiten. Mit rinetd müssen Sie sich nicht mit iptables-Regeln herumschlagen.

Ich gebe keine Garantie, dass dies bei Ihnen funktioniert!

1 Vorbemerkung

In diesem Beispiel versuche ich, den HTTP-Verkehr (Port 80) von der IP-Adresse 192.168.0.101 zur IP-Adresse 192.168.0.100 umzuleiten.

Bitte beachten Sie, dass rinetd FTP nicht umleiten kann, da FTP mehr als einen Socket benötigt.

2 Installation Und Konfiguration Von rinetd

Um rinetd zu installieren, führen wir einfach aus

apt-get install rinetd

Die Konfigurationsdatei von rinetd ist /etc/rinetd.conf. Um HTTP-Verkehr von 192.168.0.101 nach 192.168.0.100 weiterzuleiten, fügen wir die Zeile 192.168.0.101 80 192.168.0.100 80 hinzu:

vi /etc/rinetd.conf

| # # dies ist die Konfigurationsdatei für rinetd, den Internet-Umleitungsserver # # Sie können hier globale Erlauben- und Verweigern-Regeln angeben # nur IP-Adressen werden hier verglichen, Hostnamen können hier nicht angegeben werden # die Platzhalter, die Sie verwenden können, sind * und ? # # erlauben 192.168.2.* # verweigern 192.168.2.1? # # Weiterleitungsregeln kommen hier hin # # Sie können Erlauben- und Verweigern-Regeln nach einer bestimmten Weiterleitungsregel angeben # um nur auf diese Weiterleitungsregel anzuwenden # # bindadress bindport connectaddress connectport 192.168.0.101 80 192.168.0.100 80 # Protokollierungsinformationen logfile /var/log/rinetd.log # Kommentieren Sie die folgende Zeile aus, wenn Sie das Protokollformat im Webserver-Stil wünschen # logcommon |

Dann starten wir rinetd neu:

/etc/init.d/rinetd restart

Jetzt führen Sie aus

netstat -tap

und Sie sollten sehen, dass rinetd auf Port 80 ( www) lauscht:

server2:~# netstat -tap
Aktive Internetverbindungen (Server und etabliert)
Proto Recv-Q Send-Q Lokale Adresse Fremde Adresse Zustand PID/Programmname
tcp 0 0 :sunrpc : LISTEN 1956/portmap
tcp 0 0 server2.example.com:www
: LISTEN 2485/rinetd
tcp 0 0
:3025 : LISTEN 2347/rpc.statd
tcp 0 0 :auth : LISTEN 2306/inetd
tcp 0 0 localhost.localdom:smtp
: LISTEN 2294/exim4
tcp6 0 0
:ssh : LISTEN 2326/sshd
tcp6 0 0 server2.example.com:ssh ::ffff:192.168.0.3:4776 ESTABLISHED2409/0
server2:~#

Jetzt, wenn Sie Ihren Browser auf eine Webseite mit der IP-Adresse 192.168.0.101 richten, sollte diese Seite vom Server mit der IP-Adresse 192.168.0.100 empfangen werden.

Anstatt die Portnummern in /etc/rinetd.conf anzugeben, können Sie auch die Dienstnamen verwenden. Die Dienstnamen sind in /etc/services gespeichert, also wenn Sie diese Datei öffnen, werden Sie sehen, dass der Dienst für Port 80 auf Debian www heißt.

grep 80 /etc/services

server2:~# grep 80 /etc/services
www 80/tcp http # WorldWideWeb HTTP
www 80/udp # HyperText Transfer Protocol

socks 1080/tcp # socks proxy server
socks 1080/udp
amanda 10080/tcp # amanda backup services
amanda 10080/udp
omirr 808/tcp omirrd # online mirror
omirr 808/udp omirrd
canna 5680/tcp # cannaserver
zope-ftp 8021/tcp # zope management by ftp
webcache 8080/tcp # WWW caching service
tproxy 8081/tcp # Transparent Proxy
omniorb 8088/tcp # OmniORB
omniorb 8088/udp
server2:~#

So könnten Sie die folgende Konfiguration in /etc/rinetd.conf verwenden, sie hat den gleichen Effekt wie die erste:

vi /etc/rinetd.conf

| # # dies ist die Konfigurationsdatei für rinetd, den Internet-Umleitungsserver # # Sie können hier globale Erlauben- und Verweigern-Regeln angeben # nur IP-Adressen werden hier verglichen, Hostnamen können hier nicht angegeben werden # die Platzhalter, die Sie verwenden können, sind * und ? # # erlauben 192.168.2.* # verweigern 192.168.2.1? # # Weiterleitungsregeln kommen hier hin # # Sie können Erlauben- und Verweigern-Regeln nach einer bestimmten Weiterleitungsregel angeben # um nur auf diese Weiterleitungsregel anzuwenden # # bindadress bindport connectaddress connectport 192.168.0.101 www 192.168.0.100 www # Protokollierungsinformationen logfile /var/log/rinetd.log # Kommentieren Sie die folgende Zeile aus, wenn Sie das Protokollformat im Webserver-Stil wünschen # logcommon |

Und um rinetd auf allen IP-Adressen, die auf dem System konfiguriert sind, lauschen zu lassen, können wir 0.0.0.0 als bindaddress verwenden:

vi /etc/rinetd.conf

| # # dies ist die Konfigurationsdatei für rinetd, den Internet-Umleitungsserver # # Sie können hier globale Erlauben- und Verweigern-Regeln angeben # nur IP-Adressen werden hier verglichen, Hostnamen können hier nicht angegeben werden # die Platzhalter, die Sie verwenden können, sind * und ? # # erlauben 192.168.2.* # verweigern 192.168.2.1? # # Weiterleitungsregeln kommen hier hin # # Sie können Erlauben- und Verweigern-Regeln nach einer bestimmten Weiterleitungsregel angeben # um nur auf diese Weiterleitungsregel anzuwenden # # bindadress bindport connectaddress connectport 0.0.0.0 80 192.168.0.100 80 # Protokollierungsinformationen logfile /var/log/rinetd.log # Kommentieren Sie die folgende Zeile aus, wenn Sie das Protokollformat im Webserver-Stil wünschen # logcommon |

Nachdem Sie rinetd neu gestartet haben…

/etc/init.d/rinetd restart

… sollte rinetd jetzt auf allen Schnittstellen lauschen ( *:www):

netstat -tap

server2:~# netstat -tap
Aktive Internetverbindungen (Server und etabliert)
Proto Recv-Q Send-Q Lokale Adresse Fremde Adresse Zustand PID/Programmname
tcp 0 0 :sunrpc : LISTEN 1956/portmap
**tcp 0 0
:www : LISTEN 2503/rinetd*
tcp 0 0
:3025 : LISTEN 2347/rpc.statd
tcp 0 0 :auth : LISTEN 2306/inetd
tcp 0 0 localhost.localdom:smtp
: LISTEN 2294/exim4
tcp 0 0 server2.example.com:www 192.168.0.3:4798 TIME_WAIT -
tcp6 0 0
:ssh : LISTEN 2326/sshd
tcp6 0 0 server2.example.com:ssh ::ffff:192.168.0.3:4776 ESTABLISHED2409/0
server2:~#

3 Links

Share: X/Twitter LinkedIn

Erhalte neue Beiträge in deinem Posteingang.

Kein Spam. Jederzeit abmelden.