Lưu lượng máy khách VPN và trạng thái tường lửa: luồng ngoài và trong
Luồng đường hầm và kết nối đã giải bọc là những gói tin khác nhau. Hãy quyết định bạn cho phép luồng nào và mỗi ranh giới có theo dõi trạng thái không.
Bắt tay VPN hoàn tất, máy khách nhận được địa chỉ, và một dịch vụ sau cổng vẫn từ chối kết nối. Tường lửa thường làm đúng những gì được bảo. Nó đã cho phép luồng đường hầm bên ngoài, vốn là gói tin khác với kết nối ứng dụng đã giải bọc. Từ đó có hai quyết định: bạn cho phép luồng nào, và ranh giới có theo dõi trạng thái hay không.
Cho đến khi bạn tách hai thứ đó ra, mọi thay đổi quy tắc chỉ là phỏng đoán.
Tường lửa nhìn thấy hai gói tin khác nhau
Trước khi giải bọc, tường lửa thấy lưu lượng hướng tới điểm cuối VPN: một luồng UDP bên ngoài tới bộ lắng nghe. Sau khi giải bọc, gói tin được chuyển tiếp mang địa chỉ bên trong của máy khách và đích của dịch vụ.
Một sự cho phép cho luồng bên ngoài không cấp quyền cho kết nối TCP được chuyển tiếp. Chúng có thể được đánh giá trong các chuỗi khác nhau, trên các giao diện khác nhau và với địa chỉ khác nhau sau khi dịch địa chỉ.
So sánh các bản bắt gói từ những vị trí tương đương ở hai bên. Bản bắt gói ở rìa đường hầm và bản bắt gói trên máy chủ cho thấy các bộ giá trị khác nhau cho cùng một phiên.
Quyết định thứ nhất: cho phép đường hầm hay dịch vụ
Nếu máy khách chỉ cần chính điểm cuối VPN, sự cho phép bên ngoài có thể đủ. Nếu cần một dịch vụ phía sau cổng, bạn cần sự cho phép chuyển tiếp cho đích và cổng đó. Một quy tắc đường hầm cũng cho phép dịch vụ là lựa chọn thiết kế bạn nên gọi tên, không phải sự cố.
Giữ phạm vi máy khách và phạm vi dịch vụ hẹp. Cho phép từ mạng con đường hầm tới toàn bộ mạng cục bộ là quyết định tin mọi máy chủ, không phải lối tắt cho một ứng dụng.
Viết hai quy tắc riêng. Quy tắc đường hầm và quy tắc dịch vụ thất bại theo cách khác nhau và được gỡ lỗi bằng bằng chứng khác nhau. Khi một quy tắc thất bại, bạn biết lớp nào cần kiểm tra trước.
Quyết định thứ hai: có trạng thái hay không ở mỗi ranh giới
Quy tắc cho luồng đã thiết lập có thể cho phép phản hồi của một trao đổi được phép, nhưng hành vi phụ thuộc vào sản phẩm. Một nhóm bảo mật trên đám mây thường theo dõi trạng thái; danh sách kiểm soát truy cập mạng con thường không theo dõi và cần xử lý rõ ràng ở cả hai chiều. Đừng cho rằng mọi ranh giới trên đường đi xử lý trạng thái giống nhau. Liệt kê từng ranh giới và đánh dấu có hay không theo dõi trạng thái trước khi thiết kế quy tắc.
Nếu một quy tắc thay đổi, các luồng đã theo dõi hiện có có thể tiếp tục hoạt động trong khi luồng mới thất bại, hoặc ngược lại. Khác biệt đó là manh mối hữu ích, không phải lý do xóa toàn bộ trạng thái kết nối trên một cổng đang hoạt động.
Thử với một yêu cầu mới được kiểm soát và kiểm tra các bộ đếm liên quan. Một lần thử sạch tốt hơn một lần đặt lại gây gián đoạn. Ghi tên bộ đếm vào bản ghi thay đổi để lần thử sau dùng cùng bằng chứng.
Kiểm chứng đường về dưới cùng chính sách
Gửi một yêu cầu mới từ máy khách tới dịch vụ, sau đó kiểm tra bộ đếm chiều đi và chiều về ở mỗi ranh giới. Xác nhận phản hồi dùng đường bạn mong đợi, đặc biệt nếu có dịch địa chỉ.
Giữ phạm vi máy khách dự kiến và phạm vi dịch vụ hẹp, và kiểm chứng đường về dưới cùng bộ quy tắc đã cho phép yêu cầu. Một quy tắc chỉ hoạt động vì luồng cũ còn mở không phải là quy tắc hoạt động.