Bạn khởi động Windows Sandbox, mở trình duyệt bên trong, và trang tải qua kết nối thông thường dù máy chủ đã ở trên VPN một phút trước đó. Không có gì hỏng. Sandbox nhận một bộ điều hợp mạng ảo gắn vào switch mặc định của máy chủ, và việc đường hầm của máy chủ có bao trùm đường đi đó hay không là thuộc tính của ứng dụng khách VPN, không phải của Windows.

Sandbox thực sự nhận được gì

Sandbox là một máy ảo nhẹ với bộ điều hợp mạng riêng. Bộ điều hợp đó kết nối qua switch mặc định của Hyper-V trên máy chủ, switch này dịch lưu lượng của sandbox sang giao diện Ethernet ảo của máy chủ trước khi nó rời khỏi máy. Chi tiết này giải thích gần như mọi triệu chứng mà người ta báo cáo về việc này.

Vậy sandbox không phải là một tiến trình trên màn hình của bạn. Nó là một điểm cuối mạng riêng mà máy chủ chuyển tiếp các gói tin của nó, và tường lửa của máy chủ cùng ứng dụng khách VPN mỗi bên nhìn việc chuyển tiếp đó theo cách của mình. Một quy tắc viết cho tiến trình trình duyệt không tự động khớp với một khung đã được dịch từ switch ảo.

Hai yêu cầu trông như một

Đến được một tài nguyên riêng và buộc mọi yêu cầu của sandbox đi qua đường hầm là hai mục tiêu khác nhau. Cái đầu cần một tuyến và phân giải tên hoạt động cho điểm cuối của sandbox. Cái sau cần sự cưỡng chế chịu được việc kết nối lại và sự cố. Không cái nào suy ra từ cái kia, và một kiểm tra thỏa mãn cái này không nói gì về cái kia.

Kiểm tra địa chỉ công khai không trả lời đầy đủ cả hai câu hỏi. Nhìn thấy đầu ra VPN từ bên trong sandbox cho thấy một phần lưu lượng đã dùng đường hầm. Nó không nói gì về việc các tên riêng có được phân giải hay không, hay điều gì xảy ra với một yêu cầu bắt đầu trong khi đường hầm đang tắt.

Hãy ghi lại bạn cần cái nào trong hai trước khi thử bất cứ điều gì, vì hai yêu cầu dẫn đến các thiết kế khác nhau và chỉ một cái có thể được xác minh bằng trình duyệt.

Kiểm tra từ bên trong sandbox

Quan sát có ý nghĩa duy nhất đến từ phiên của chính sandbox, không phải từ máy chủ. Mở PowerShell ở đó và xem bộ điều hợp, phân giải tên và đường đi tới một địa chỉ tài liệu:

ipconfig /all
Resolve-DnsName files.corp.example
Test-NetConnection 198.51.100.7 -Port 443
Get-NetRoute -DestinationPrefix 0.0.0.0/0

Danh sách bộ điều hợp cho bạn biết địa chỉ và cổng mà sandbox nhận được. Một cổng khác với của máy chủ là bình thường với switch mặc định, nên hãy so sánh đầu ra thay vì cổng. Bài kiểm tra phân giải cho biết một tên riêng có được trả lời hay không, và đây thường là nơi các thiết lập split-horizon khác với máy chủ. Dòng tuyến cho biết sandbox cho rằng cổng nào sở hữu tuyến mặc định.

Lặp lại ba kiểm tra đó với đường hầm được kết nối và ngắt kết nối. Một kết quả không thay đổi giữa hai trạng thái đó là bằng chứng rằng đường hầm hoàn toàn không nằm trên đường đi của sandbox, bất kể kiểm tra công khai đã hiển thị địa chỉ nào.

Tắt mạng khi sandbox không cần đến

Để kiểm tra ngoại tuyến, một tệp cấu hình tùy chỉnh có thể loại bỏ mạng hoàn toàn. Cài đặt là một phần tử duy nhất trong tài liệu cấu hình:

<Configuration>
  <Networking>Disable</Networking>
</Configuration>

Tài liệu tham chiếu cấu hình sandbox ghi lại phần tử này và cảnh báo rằng mạng được bật có thể phơi bày mạng nội bộ cho các ứng dụng bạn không tin cậy. Cảnh báo đó chính là toàn bộ lý do để đặt nó một cách rõ ràng thay vì chấp nhận giá trị mặc định.

Tuy nhiên switch không chọn một giao diện VPN. Đó là một quyết định nhị phân về việc có mạng hay không, không phải cách ràng buộc sandbox vào một đường hầm cụ thể. Một yêu cầu nêu tên đầu ra không thể được thỏa mãn bởi một switch chỉ quyết định liệu có đầu ra hay không.

Thiết kế ranh giới trước khi cấp bất cứ điều gì

Nếu yêu cầu là cách ly nghiêm ngặt, hãy chọn thiết kế mạng máy ảo có thể thực thi điều đó và dùng chính sách được hỗ trợ của sản phẩm VPN cho lưu lượng được chuyển tiếp hoặc lưu lượng máy ảo. Đoán hành vi của ứng dụng khách trên máy chủ không phải là thiết kế, và một kiểm tra thành công không phải là triển khai.

Đừng trao cho một sandbox không đáng tin cậy hồ sơ VPN doanh nghiệp hay thông tin đăng nhập riêng để một bài kiểm tra vượt qua. Điều đó đánh đổi ranh giới bạn đang cố thiết lập lấy một kết quả xanh, và thông tin đăng nhập sống lâu hơn bài kiểm tra.

Ghi lại chế độ mạng, đầu ra quan sát được và hành vi kết nối lại trong ghi chú triển khai. Khi một bản cập nhật ứng dụng khách thay đổi cách xử lý lưu lượng được chuyển tiếp, chính những ghi chú đó nói rằng yêu cầu chưa bao giờ thực sự được đáp ứng.

Bài viết liên quan