Hai công cụ riêng tư đang chạy, một trang không tải được, và một bài kiểm tra trình phân giải nói rằng thứ gì đó bên ngoài trình duyệt đã nhận được một tên. Trước khi nó thành báo cáo rò rỉ, hãy gọi tên trao đổi mà nó đến từ đó. Một thiết lập Tor cộng VPN chứa ít nhất ba truy vấn tên khác nhau với ba chủ sở hữu khác nhau, và việc đi qua chúng theo đúng thứ tự chúng xảy ra là cách nhanh nhất để thấy cái nào đang hành xử sai.

Gọi tên từng trao đổi trước khi gọi đó là rò rỉ

Trao đổi đầu tiên phân giải chính điểm cuối VPN, và nó xảy ra trước khi có bất kỳ sự bảo vệ nào. Trao đổi thứ hai phân giải một đích cho Tor Browser, trình duyệt này có thể giao tên cho proxy thay vì phân giải nó cục bộ. Trao đổi thứ ba bao trùm mọi thứ còn lại trên máy, gồm kiểm tra cập nhật, ứng dụng thư và các truy vấn dịch vụ của chính hệ điều hành. Chỉ cái đầu tiên trong số đó có thể xảy ra mà không cần hai cái kia tham gia.

Mỗi cái có thể đi theo một đường khác, và một bài kiểm tra trong trình duyệt chỉ quan sát yêu cầu của chính nó. Việc coi một kết quả là trạng thái của cả ba chính là nơi phần lớn sự nhầm lẫn bắt đầu.

Ghi lại tên nào thuộc lớp nào trước khi thay đổi bất cứ điều gì. Tên tổ chức riêng tư, một đích công khai và chính điểm cuối đường hầm không có cùng yêu cầu, và một chính sách coi chúng là một loại sẽ làm hỏng thứ gì đó.

Truy vấn khởi động xảy ra trước đường hầm

Ứng dụng khách được cấu hình bằng tên máy chủ phải phân giải tên đó để mở đường hầm, và tại thời điểm đó không có đường hầm nào để mang truy vấn. Trình phân giải nào mà hệ điều hành cung cấp trên mạng hiện tại sẽ trả lời, đó có thể là cổng bắt giữ, trình phân giải khách sạn hoặc một trình công cộng. Đây không phải rò rỉ trong đường hầm, vì chưa có đường hầm.

Việc thay đổi thiết lập DNS an toàn của trình duyệt cũng không đụng tới truy vấn này, vì nó thuộc một dịch vụ chạy ngoài trình duyệt và bắt đầu trước khi bất kỳ trang nào được mở. Nếu tên điểm cuối không phân giải được, không chính sách nào bên trong đường hầm giúp được, vì lỗi xảy ra sớm hơn một giai đoạn so với mọi thứ mà cấu hình mô tả.

Đây là nơi duy nhất mà việc dùng địa chỉ nguyên văn cho điểm cuối, nếu nhà cung cấp hỗ trợ, loại bỏ một phụ thuộc thay vì thêm một phụ thuộc. Nó cũng loại bỏ khả năng đi theo nhà cung cấp xoay địa chỉ, nên sự đánh đổi là thật và nên được quyết định thay vì được phát hiện.

Trình duyệt và phần còn lại của máy khác nhau

Giao diện SOCKS của Tor hỗ trợ chuyển tên máy chủ đích tới proxy, nghĩa là đầu xa thực hiện việc phân giải và máy cục bộ không bao giờ hỏi. Một ứng dụng tổng quát hỗ trợ proxy có thể phân giải tên cục bộ trước rồi kết nối tới địa chỉ có được, điều này tạo ra truy vấn cục bộ cho một đích mà người dùng tưởng là đã qua proxy. Vì vậy hai ứng dụng có thể rò rỉ ở những chỗ khác nhau trong khi dùng chung một thiết lập proxy. Không gì trong một địa chỉ proxy dùng chung cho bạn biết hành vi nào trong hai đang được dùng.

Trình duyệt thêm một lớp nữa khi DNS an toàn được bật, vì trình duyệt có thể chọn nhà cung cấp riêng và bỏ qua hoàn toàn trình phân giải của hệ thống. Trong khi đó ứng dụng khách đường hầm có thể đẩy một trình phân giải qua đường hầm cho cả máy. Hai thiết lập này có thể đều đúng và vẫn mô tả hành vi khác nhau cho các chương trình khác nhau.

Hãy kiểm tra chương trình đã tạo yêu cầu thay vì ngoại suy từ một trang kiểm tra. Sự khác biệt giữa một truy vấn được mang bên trong đường hầm và một truy vấn chưa bao giờ tới Tor chính là sự khác biệt mà một địa chỉ trình phân giải không thể hiển thị.

Kiểm tra từng chương trình, rồi so sánh với ý định

Thực hiện các quan sát riêng rẽ: hệ thống sẽ dùng gì, trình duyệt được cấu hình cho gì, và kết nối SOCKS mang một tên hay một địa chỉ. Điều cuối cùng là khác biệt giữa phân giải từ xa và cục bộ, và đặc tả phần mở rộng SOCKS mô tả cách một tên máy chủ được chuyển đi thay vì được phân giải trước.

resolvectl status | grep -E "Current DNS Server|DNS Servers"
ss -tnp '( dport = :9050 )'
dig +short dev.internal.example
getent hosts vpn-endpoint.example.net

Sau đó so sánh điều bạn quan sát được với điều bạn định làm. Một tên công khai được trình phân giải bạn chọn phân giải qua đường hầm không phải là cùng một phát hiện với một tên riêng tư được giao cho một trình phân giải công khai trong lúc dự phòng, và thường chỉ cái thứ hai cần hành động. Cái đầu là một cấu hình hoạt động đúng như thiết kế, kể cả khi nó trông lạ trong một báo cáo.

Ghi lại những ngoại lệ bạn chấp nhận, gồm truy vấn khởi động không thể bảo vệ. Một ngoại lệ được viết ra là một quyết định thiết kế, trong khi cùng ngoại lệ đó bị phát hiện sau này trông như một khiếm khuyết. Người phát hiện sẽ coi nó như vậy, và bạn sẽ dành cuộc họp để giải thích tại sao không phải.

Bài viết liên quan