Kysy DNS:ää TCP:n yli SSH-paikallisohjauksen kautta
Ohjaa paikallinen ei-juurioikeuksia vaativa TCP-portti etäälle DNS-palvelimelle ja pyydä DNS over TCP eksplisiittisesti dig-työkalulla.
OpenSSH:n paikallisohjaus kuljettaa TCP:tä. Myös DNS voi käyttää TCP:tä, jos kyselytyökalu ja etäinen DNS-palvelu käyttävät tätä kuljetusta.
Avaa vain loopbackissa kuunteleva ohjaus DNS-palvelimelle, joka on tavoitettavissa SSH-isännästä:
ssh -N -L 127.0.0.1:1053:dns.internal:53 [email protected]
Lähetä sen jälkeen paikalliselta koneelta eksplisiittinen TCP DNS -kysely:
dig +tcp @127.0.0.1 -p 1053 app.internal A
Korvaa DNS-palvelin, SSH-isäntä ja kysytty nimi aiottuilla arvoilla. SSH-palvelimen puolen on voitava tavoittaa dns.internal:53, ja ohjauskäytännön on sallittava se.
Paikallinen portti on etuoikeutettujen porttien alueen yläpuolella. Kysely paikalliseen porttiin 1053 ei vaadi järjestelmän DNS-portin 53 sitomista.
Tämä ei ohjaa tavallisia UDP DNS -kyselyitä automaattisesti uudelleen. Raaka UDP–TCP-tavupilli ei riitä, koska DNS over TCP lisää pituuskentän ja virran kehystyksen. Järjestelmän resolveriin integrointi vaatii sopivan DNS-välittäjän tai eksplisiittisesti tuetun TCP-määrityksen.
Lopuksi: osoitteen hankkiminen tätä kautta ei ohjaa seuraavaa verkkoyhteyttä SSH:n kautta. DNS-haku ja kohteen kuljetus pysyvät erillisinä valintoina.