Chọn vai trò
Một trình phân giải đệ quy như Unbound và một giao diện lọc như AdGuard Home giải quyết các vấn đề liên quan nhưng khác biệt. Hãy quyết định xem dịch vụ tự đệ quy hay chuyển tiếp đến một upstream và hiểu bên nào sau đó sẽ thấy các truy vấn.
Giữ riêng tư
Một trình phân giải công khai không hạn chế có thể bị lạm dụng cho các cuộc tấn công phản xạ. Hãy liên kết với mạng riêng hoặc chỉ cho phép các nguồn được ủy quyền, bao gồm IPv6. Nếu sử dụng DNS được mã hóa, hãy xác thực hoặc hạn chế truy cập một cách phù hợp thay vì giả định rằng HTTPS khiến nó trở nên riêng tư.
Đặt chính sách ghi nhật ký
Các truy vấn DNS có thể tiết lộ hoạt động duyệt web và ứng dụng nhạy cảm. Tắt việc lưu giữ không cần thiết, bảo vệ các bản ghi bạn giữ và giải thích phạm vi cho người dùng. Vận chuyển được mã hóa bảo vệ một đường dẫn; nó không ngăn chính trình phân giải nhìn thấy các truy vấn.
Kiểm tra nhiều hơn một tên
Xác minh hành vi DNSSEC ở nơi được bật, kết quả IPv4 và IPv6, ngoại lệ lọc và phục hồi khi upstream gặp lỗi. Duy trì một cách an toàn để sửa quyền truy cập mà không phụ thuộc hoàn toàn vào trình phân giải bạn đang sửa.
Chứng minh người lạ không thể truy vấn nó
Liên kết trình phân giải với giao diện dự định, xác định dải máy khách được phép và hạn chế tường lửa. Xác thực cấu hình trước khi khởi động lại. Truy vấn từ một máy khách được ủy quyền, sau đó lặp lại từ ngoài mạng tin cậy: yêu cầu đó phải bị từ chối hoặc hết thời gian chờ. Kiểm tra IPv6 riêng. Một trình phân giải chấp nhận truy vấn internet tùy ý có thể trở thành nguồn lạm dụng.
- Chạy trình xác thực cấu hình trước khi áp dụng thay đổi
- Kiểm thử một máy khách được phép và một máy khách bị từ chối
- Giữ chẩn đoán truy vấn chi tiết chỉ tạm thời
unbound-checkconfTài liệu chính thức: Cấu hình kiểm soát truy cập không giới hạn
Giữ các tuyên bố DNS được mã hóa chính xác
DNS-trên-HTTPS hoặc DNS-trên-TLS mã hóa một đường truyền cụ thể. Trình phân giải vẫn nhận được truy vấn và một trình phân giải chuyển tiếp có thể chuyển nó cho nhà điều hành khác. Hãy xem xét lựa chọn thượng nguồn và việc lưu giữ. Nếu bạn công khai một điểm cuối trình phân giải được mã hóa, hãy đặt chính sách truy cập của nó có chủ đích như cổng DNS thông thường.
Chọn chuỗi trình phân giải trước khi mở cổng
Một thiết kế riêng tư hữu ích là máy khách VPN truy vấn AdGuard Home, với AdGuard chuyển tiếp đến Unbound trên loopback. Sau đó Unbound thực hiện đệ quy; AdGuard bổ sung lọc và giao diện quản lý. Hoặc chỉ dùng Unbound cho một ngăn xếp nhỏ hơn. Cấp cho mỗi trình lắng nghe một địa chỉ/cổng riêng biệt và vẽ hướng chuyển tiếp: gửi Unbound trở lại AdGuard sẽ tạo vòng lặp. Quyết định máy khách riêng tư nào được dùng dịch vụ trước khi công bố bất cứ điều gì.
- Giữ TCP và UDP đầu vào công khai 53 đóng trừ khi có chính sách cụ thể cho khách hàng được ủy quyền.
- Cấp quy tắc truy cập riêng cho giao diện lọc và trình lắng nghe DNS.
- Kiểm tra quyền sở hữu cổng trước khi cài đặt; một trình phân giải hệ thống hiện có có thể đã chiếm địa chỉ dự định.
Tài liệu chính thức: Thiết lập AdGuard Home
Điểm khởi đầu Unbound trên loopback
Trên hệ thống đã cài sẵn Unbound, đoạn cấu hình sau minh họa một backend chỉ truy cập được trên máy chủ. Hãy tích hợp nó với cấu hình của bản phân phối thay vì ghi đè cài đặt gói hoặc quản lý trust-anchor. Cổng cao cho phép một frontend DNS khác dùng cổng 53. Kiểm tra toàn bộ tệp hiệu lực, sau đó tải lại qua trình quản lý dịch vụ đã cài. Một máy khách từ xa cần một tunnel hoặc frontend được kiểm soát riêng; đoạn cấu hình này cố ý không tạo resolver công khai nào.
server:
interface: 127.0.0.1
port: 5335
access-control: 127.0.0.0/8 allow
access-control: 0.0.0.0/0 refuse
access-control: ::0/0 refuse
# Validate the complete installed configuration:
unbound-checkconfTài liệu chính thức: Tài liệu tham khảo cấu hình Unbound
Chạy danh sách kiểm tra nghiệm thu từ hai mạng
Trước tiên hãy truy vấn backend cục bộ, sau đó đến đường dẫn máy khách thông thường. Kiểm tra các bản ghi A/AAAA thông thường, một tên cố ý không tồn tại và xác thực DNSSEC bằng một miền kiểm thử đã được ghi tài liệu. Lặp lại từ một máy bên ngoài subnet được phép: máy đó không được nhận đệ quy. Xem xét liệu trình duyệt có dùng resolver mã hóa riêng và bỏ qua DNS của thiết bị đã cấu hình hay không. Giữ sẵn một resolver độc lập tạm thời trong quá trình thay đổi để một sai sót DNS không làm mất đường quản trị của bạn.
- Chẩn đoán cục bộ: dig @127.0.0.1 -p 5335 example.org A
- Kiểm tra cả khả năng tiếp cận UDP và TCP, cùng các trình lắng nghe IPv6.
- Xác nhận các ngoại lệ lọc và chỉ ghi lại những chẩn đoán thực sự cần thiết.
Chẩn đoán thời gian chờ, vòng lặp và lỗi xác thực
Lỗi hết thời gian chờ ở frontend trong khi backend cục bộ vẫn hoạt động gợi ý về địa chỉ frontend, tường lửa hoặc mục tiêu chuyển tiếp. Các truy vấn tự định hướng lặp lại gợi ý về một vòng lặp. Lỗi DNSSEC lan rộng có thể liên quan đến thời gian hệ thống không chính xác hoặc bảo trì trust-anchor; hãy khắc phục nguyên nhân thay vì để xác thực bị tắt. Nếu chỉ các phản hồi lớn bị lỗi, hãy điều tra dự phòng TCP và đường mạng. Giữ nhật ký truy vấn tạm thời, và kiểm tra khởi động lại cùng khôi phục cấu hình trước khi biến trình phân giải thành phụ thuộc cho mọi thiết bị.