Điểm:0

Không thể giải quyết vùng dns riêng qua vpn với bind9 DNS

lá cờ ca

Vấn đề

Tôi có một VPC mà tôi cần truy cập vào các máy chủ bằng FQDN riêng. Có thể truy cập VPC thông qua VPN bảo vệ dây. Máy chủ VPN cũng đóng vai trò là máy chủ DNS chạy BIND9. Tôi đã đặt máy chủ DNS với vùng riêng tư theo điều này hướng dẫn. Từ bên trong VPC, DNS hoạt động như mong đợi và tôi có thể truy cập máy chủ bằng FQDN được xác định trong vùng DNS.

Khi kết nối với VPC thông qua đường hầm VPN, tôi không thể giải quyết các FQDN đó mặc dù tôi đã thiết lập máy khách VPN để sử dụng máy chủ DNS riêng của mình. Tôi biết máy khách VPN sử dụng máy chủ DNS riêng của tôi vì khi tôi chạy nslookup google.com Tôi thấy địa chỉ IP của DNS của mình như bạn có thể thấy kết quả bên dưới:

Máy chủ: 10.118.0.2
Địa chỉ: 10.118.0.2#53
...

Nếu tôi chạy nslookup myprivate.domain.com từ một máy được kết nối với VPC thông qua đường hầm VPN, tôi nhận được một NXDOMAIN, điều tương tự cũng xảy ra với ping, nó không thành công với lỗi Tên hoặc dịch vụ không xác định. Tuy nhiên, nếu tôi chạy lệnh ping trên địa chỉ IP riêng từ VPC, nó sẽ hoạt động. Vì thế nếu myprivate.domain.com được lưu trữ trên máy chủ tại10.118.0.3, ping thành công trên địa chỉ IP nhưng không thành công trên FQDN.

Ngoài ra, hãy xem kết quả đào khi bên trong VPC so với khi từ một máy được kết nối qua VPN: đào dev.myprivatedomain.com ns: TỪ VPC:

;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 51703
;; cờ: qr aa rd ra; CÂU HỎI: 1, TRẢ LỜI: 1, AUTHORITY: 0, BỔ SUNG: 1

;; LỰA CHỌN PSEULiều lượng:
; EDNS: phiên bản: 0, cờ:; udp: 4096
; COOKIE: 9dccc02158dee7f70100000061a7e0a1ce2597e377b9c301 (tốt)
;; PHẦN CÂU HỎI:
;dev.myprivatedomain.com. TRONG NS

;; PHẦN THẨM QUYỀN:
nabuinternal.com. 604800 TRONG SOA ns1.myprivatedomain.com. ...

;; Thời gian truy vấn: 0 mili giây
;; MÁY CHỦ: 10.118.0.2#53(10.118.0.2)
;; KHI NÀO: Thứ Tư, ngày 01 tháng 12 20:52:49 UTC 2021
;; KÍCH THƯỚC MSG rcvd: 93

TỪ VPN:

;; Có câu trả lời:
;; ->>HEADER<<- opcode: QUERY, status: NXDOMAIN, id: 57158
;; cờ: qr rd ra; CÂU HỎI: 1, TRẢ LỜI: 0, AUTHORITY: 1, BỔ SUNG: 1

;; LỰA CHỌN PSEULiều lượng:
; EDNS: phiên bản: 0, cờ:; udp: 1232
;; PHẦN CÂU HỎI:
;dev.myprivatedomain.com. TRONG NS

;; PHẦN THẨM QUYỀN:
com. 900 TRONG SOA a.gtld-servers.net. nstld.verisign-grs.com. 1638392201 1800 900 604800 86400

;; Thời gian truy vấn: 44 mili giây
;; MÁY CHỦ: 10.118.0.2#53(10.118.0.2)
;; THỜI GIAN: Thứ Tư, ngày 01 tháng 12, 15:57:05 EST, 2021
;; KÍCH THƯỚC MSG rcvd: 122

Tôi nhận thấy rằng cả hai đều sử dụng cùng một máy chủ DNS, nhưng khi được yêu cầu từ VPN, quyền đối với miền riêng tư của tôi không được trả lại.

Tóm lại là, sau vài giờ nghiên cứu, tôi không thể tìm ra điều gì còn thiếu đối với các máy khách kết nối với VPC thông qua VPN để có thể phân giải các FQDN do DNS riêng của tôi xác định.

thông tin thêm

  • Máy chủ là Ubuntu 20.04 LTS
  • Ràng buộc 9: BIND 9.16.1-Ubuntu (Bản phát hành ổn định)
  • dây bảo vệ: wireguard-tools v1.0.20200513 cài đặt thông qua wirespeed
  • đã bật UFW

IP máy chủ VPN và DNS trong VPC là 10.118.0.2.

Nhóm địa chỉ VPN là 10.99.0.0/16 và tôi đã đặt cấu hình BIND9 theo cách sau:

acl "đáng tin cậy" {
    10.118.0.2; # máy chủ vpn và dns
    ...
    10.99.0.0/16; # nhóm địa chỉ vpn
    
};
tùy chọn {
    thư mục "/var/cache/bind";
    nghe-on-v6 { bất kỳ; };
    đệ quy có;
    cho phép đệ quy { đáng tin cậy; };
    nghe thử { 10.118.0.0/20; 10.99.0.0/16; };  
    cho phép chuyển { none; };
    giao nhận {
            8.8.8.8;
            8.8.4.4;
    };
};

Vùng được cấu hình theo cách này:

$ TTL 604800
@ TRONG SOA ns1.myprivatedomain.com. admin.myprivatedomain.com. (
                              9 ; nối tiếp
                         604800 ; Làm mới
                          86400 ; Thử lại
                        2419200 ; Hết hiệu lực
                         604800 ); Bộ đệm âm TTL
;                         
; máy chủ định danh - bản ghi NS
    TRONG NS ns1.myprivatedomain.com.

; máy chủ định danh - Bản ghi A
ns1.myprivatedomain.com. TRONG 10.118.0.2

; 10.118.0.0/20 - Bản ghi A
dev.myprivatedomain.com. TRONG 10.118.0.4
staging.myprivatedomain.com. TRONG 10.118.0.3

và tệp vùng đảo ngược:

$ TTL 604800
@ TRONG SOA ns1.myprivatedomain.com. admin.myprivatedomain.com. (
                              7 ; nối tiếp
                         604800 ; Làm mới
                          86400 ; Thử lại
                        2419200 ; Hết hiệu lực
                         604800 ); Bộ đệm âm TTL
;
; máy chủ định danh - bản ghi NS
    TRONG NS ns1.myprivatedomain.com.

; Bản ghi PTR
2.0 TRONG PTR ns1.myprivatedomain.com. ; 10.118.0.2
4.0 TRONG PTR dev.myprivatedomain.com. ; 10.118.0.4
3.0 IN PTR staging.myprivatedomain.com. ; 10.118.0.3

UFW được đặt để cho phép cổng 53 cho cả TCP và UDP.

Ngoài ra, UFW có trước các quy tắc cho phép lưu lượng truy cập từ VPN:

* tự nhiên
:POSTROUTING CHẤP NHẬN [0:0]
-A POSTROUTING -s 10.99.0.0/16 -o eth1 -j MASQUERADE

Quy tắc trước đó được thiết lập để cho phép máy khách kết nối với đường hầm VPN và sử dụng máy chủ DNS riêng. Nếu không có quy tắc này, tôi không thể truy cập internet trừ khi tôi đặt địa chỉ DNS thành địa chỉ công khai như địa chỉ của google. Tôi đã tìm thấy quy tắc này trong quá trình nghiên cứu của mình, tuy nhiên tôi vẫn chưa rành về cấu hình tường lửa và tôi chưa hiểu hết ý nghĩa của nó. Nó đã giúp tôi tiến gần hơn đến mục tiêu của mình, nhưng tôi cần đọc thêm về nó.

Dưới đây là cấu hình máy khách VPN wireguard:

[Giao diện]
...
DNS = 10.118.0.2
Địa chỉ = 10.99.0.2/16

[Ngang nhau]
...
IP được phép = 10.99.0.0/16, 10.118.0.0/20

lá cờ cn
Bob
Cấu hình liên kết của bạn chỉ hiển thị các trình chuyển tiếp nhưng không có bằng chứng cho thấy nó có thẩm quyền đối với miền riêng (phụ) của bạn. Thông thường, khi bạn chạy một máy chủ DNS tùy chỉnh, bạn cũng cần định cấu hình một hoặc nhiều vùng với các bản ghi DNS riêng tư (hoặc công khai) của mình
Arnaud Songa-Côté avatar
lá cờ ca
@Bob Tôi đã cập nhật bài đăng của mình để bao gồm các tệp vùng và vùng đảo ngược định cấu hình tên miền phụ riêng tư của tôi.
djdomi avatar
lá cờ za
lắng nghe được đặt sai, đó có thể là ip máy chủ hoặc giao diện

Đăng câu trả lời

Hầu hết mọi người không hiểu rằng việc đặt nhiều câu hỏi sẽ mở ra cơ hội học hỏi và cải thiện mối quan hệ giữa các cá nhân. Ví dụ, trong các nghiên cứu của Alison, mặc dù mọi người có thể nhớ chính xác có bao nhiêu câu hỏi đã được đặt ra trong các cuộc trò chuyện của họ, nhưng họ không trực giác nhận ra mối liên hệ giữa câu hỏi và sự yêu thích. Qua bốn nghiên cứu, trong đó những người tham gia tự tham gia vào các cuộc trò chuyện hoặc đọc bản ghi lại các cuộc trò chuyện của người khác, mọi người có xu hướng không nhận ra rằng việc đặt câu hỏi sẽ ảnh hưởng—hoặc đã ảnh hưởng—mức độ thân thiện giữa những người đối thoại.