SSH yerel yönlendirmesi üzerinden TCP ile DNS sorgulama
Yerel ayrıcalıksız bir TCP bağlantı noktasını uzak DNS sunucusuna yönlendirin ve dig ile DNS over TCP'yi açıkça isteyin.
OpenSSH yerel yönlendirmesi TCP taşır. Sorgu aracı ve uzak DNS hizmeti bu taşımayı kullanıyorsa DNS de TCP kullanabilir.
SSH ana bilgisayarından erişilebilen bir DNS sunucusu için yalnızca loopback üzerinde dinleyen bir yönlendirme açın:
ssh -N -L 127.0.0.1:1053:dns.internal:53 [email protected]
Ardından yerel makineden açık bir TCP DNS sorgusu gönderin:
dig +tcp @127.0.0.1 -p 1053 app.internal A
DNS sunucusunu, SSH ana bilgisayarını ve sorgulanan adı amaçlanan değerlerle değiştirin. SSH sunucusu tarafı dns.internal:53 adresine ulaşabilmeli ve yönlendirme ilkesi buna izin vermelidir.
Yerel bağlantı noktası ayrıcalıklı bağlantı noktaları aralığının üzerindedir. Yerel 1053 bağlantı noktasına yapılan sorgu, sistemin DNS bağlantı noktası 53'ü bağlamayı gerektirmez.
Bu, sıradan UDP DNS sorgularını otomatik olarak yeniden yönlendirmez. Ham UDP'den TCP'ye bayt borusu yeterli değildir, çünkü DNS over TCP bir uzunluk alanı ve akış çerçevelemesi ekler. Sistem çözümleyicisiyle bütünleşme, uygun bir DNS yönlendiricisi veya açıkça desteklenen bir TCP yapılandırması gerektirir.
Son olarak, bu yoldan adres almak sonraki web bağlantısını SSH üzerinden geçirmez. DNS araması ve hedefe taşıma ayrı seçimler olarak kalır.