SSH-ийн локал дамжуулалтаар TCP дээр DNS асуух
Локал давуу эрхгүй TCP портыг алсын DNS сервер рүү дамжуулж, dig-ээр DNS over TCP-г тодорхой хүсээрэй.
OpenSSH-ийн локал дамжуулалт TCP-г зөөдөг. DNS ч мөн TCP ашиглаж болно, хэрэв асуулгын хэрэгсэл болон алсын DNS үйлчилгээ тэр тээврийг ашиглаж байвал.
SSH хостос хүрэх боломжтой DNS серверийн хувьд зөвхөн loopback дээр сонсдог дамжуулалт нээнэ үү:
ssh -N -L 127.0.0.1:1053:dns.internal:53 [email protected]
Дараа нь локал машинаас тодорхой TCP DNS асуулга илгээнэ үү:
dig +tcp @127.0.0.1 -p 1053 app.internal A
DNS сервер, SSH хост болон асуух нэрийг зориулсан утгуудаар соль. SSH серверийн тал dns.internal:53-д хүрэх боломжтой байх ёстой бөгөөд дамжуулалтын бодлого үүнийг зөвшөөрөх ёстой.
Локал порт нь эрх бүхий портын мужаас дээгүүр байна. 1053 локал порт руу хийх асуулга системийн DNS порт 53-ыг холбохыг шаарддаггүй.
Энэ нь энгийн UDP DNS асуулгыг автоматаар дахин чиглүүлэхгүй. UDP-ээс TCP рүү түүхий байт хоолой хангалтгүй, учир нь DNS over TCP уртын талбар болон урсгалын хүрээ нэмдэг. Системийн resolver-той нэгтгэхэд тохирох DNS дамжуулагч эсвэл тодорхой дэмжигдсэн TCP тохиргоо шаардлагатай.
Эцэст нь, энэ замаар хаяг авах нь дараагийн вэб холболтыг SSH-ээр дамжуулахгүй. DNS хайлт болон очих газар руу тээвэрлэх нь тусдаа сонголт хэвээр байна.