Hãy nhờ hai quản trị viên mô tả cùng một VPN và một người có thể trả lời «SSL VPN» trong khi người kia nói «site-to-site», như thể hai thứ là lựa chọn cạnh tranh trong menu. Chúng là câu trả lời cho những câu hỏi khác nhau, và coi chúng như phương án thay thế tạo ra những so sánh không thể giải quyết. Hãy tách hai trục ra và phần lớn cuộc tranh luận biến mất.

Hai nhãn, hai câu hỏi riêng biệt

Cấu trúc liên kết trả lời ai tham gia vào cái gì. Một thiết kế truy cập từ xa gắn người dùng hoặc thiết bị riêng lẻ vào cổng, thường với danh tính theo từng người dùng và một nhóm địa chỉ. Một thiết kế site-to-site nối hai mạng qua các cổng, nên danh tính đáng quan tâm là cổng đối tác chứ không phải người ngồi trước bàn phím. Đây là những vấn đề vận hành khác nhau, từ quy hoạch địa chỉ đến việc ai có thể thu hồi quyền truy cập lúc 2 giờ sáng.

Cơ chế trả lời tunnel được xây dựng và xác thực thế nào. IPsec với IKEv2, một sản phẩm dựa trên TLS mang IP bên trong, và một cổng ứng dụng hướng tới trình duyệt là những lựa chọn cơ chế, và mỗi loại có thương lượng, bộ mã hóa và chế độ lỗi riêng. Không loại nào ngụ ý một cấu trúc liên kết, và cấu trúc liên kết không chọn cơ chế.

Đặt hai trục vào một bảng và sự nhầm lẫn trở nên rõ ràng, vì mọi ô của lưới đều có thể được điền. Điều mà lưới không thể làm là cho bạn biết nhà cung cấp của bạn đã giao tổ hợp nào, vì tên sản phẩm gộp cả hai trục vào một cụm từ tiếp thị.

Lỗi phân loại đến từ đâu

Các nhà cung cấp đã bán «SSL VPN» trong nhiều năm như đối lập của «IPsec VPN», khiến việc so sánh cơ chế trông giống như lựa chọn cấu trúc liên kết. Cụm từ này cũng đã cũ đi theo chính các điều kiện của nó, vì các thiết kế hiện nay dùng phiên bản TLS được hỗ trợ và cái tên SSL chủ yếu tồn tại như một danh mục sản phẩm.

AxisQuestion it settlesWhat it cannot tell you
TopologyWhether users join a gateway or two networks join each otherWhich protocol carries the traffic, or how peers prove identity
MechanismWhich protocol suite builds the tunnel and negotiates keysWhether the endpoints are people, devices or routers
Access surfaceWhether the client sees a routed network or a set of published applicationsWhich topology or mechanism is underneath the portal
AuthenticationWhat proof each side presents, and to whomWhether the traffic is later authorized per resource

Hai huyền thoại liên quan đến từ cùng một sự gộp lại. Thứ nhất là IPsec nghĩa là site-to-site; IKEv2 cũng được thiết kế cho quan hệ máy khách-cổng, nên một máy tính xách tay riêng lẻ có thể tham gia bằng IPsec. Thứ hai là sản phẩm dựa trên TLS chỉ có nghĩa là truy cập từ xa; OpenVPN thường được dùng để mang lưu lượng giữa hai site, và việc dùng TLS của nó tập trung vào trao đổi điều khiển và xác thực chứ không phải phiên trình duyệt.

Một phép thử hữu ích cho mọi mô tả: nếu thay một từ mà thay đổi cả điểm cuối lẫn giao thức, câu đó đang trộn các trục. «SSL VPN so với site-to-site» không qua phép thử đó, vì thuật ngữ đầu tiên đặt tên một họ cơ chế và thuật ngữ thứ hai đặt tên một cấu trúc liên kết.

Mô tả một triển khai để có thể so sánh

Viết bốn trường và điền vào: điểm cuối, cơ chế, xác thực và bề mặt truy cập. Một liên kết chi nhánh có thể được đọc như một cặp cổng IKEv2 giữa hai tiền tố có tên với xác thực bằng chứng chỉ và không có cổng cấp người dùng. Một dịch vụ truy cập từ xa có thể được đọc như một máy khách dựa trên TLS cấp địa chỉ cho từng người dùng, yêu cầu yếu tố thứ hai khi đăng nhập và chỉ công bố một vùng DNS nội bộ.

Những câu đó có thể so sánh theo cách mà tên sản phẩm không thể. Hai thiết kế truy cập từ xa có thể được đo theo cùng luồng công việc người dùng và cùng đường thu hồi, và hai thiết kế giữa các site theo cùng danh sách tiền tố, chính sách lưu lượng và yêu cầu lỗi. Các nhãn tổ chức so sánh; chúng không thay thế nó.

Thuật ngữ cũng có một điểm neo được công bố. Tài liệu thuật ngữ VPN của IETF tách một số mô hình dịch vụ, gồm truy cập từ xa và site-to-site, khỏi các cơ chế được dùng để xây dựng chúng, và đó chính là sự phân biệt liên tục bị mất.

Hãy đọc giao thức đã thương lượng, không phải tên sản phẩm

Nhãn trên hộp không xác định tunnel đang chạy đã đồng ý điều gì. Hỏi trực tiếp đối tác, ở phía TLS, và đọc phiên bản giao thức và mã hóa mà bắt tay tạo ra thay vì phiên bản trong tài liệu quảng cáo.

openssl s_client -connect vpn.example.net:443 -tls1_3 -brief

Với một cổng IPsec, quan sát tương đương đến từ đầu ra trạng thái của chính triển khai, nơi báo cáo các đề xuất IKE và ESP đang dùng. Dù thế nào, điểm mấu chốt vẫn vậy: trục cơ chế phải được đọc từ phiên đang sống, vì máy khách và cổng có thể thương lượng xuống một thứ cũ hơn cả hai quản trị viên mong đợi.

ipsec statusall | grep -E "IKE|ESP"

Sau đó, những câu hỏi còn lại là những câu không nhãn nào trả lời. Những phiên bản giao thức nào vẫn được chấp nhận, danh tính của cổng được xác thực thế nào, bộ thuật toán nào được phép, ai cấp quyền cho một người dùng cụ thể với một tài nguyên cụ thể và điều gì thu hồi quyền truy cập khi mất thiết bị. Sơ đồ cấu trúc liên kết và tên cơ chế là khởi đầu của danh sách đó, không phải vật thay thế.

Vậy hãy giữ hai nhãn, nhưng dùng chúng đúng như bản chất: cách ngắn gọn để nói điểm cuối nào được nối và tunnel được xây dựng thế nào. Khoảnh khắc một nhãn được dùng để loại trừ nhãn kia, mô tả đó đã ngừng mô tả bất cứ điều gì.

Bài viết liên quan