Rinetd
Du bist hier : | {{#youAreHere:Rinetd}} |
Beschreibung
Rinetd ist ein TCP Redirection-Server, der Verbindungen an eine IP-Adresse und einen Port an eine andere IP und einen anderen Port weiterleiten kann. Aufgrund seiner Single-Prozess-Architektur ist er sehr belastbar und erzeugt wenig Last.
Die Konfig-Datei /etc/rinetd.conf enthält die IP/Port-Paare. Dort sind auch Allow-/Deny-Regeln möglich.
Rinetd ist Bestandteil der gängigen Distris und kann über die Installations-Werkzeuge installiert werden.
Beispiel
Aufbau eines klassischen Netzwerks mit Router, Mail-Relay und Firewall
Topologie
Im Bild sieht man eine häufig verwendete Topologie für Mail-Verkehr in Firmen-Netzen. Auf dem internen Mailserver (192.168.1.15/24) läuft meist Exchange oder Domino. Ausgehende Mails passieren den Firewall-Router hin zum Mail-Relay. Der Relay steht im Internet. Darauf läuft oft Linux mit Postfix, Qmail oder Exim als MTA. Eingehende Mails kommen am Relay an und werden über den Firewall-Router an den internen Mailserver weitergeleitet.
Firewall-Router
Auf dem Firewall-Router läuft auch Linux. Normalerweise aktiviert man das Kernel-Routing (Forwarding), damit die Mails weitergeleitet werden. Kontrolliert wird der Datenverkehr nur über iptables-Filterregeln.
rinetd als Alternative zum Forwarding
Rinetd kann das Forwarding fast aller TCP-basierten Dienste übernehmen. Eine mögliche /etc/rinetd.conf kann so aussehen:
allow 192.168.1.* # LAN freigeben allow 172.16.1.* # Transfernetz freigeben 192.168.1.10 25 172.16.1.5 25 # Ausgehende Mails forwarden 172.16.1.6 25 192.168.1.15 25 # Eingehende Mails forwarden
Und UDP?
Meist hat man auch noch einen UDP-basierten Dienst zu forwarden: DNS. Als mögliche Proxies kommen Bind 8 (schlanker als 9) und dnsmasq in Frage. Dann kann das Kernel-Forwarding abgeschaltet werden. Sämtlicher Datenverkehr wird jetzt über Serverdienste abgearbeitet.
Vorteile
- Feinere Kontrollmöglichkeiten über die Datenströme.
- Jedes Paket wird durch einen Serverdienst komplett neu aufgebaut.
Nachteile
- Mehr Komplexität
- Mind. 2 Dienste mehr, die Bugs haben können und entsprechend gepflegt werden müssen.
Links
- http://lenz.homelinux.org/rinetd/rinetd.html - Homepage
- http://www.boutell.com/rinetd/ - Manpage