Локальне переадресування 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 і транспорт до призначення залишаються окремими рішеннями.

Схожі статті