Die lokale Weiterleitung von OpenSSH überträgt TCP. DNS kann ebenfalls TCP nutzen, sofern das Abfragewerkzeug und der entfernte DNS-Dienst diesen Transport verwenden.

Für einen DNS-Server, der vom SSH-Host aus erreichbar ist, öffne eine nur auf Loopback lauschende Weiterleitung:

ssh -N -L 127.0.0.1:1053:dns.internal:53 [email protected]

Sende danach eine ausdrückliche TCP-DNS-Abfrage vom lokalen Rechner:

dig +tcp @127.0.0.1 -p 1053 app.internal A

Ersetze den DNS-Server, den SSH-Host und den abgefragten Namen durch die vorgesehenen Werte. Die SSH-Serverseite muss dns.internal:53 erreichen können, und die Weiterleitungsrichtlinie muss dies erlauben.

Der lokale Port liegt oberhalb des Bereichs privilegierter Ports. Eine Abfrage an einen lokalen Port 1053 erfordert kein Binden des System-DNS-Ports 53.

Dies leitet gewöhnliche UDP-DNS-Abfragen nicht automatisch um. Eine rohe Byte-Pipe von UDP nach TCP genügt nicht, weil DNS over TCP ein Längenfeld und Stream-Framing ergänzt. Die Integration in den System-Resolver erfordert einen geeigneten DNS-Forwarder oder eine ausdrücklich unterstützte TCP-Konfiguration.

Schließlich führt eine so ermittelte Adresse nicht dazu, dass die anschließende Webverbindung über SSH läuft. DNS-Auflösung und Transport zum Ziel bleiben getrennte Entscheidungen.

Ähnliche Artikel