OpenVPN không giao diện: phiên có giám sát hay dịch vụ được quản lý
Khởi chạy OpenVPN qua SSH là một thay đổi trên mạng từ xa. Hãy chọn một phiên có giám sát hoặc dịch vụ của riêng bạn, và chuẩn bị thông tin đăng nhập cùng đường quay lại.
Chạy OpenVPN qua SSH sẽ khởi động nó trên máy từ xa, trong ngữ cảnh thực thi của chính máy đó. Điều đó khiến nó thành một thay đổi trên mạng từ xa chứ không phải một lần nhấn nút từ xa. Hai chế độ hợp lý là một phiên nền trước có giám sát và một dịch vụ của riêng bạn, và chúng có cách chuẩn bị, thông tin đăng nhập và hành vi khi lỗi khác nhau.
Hai chế độ, một hồ sơ
Cả hai chế độ dùng cùng một hồ sơ và cả hai đều thay đổi định tuyến trên máy chủ. Điều khác biệt là ai có mặt khi nó khởi động, và điều gì xảy ra sau khi phiên kết thúc.
| Mode | Useful for | What it needs |
|---|---|---|
| Supervised foreground session | A connection with a human watching and able to type | A usable terminal, a reviewed profile and recovery access |
| Managed service | An unattended lifecycle that starts without a login | Owned configuration, supported credential delivery and restart policy |
Chế độ nền trước dành cho một kết nối có giám sát, nơi có người hiện diện. Chế độ dịch vụ dành cho một kết nối phải khởi lên mà không có ai đăng nhập. Trộn lẫn cả hai, bằng cách để một tiến trình nền trước chạy trong khi đồng thời bật một dịch vụ trên cùng hồ sơ, là sự cố tự gây phổ biến nhất ở đây.
Phiên nền trước thực sự là gì
Một tiến trình OpenVPN nền trước được cho là tiếp tục chạy chừng nào đường hầm còn hoạt động. Initialization Sequence Completed nghĩa là quá trình khởi tạo đã xong, không phải là bạn nên chờ dấu nhắc quay lại. Giao diện đồ họa trên máy tính để bàn giấu công việc dài hơi đó sau một cửa sổ, và chính vì thế người ta mong lệnh SSH cũng hành xử như vậy. Nó không như vậy.
Kiểm tra quyền truy cập của ứng dụng riêng. Một terminal đang bận và một dòng nhật ký không chứng minh thành công cũng không chứng minh thất bại.
Một dịch vụ không giám sát cần gì
Dịch vụ khởi động với tài khoản, thư mục làm việc và các giới hạn hệ thống tệp của riêng nó, và tất cả những thứ đó khác với shell của bạn. Hãy dùng đường dẫn rõ ràng và quyền sở hữu phù hợp thay vì dựa vào chỗ bạn tình cờ đứng. Hãy cho unit một chính sách khởi động lại mà bạn thực sự muốn, vì vòng lặp kết nối không có giãn cách sẽ làm đầy nhật ký và khiến đối tác khó chịu. Sau đó xác minh rằng nó khởi lên sau khi khởi động lại máy chứ không phải sau lần đăng nhập tiếp theo của bạn.
MFA tương tác phá vỡ trường hợp không giám sát ngay từ thiết kế. Nếu hồ sơ cần một mã do người nhập, thì đó không phải dịch vụ không giám sát, và mã dùng một lần được lưu trữ không phải là thiết kế thông tin đăng nhập. Hãy quyết định điều đó một cách có chủ đích thay vì phát hiện khi khởi động.
Thông tin đăng nhập là bốn đầu vào khác nhau
Hướng dẫn của OpenVPN tách đầu vào console, tệp thông tin đăng nhập, cụm mật khẩu khóa riêng và tương tác do trình quản lý điều khiển. Cặp tên đăng nhập và mật khẩu là một thứ, còn cụm mật khẩu của khóa được mã hóa là thứ khác. Giao diện quản lý cung cấp thông tin đăng nhập theo yêu cầu là thứ ba. Hãy chọn cơ chế phù hợp với thiết kế xác thực của bạn thay vì nối tất cả vào một tệp vì điều đó từng may mắn chạy được.
Bảo vệ các hồ sơ và nhật ký mang danh tính hoặc tài liệu riêng tư. Tài khoản dịch vụ đọc chúng, và bất kỳ ai có tư cách thành viên nhóm đúng cũng vậy.
Một chủ sở hữu, và một đường quay lại
Giữ tuyến quản trị SSH của bạn trước khi bật một tuyến đường hầm rộng. Cấu hình đường hầm toàn phần với một điểm cuối chết có thể khiến máy không thể truy cập, và việc sửa chữa khi đó cần một console mà bạn chưa chuẩn bị. Một console ngoài băng được phê duyệt hoặc một chính sách quay lại quản trị có chủ đích là bảo hiểm.
Chọn một chủ sở hữu cấu hình duy nhất cho vận hành thường ngày. Một dịch vụ tự động và một tiến trình nền trước tranh nhau cùng các giao diện, tuyến đường và trạng thái trình phân giải sẽ tạo ra những sự cố trông như vấn đề của nhà cung cấp. Dừng một lần chạy có giám sát bằng ngắt bình thường của nó, và một lần chạy được quản lý qua trình quản lý của nó thay vì giết mọi tiến trình tên openvpn.
Khác biệt cần ghi lại rất đơn giản: một lần chạy có giám sát có thể phụ thuộc vào phiên của bạn, còn dịch vụ không giám sát thì không.