Bạn cần ứng dụng VPN để đến được mạng lẽ ra cung cấp các gói của nó, và đó là một vòng tròn nhỏ gọn gàng. Tải một DEB OpenVPN duy nhất trên máy khác thường kết thúc bằng một phụ thuộc thiếu thứ hai, rồi thứ ba, rồi cả buổi tối chạy theo các phiên bản thư viện. Giải pháp thay thế là để máy không kết nối tự nói, bằng ngôn ngữ của chính nó, trình quản lý gói của nó cần gì. Mọi thứ bên dưới đều xuất phát từ việc đảo ngược ai là người hỏi.

Trên các hệ thống thuộc họ Debian, cuộc trò chuyện đó diễn ra qua apt-offline, một quy trình yêu cầu và trả về. Môi trường chạy của chính nó phải có mặt trên máy đích trước, được cài từ phương tiện đã phê duyệt hoặc một bootstrap khác do quản trị viên quản lý, vì không công cụ nào tự khởi động từ hư không.

Hãy bắt đầu từ trạng thái gói của máy đích, không phải của máy hỗ trợ

Trước mọi thứ khác, hãy ghi lại bản phát hành phân phối, kiến trúc không gian người dùng và các nguồn gói đã cấu hình của máy đích. Ba sự thật đó quyết định cách triển khai VPN nào và tích hợp màn hình nào là phù hợp, và đó là những sự thật mà một máy hỗ trợ đã kết nối không thể cung cấp.

Máy hỗ trợ tải tệp xuống; nó không trở thành nền tảng phụ thuộc. Một laptop mới hơn đã cài OpenVPN có trạng thái gói hoàn toàn khác máy đích, nên thành công của nó không chứng minh gì về những gì máy đích có thể chấp nhận.

Cũng hãy quyết định bạn thực sự muốn gì. Công cụ VPN, một plugin dịch vụ NetworkManager và một trình soạn thảo đồ họa là các gói riêng biệt, và lựa chọn đúng phụ thuộc vào bản phát hành và vào cách người dùng sẽ quản lý kết nối. Một máy chủ không màn hình cần công cụ và một tệp cấu hình; một máy tính để bàn cần plugin cho phép cài đặt mạng của nó sở hữu đường hầm. Yêu cầu sai bộ sẽ tạo ra một bản cài thành công và một kết nối không ai khởi động được.

Hai chuyến đi và về, theo thứ tự này

Sách hướng dẫn tách ba thao tác: tạo yêu cầu trên hệ thống không kết nối, tải xuống trên máy hỗ trợ đã kết nối, nhập lại trên máy đích. Hãy làm mới siêu dữ liệu kho của máy đích trước khi yêu cầu gói, vì yêu cầu gói được xây từ siêu dữ liệu đó và các chỉ mục cũ tạo ra những yêu cầu mà máy hỗ trợ không thể đáp ứng.

Trên máy đích, một lệnh quản trị có dạng apt-offline set vpn-meta.sig --update ghi yêu cầu làm mới. Hãy mang tệp đó sang máy đã kết nối và tải một gói bằng apt-offline get vpn-meta.sig --bundle vpn-meta.zip. Hãy mang gói trở lại và nhập nó trên máy đích bằng apt-offline install vpn-meta.zip, một lần nữa với quyền quản trị.

Bây giờ hãy tạo yêu cầu gói từ siêu dữ liệu đã làm mới, ví dụ apt-offline set vpn-deps.sig --install-packages openvpn, và lặp lại chuyến đi với tên gói mới. Hãy giữ mỗi yêu cầu đi kèm với gói mà nó tạo ra; một gói được tạo dựa trên siêu dữ liệu cũ không phải là cùng một yêu cầu, ngay cả khi tên tệp trông có vẻ hoán đổi được.

Chỉ thêm các gói tích hợp khi thiết kế cần đến chúng

Nếu máy tính để bàn phải quản lý đường hầm qua cài đặt mạng của nó, yêu cầu cần plugin tương ứng bên cạnh công cụ. Hãy đưa vào tên gói cụ thể mà bản phát hành của bạn cung cấp thay vì một danh sách nhớ từ phân phối khác, và tạo yêu cầu mới mỗi khi danh sách thay đổi. Việc ghim phiên bản cũng đáng suy nghĩ: một gói được xây cho bản phát hành mới hơn có thể đáp ứng tên và vẫn thất bại khi chạy. Đây là nơi một bộ bốn gói cố định trở thành gánh nặng, vì danh sách đúng là thuộc tính của máy đích và chỉ máy đích mới tính được nó.

Đây cũng là nơi một bộ bốn gói cố định trở thành gánh nặng. Danh sách đúng là thuộc tính của máy đích, và máy đích là cỗ máy duy nhất tính đúng được nó.

Nhập một gói không phải là cài VPN

Dù tên gọi như vậy, thao tác cài đặt chỉ đặt dữ liệu APT vào môi trường quản lý gói. Nó không thực hiện giao dịch gói. Hãy hoàn tất và xem lại bản cài APT thực tế của máy đích từ dữ liệu được cung cấp cục bộ, và đọc đầu ra thay vì cho rằng thành công của ZIP nghĩa là phần mềm đã có mặt.

Nếu giao dịch đó vẫn yêu cầu những tệp không có sẵn, hãy giữ lại phụ thuộc thiếu cụ thể hoặc lỗi kho và tạo yêu cầu tiếp theo từ đó. Đừng thay bằng một DEB từ bản phát hành khác, và đừng tắt kiểm tra tổng kiểm hay xác thực kho để ép nó đi qua. Sách hướng dẫn cảnh báo rõ ràng việc bỏ qua xác minh các tệp đã tải, và đúng là như vậy: một gói chưa được xác minh là kết quả tệ hơn một lần cài thất bại.

Gói chỉ là nửa đầu

Cài đặt phần mềm tách biệt với việc có được điểm cuối, hồ sơ, tài liệu tin cậy và thông tin xác thực đã được phê duyệt, mỗi thứ có thể có bước bàn giao được kiểm soát riêng. Một bộ gói hoạt động mà không có hồ sơ hợp lệ thì không kết nối với gì cả.

Sau đó, hãy giữ đường truyền ngoại tuyến còn sống cho các bản cập nhật sau này. Coi lần kết nối thành công đầu tiên là kết thúc bảo trì nghĩa là bản cập nhật bảo mật tiếp theo phải chờ cho đến khi có ai đó có xe đến, và đó là cách một mạng ngoại tuyến lặng lẽ tụt lại nhiều năm.

Bài viết liên quan