Đưa cho ứng dụng khách của bạn một hồ sơ VPN là đưa cho nó một cấu hình do người khác viết, mà chương trình đó sau đó sẽ thực thi trên máy của bạn. Việc nhập nó có thể thay đổi nơi lưu lượng được bao phủ đi tới, thiết bị của bạn tin tưởng đối tác nào và trong một số định dạng là những chương trình cục bộ nào khởi chạy khi đường hầm dựng lên. Tệp không phải là dấu trang; nó là một chương trình nhỏ ở định dạng khai báo.

Hãy đọc nó như bạn đọc một tập lệnh shell từ cùng nguồn.

Ứng dụng khách diễn giải nó, không phải bạn

Mỗi trường trong tệp là một chỉ dẫn cho một ứng dụng khách cụ thể. Điểm cuối và giao thức quyết định đường hầm đi đâu, khối xác thực quyết định bí mật nào được yêu cầu, và các chỉ thị tuyến quyết định cái gì đi vào nó. Chứng chỉ hoặc khóa riêng có thể được nhúng dưới dạng khối thay vì được tham chiếu như tệp, và đó là lý do một tệp văn bản đôi khi mang mọi thứ cần thiết để mạo danh bạn trước một cổng. Chính đặc tính đó khiến việc chia sẻ tệp tùy tiện trở nên nguy hiểm đến vậy.

Hồ sơ OpenVPN cũng có thể mang móc tập lệnh, đường dẫn plugin và một mức bảo mật quy định liệu các móc đó có được chạy hay không. Chính sự kết hợp đó khiến một hồ sơ xa lạ đáng được đọc từng dòng thay vì nhấp đúp. Ứng dụng khách sẽ làm đúng những gì tệp nói, và nó sẽ làm điều đó với quyền của bạn.

Thay đổi định tuyến hiển thị sau một lần kết nối

Hồ sơ đường hầm đầy đủ cài đặt các tuyến gửi mọi thứ qua cổng, trong khi hồ sơ đường hầm chia tách chỉ gửi các tiền tố được chọn. Một số hồ sơ còn đẩy vào một máy chủ DNS, điều này âm thầm thay đổi ai nhìn thấy truy vấn của bạn. Không điều nào trong số đó tự nó là độc hại, và không điều nào trong số đó là rõ ràng từ tên tệp.

So sánh bảng định tuyến trước và sau kết nối đầu tiên và bạn sẽ thấy ý định trong nháy mắt. Một hồ sơ được quảng cáo là quyền truy cập vào một ứng dụng nội bộ nhưng lại cài một tuyến mặc định rộng hơn đang nói với bạn điều gì đó về tác giả của nó.

Vật liệu tin cậy và các móc mới là thứ mang trọng lượng thật

Một hồ sơ có thể cung cấp thông tin tin cậy cho ứng dụng khách VPN, và một gói cấu hình nền tảng có thể đi xa hơn và cài chứng chỉ hoặc gốc vào kho hệ thống. Đó là các phạm vi khác nhau với hậu quả khác nhau. Trường hợp trong phạm vi ứng dụng khách ảnh hưởng đến việc xác thực của một ứng dụng; trường hợp ở cấp hệ thống ảnh hưởng đến mọi thứ dùng kho tin cậy của nền tảng.

Móc tập lệnh và plugin là nửa còn lại. Một chỉ thị chạy lệnh khi kết nối, hoặc một plugin được nạp vào tiến trình của ứng dụng khách, có quyền của bạn và không có gì từ sự cô lập của ứng dụng khách. Nếu một hồ sơ bạn không yêu cầu chứa một thứ như vậy, đó là câu hỏi cho người đã gửi nó.

Không loại nào trong hai loại tự động là thù địch. Triển khai doanh nghiệp dùng cả hai. Điểm mấu chốt là mỗi loại đòi hỏi một lời giải thích mà bạn có thể kiểm chứng.

Xác minh nguồn gốc, rồi nhập bí mật

Xác định ai đã phát hành tệp qua một kênh bạn đã tin tưởng, không phải qua tin nhắn đã chuyển nó. So sánh chi tiết điểm cuối và chứng chỉ với tài liệu công bố của nhà cung cấp. Nếu một hồ sơ đến mà bạn không yêu cầu, hãy lấy cái mới trực tiếp từ nhà cung cấp thay vì sửa bản sao bạn được đưa. Hỏi nhà cung cấp hỗ trợ phiên bản ứng dụng khách nào, vì cùng một tệp có thể được một ứng dụng khách khác diễn giải khác đi.

grep -nE '^(remote|proto|auth-user-pass|redirect-gateway|route|route-nopull)' office.ovpn
grep -nE '^(up|down|plugin|script-security|setenv)' office.ovpn
openssl x509 -in embedded-ca.crt -noout -subject -issuer -dates

Đừng bao giờ đặt mật khẩu vào một trường không được giải thích để xem nó có hoạt động không, và đừng bao giờ chấp nhận một yêu cầu quyền lạ chỉ để hoàn tất việc nhập. Một kết nối thành công chứng minh điểm cuối đã trả lời, không hơn.

Hãy xóa bản sao đã nhập, không phải bản tải xuống

Ứng dụng khách sao chép hồ sơ vào kho riêng của chúng, nên xóa tệp đã tải xuống vẫn để kết nối đã nhập hoạt động. Hãy xóa nó qua giao diện của chính ứng dụng khách, và kiểm tra xem chứng chỉ nào được thêm trong quá trình nhập cũng đã biến mất chưa. Sau đó xác nhận các tuyến nó đã cài cũng đã biến mất.

Nếu một chứng chỉ được cài ở cấp hệ thống, xóa hồ sơ là không đủ. Việc dọn dẹp đó thuộc về quản lý tin cậy của nền tảng, và đáng làm một cách có chủ đích thay vì hy vọng lần khởi động lại tiếp theo sẽ xử lý.

Bài viết liên quan