Hai lệnh được dán cho thứ trông như cùng một việc trên OpenVPN Access Server, và chúng làm những việc khác nhau. systemctl restart openvpnas dừng và khởi động lại toàn bộ sản phẩm. sacli start nâng các dịch vụ nội bộ đọc cấu hình bạn vừa thay đổi. Chọn giữa hai lệnh không phải chuyện sở thích: nó phụ thuộc vào điều tài liệu của chính cấu hình nói, phiên của bạn có đi qua máy chủ bạn sắp khởi động lại hay không, và bạn có đang nhìn đúng sản phẩm hay không.

Hai tầng, một daemon

Access Server chạy như một đơn vị systemd duy nhất, openvpnas, và daemon đó giám sát các dịch vụ nội bộ phía sau giao diện web và các bộ lắng nghe VPN. sacli là giao diện dòng lệnh tới cùng bản cài đặt, tại /usr/local/openvpn_as/scripts/sacli, và có thể khởi động, dừng và hỏi các thành phần nội bộ đó mà không thay thế đơn vị.

Đó là lý do cả hai lệnh tồn tại. Khởi động lại daemon chạy lại mọi thứ, kể cả tiến trình kết thúc đường hầm của máy khách. sacli start yêu cầu daemon đang chạy nâng các thành phần của nó để chúng đọc cấu hình mới, và đó là điều hầu hết các thay đổi thuộc tính thực sự cần.

Điều kiện một: tài liệu của cấu hình nói gì

Hãy đọc trang của cấu hình bạn đã thay đổi, không phải trang của cấu hình bạn thay đổi tháng trước. Sau một thuộc tính được ghi qua ConfigPut thường là sacli start, và cặp đó là bước áp dụng được ghi trong tài liệu. Thay đổi hành vi ở mức bộ lắng nghe, hoặc bất cứ điều gì trang mô tả là cần khởi động lại dịch vụ, là nhóm mà việc khởi động lại đơn vị là đúng.

Hai lệnh không thể hoán đổi cho nhau, nên kiểu thất bại khi đoán là không đối xứng. Dùng sacli start khi cần khởi động lại đầy đủ để lại một tiến trình cũ vẫn phục vụ cấu hình trước, trông như cấu hình bị bỏ qua. Khởi động lại đầy đủ khi sacli start là đủ sẽ đẩy mọi máy khách đang kết nối ra ngoài mà không có lý do.

Điều kiện hai: phiên của bạn có trong đường hầm không

Nếu bạn quản trị Access Server qua VPN mà nó cung cấp, việc khởi động lại sẽ gỡ kết nối mang shell của bạn. Lệnh có thể hoàn tất sau khi phiên của bạn chết, nên bạn phải đoán xem nó có hiệu lực không. Vì cùng lý do, sacli start cũng có thể ngắt phiên trong chốc lát khi thành phần được khởi động lại xử lý lưu lượng của bạn.

Giữ một đường ngoài băng thông mở trước bất kỳ lệnh nào: bảng điều khiển của nhà cung cấp, bảng điều khiển hypervisor, hoặc một phiên nối tiếp. Điều kiện này quyết định khi nào bạn chạy lệnh, không phải lệnh nào, và chính nó biến một thay đổi hai phút thành báo cáo sự cố.

Điều kiện ba: đây có phải sản phẩm bạn nghĩ

Access Server không phải Community OpenVPN. Bản cài đặt cộng đồng chạy các đơn vị như openvpn@server hoặc openvpn-client@profile, với cấu hình trong /etc/openvpn, và sacli không tồn tại ở đó. Khởi động lại mọi đơn vị có openvpn trong tên trên một máy chủ chia sẻ là cách các đường hầm không liên quan cùng sập.

Xác định trước khi chạm vào bất cứ thứ gì: systemctl status openvpnas --no-pager trả lời Access Server có đang chạy không, sacli status liệt kê các thành phần nội bộ của nó, và systemctl list-units --type=service liệt kê các đơn vị có tên chứa openvpn. Nếu lệnh cuối hiển thị các đơn vị mang tên hồ sơ, bạn đang ở sản phẩm cộng đồng và phần còn lại ở đây không áp dụng cho bạn.

Áp dụng, rồi kiểm tra vượt qua active

Một đơn vị báo active có tiến trình đang chạy, điều đó không giống với một đường xác thực hoạt động. Sau bước áp dụng, kiểm tra sacli status cho các thành phần bạn mong được khởi động lại, xác nhận giá trị đã được lưu bằng sacli ConfigQuery, rồi chạy một lần đăng nhập máy khách giới hạn với tài khoản thử nghiệm.

Kết thúc bằng điều gì đó ở mức ứng dụng: chạm tới một tài nguyên riêng qua đường hầm, không chỉ ping tới địa chỉ công khai của máy chủ. Một cái bắt tay thành công trong khi tuyến bị đẩy hoặc cấu hình DNS sai sẽ vượt qua mọi kiểm tra dịch vụ và vẫn làm người báo sự cố thất vọng.

hướng dẫn của nhà cung cấp về quản lý dịch vụ là tài liệu tham chiếu về việc thao tác nào thuộc về sacli, và đáng mở trước khi bạn kết luận rằng khởi động lại là lựa chọn an toàn.

Quyết định trong một lượt

Đi xuống bốn dòng này và dừng ở dòng đầu tiên khớp:

  • Trang cấu hình nêu sacli start, hoặc bạn vừa chạy ConfigPut: dùng sacli start.
  • Trang yêu cầu khởi động lại, hoặc thay đổi chạm vào bộ lắng nghe chứ không phải thuộc tính: dùng systemctl restart openvpnas.
  • Shell của bạn đến qua máy chủ này: trước hết hãy chuẩn bị truy cập bảng điều khiển, rồi chạy lệnh mà hai dòng trên đã chọn.
  • Kiểm tra: sacli status, ConfigQuery cho giá trị, một lần đăng nhập, một tài nguyên riêng. Chỉ trạng thái dịch vụ không phải vạch đích.

Hai trong số các dòng đó là kiểm tra và hai là hành động, và đó là ý nghĩa của thứ tự. Nếu bạn không trả lời được câu hỏi về sản phẩm, hãy dừng: lệnh bạn sắp chạy thuộc về một bản cài đặt khác, và đường hầm bạn hạ xuống sẽ không phải cái bạn định.

Bài viết liên quan