Giữ các tuyến riêng và bỏ chuyển hướng: đường hầm chia tách OpenVPN
Một đường hầm chỉ dành cho mạng riêng cần hai quy tắc: các tiền tố riêng đi qua nó, duyệt web thông thường giữ đường cục bộ của nó. Xóa một tuyến mặc định không phải là chính sách.
Đường hầm được dựng lên, ứng dụng tải xong, và rồi mọi thứ khác trên máy tính xách tay bắt đầu hành xử kỳ lạ. Đó là hình dạng thường thấy của một chính sách chỉ riêng tư được triển khai bằng cách xóa một dòng. Bỏ một tuyến mặc định được đẩy xuống thì thật sự thay đổi nơi lưu lượng đi, nhưng nó không nói lưu lượng nên đi đâu thay vào đó, và nó hoàn toàn không chạm tới việc phân giải tên. Một chính sách cần hai nửa tích cực trước khi có thể kiểm tra.
Xóa chuyển hướng chỉ là một nửa của thay đổi
Chuyển hướng toàn bộ đường hầm và chính sách chỉ riêng tư khác nhau ở điều chúng khẳng định về thế giới. Chuyển hướng đòi mọi đích đến, trong khi chính sách riêng tư đòi một danh sách và để phần còn lại yên. Xóa khẳng định mà không viết danh sách tạo ra một máy khách không tới được gì bên ngoài mạng cục bộ, điều này trông giống lỗi định tuyến hơn là lỗ hổng trong chính sách. Hãy viết danh sách trước khi bỏ khẳng định, và thứ tự của hai bước đó không còn quan trọng nữa.
Cả hai nửa đều là yêu cầu chứ không phải mặc định. Các tiền tố riêng phải đi vào đường hầm, và các đích thông thường phải giữ đường mà chúng có trước khi kết nối.
Nếu một tổ chức bắt buộc đường hầm đầy đủ thì không điều nào ở đây áp dụng. Thiết kế chỉ riêng tư thuộc về những triển khai nơi định tuyến chia tách được chấp thuận.
pull-filter là một phép khớp, không phải công tắc
Chỉ thị pull-filter loại bỏ các tùy chọn được đẩy xuống có tên khớp với một tiền tố, và đó là tất cả những gì nó làm. Bỏ qua chuyển hướng để nguyên mọi tùy chọn được đẩy xuống khác tại chỗ, điều thường là thứ bạn muốn: các tuyến, cài đặt DNS và giá trị cổng tuyến vẫn đến. Nó cũng không thể loại bỏ một chỉ thị được viết trong hồ sơ cục bộ, vì việc lọc áp dụng cho những gì máy chủ đẩy xuống.
Hãy chống lại cám dỗ bỏ qua mọi tùy chọn bắt đầu bằng route. Mẫu đó cũng vứt bỏ các tuyến riêng mà kết nối cần, và nó có thể làm mất thông tin cổng mà đường hầm phụ thuộc vào.
route-nopull là một quyết định rộng hơn vẻ ngoài của nó. Nó ngăn máy khách chấp nhận các tuyến được đẩy xuống và các tùy chọn kiểu DHCP như một nhóm, đó là chính sách khác với việc lọc ra một tùy chọn.
Viết danh sách tuyến từ ứng dụng ra ngoài
Hãy bắt đầu từ thứ người dùng thật sự mở, rồi thêm các phần hỗ trợ. Một ứng dụng tại 10.60.20.15 ngụ ý mạng con 10.60.0.0/16 của nó, và một tên riêng ngụ ý bộ phân giải trả lời nó. Vì vậy một người dùng đã yêu cầu một ứng dụng cần hai đích đến và một quyết định DNS. Mọi thứ vượt ra ngoài danh sách đó đều nằm ngoài phạm vi theo thiết kế, và đó là điều giữ cho chính sách có thể xem xét lại.
Trên một máy chủ hợp tác, chúng trở thành hai tuyến được đẩy xuống, và không tuyến nào là chuyển hướng. Giữ nguyên cấu trúc liên kết của đường hầm và các giá trị cổng tuyến mà dịch vụ hiện có cung cấp.
Khi chỉ một số người dùng cần chính sách này, hãy áp dụng nó theo từng máy khách hoặc từng nhóm. Thay đổi định tuyến của mọi người để sửa yêu cầu của một nhóm là cách một đường hầm chia tách trở thành gián đoạn.
| Destination | Intended path |
|---|---|
10.60.0.0/16 | Tunnel, for the approved application services |
10.61.0.53/32 | Tunnel, to reach the internal resolver |
corp.example queries | Internal resolver, selected per namespace |
| Everything else | Local path and local resolver |
Để DNS đi theo cùng đường
Một tuyến tới bộ phân giải không phải là chính sách bộ phân giải. Trên máy khách systemd-resolved, kết quả ngữ nghĩa là một miền định tuyến cho không gian tên riêng trỏ tới bộ phân giải nội bộ, và đó là điều khiến chỉ những tên đó sử dụng nó. Một máy khách Windows cần cơ chế chính sách không gian tên của riêng nó thay vào đó. Một dòng máy chủ DNS trong hồ sơ không tự cài đặt điều nào trong hai điều đó.
Hãy kiểm tra những gì hệ điều hành đã chọn chứ không phải những gì hồ sơ yêu cầu. Trên Linux, resolvectl status hiển thị miền và máy chủ theo từng liên kết; trên Windows, bảng chính sách không gian tên là bằng chứng tương đương.
Giữ bộ phân giải có thể truy cập qua đường hầm, nếu không chính sách sẽ trỏ tới một địa chỉ không thể truy vấn. Một địa chỉ bộ phân giải mà đường hầm không tới được sẽ biến một chính sách đang hoạt động thành hết thời gian chờ.
Xác minh cả hai nửa khi kết nối lại
Kết nối lại máy khách sau thay đổi và kiểm tra tuyến hiệu lực tới một địa chỉ riêng và tới một địa chỉ công cộng. Sau đó phân giải một tên riêng và một tên công cộng và xác nhận rằng mỗi tên đã dùng bộ phân giải dự định. Một trang web công cộng tải được chỉ chứng minh nửa thứ hai, và đó là nửa thường hoạt động nhầm may.
Ghi lại chính sách đã hoàn tất trong một câu: các tiền tố và tên này dùng kết nối này, mọi thứ khác đi theo đường cục bộ. Sau đó giữ nó trong hồ sơ thay vì sửa cài đặt bộ điều hợp sau mỗi lần đăng nhập.