DNS მოთხოვნა TCP-ზე SSH ლოკალური გადამისამართებით
გადაამისამართეთ ლოკალური არაპრივილეგირებული TCP პორტი დისტანციურ DNS სერვერზე და ღიად მოითხოვეთ DNS over TCP dig-ის საშუალებით.
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 ძიება და დანიშნულების ტრანსპორტი ცალკეულ არჩევანებად რჩება.