Локалното пренасочване на OpenSSH пренася TCP. DNS също може да използва TCP, стига инструментът за заявки и отдалечената DNS услуга да използват този транспорт.

За DNS сървър, достъпен от SSH хоста, отворете пренасочване само към 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 добавя поле за дължина и потоково кадриране. Интеграцията със системния резолвер изисква подходящ DNS форуърдър или изрично поддържана TCP конфигурация.

И накрая, получаването на адрес по този път не насочва следващата уеб връзка през SSH. DNS търсенето и транспортът до дестинацията остават отделни избори.

Подобни статии