Tìm tệp bạn đã nhập là phần dễ và thường là khởi đầu sai. Điều quan trọng là tệp nào NetworkManager đọc hôm nay như kết nối đã lưu, và điều đó phụ thuộc vào một định danh kết nối cùng backend cấu hình mà các gói đã cài thực sự dùng. Sửa phần nhập trước khi trả lời câu hỏi đó là cách một VPN đang chạy trở thành hai cấu hình nửa đúng.

Tệp được nhập không phải hồ sơ đã lưu

Ba cái tên lượn quanh mọi vấn đề VPN: tên kết nối, tên tệp bạn đã nhập và giao diện ảo xuất hiện khi đường hầm dựng lên. Không cái nào xác định cấu hình đã lưu, và tên kết nối có thể bị sửa trong khi tệp phía sau vẫn giữ định danh ban đầu.

Bắt đầu bằng bản kiểm kê chỉ đọc và chọn VPN mong muốn theo định danh thay vì nhãn:

nmcli -f NAME,UUID,TYPE connection show

Giữ tên máy chủ điểm cuối và nhãn danh tính ra khỏi mọi bản kiểm kê bạn dán vào phiếu. Phần hữu ích là loại và định danh; phần còn lại là ngữ cảnh mà người lạ không cần. Hãy che phần còn lại trước khi chia sẻ và nói rằng bạn đã làm vậy, để không ai thắc mắc khoảng trống nghĩa là gì.

Các vị trí keyfile không có nghĩa giống nhau

Với plugin keyfile gốc, các tệp kết nối có thể xuất hiện trong ba thư mục, và khác biệt giữa chúng là tính bền vững, không phải sự tiện lợi.

LocationRole
/etc/NetworkManager/system-connections/Administrator-owned persistence
/usr/lib/NetworkManager/system-connections/Package-supplied defaults, replaced on upgrade
/run/NetworkManager/system-connections/Runtime state, regenerated and not durable

Sửa bản sao lúc chạy có vẻ thành công cho đến lần khởi động sau, khi thay đổi bốc hơi và tệp có vẻ bị hoàn nguyên một cách bí ẩn. Sửa bản sao do gói cung cấp thì hoạt động cho đến khi một bản nâng cấp thay thế nó, đây là phiên bản chậm hơn và khó hiểu hơn của cùng bài học.

Tài liệu keyfile thêm một chi tiết đáng tôn trọng: những tệp đó có thể chứa khóa riêng và cụm mật khẩu, và NetworkManager bỏ qua mọi keyfile mà người dùng khác root có thể đọc hoặc ghi. Mở rộng quyền thư mục để tìm một cài đặt sẽ phá vỡ hành vi tải mà bạn đang cố kiểm tra.

Khi Netplan sở hữu tính bền vững

Trên Ubuntu, tích hợp NetworkManager được mô tả trong tài liệu Netplan, có từ 23.10, thay đổi nơi bản sao lâu bền sống. Với các kết nối không tạm thời, nó ghi /etc/netplan/90-NM-<connection UUID>.yaml và tạo một hồ sơ NetworkManager tạm thời dưới /run/NetworkManager/system-connections/.

Đó là tích hợp của bản phân phối, không phải quy tắc cho mọi bản cài NetworkManager. Hãy xác nhận các gói đã cài thực sự dùng nó trước khi đi tìm tệp YAML. Cũng nên nhớ hồ sơ lúc chạy có thể là biểu diễn được tạo của thứ khác chứ không phải nguồn đáng sửa. Hai lệnh kiểm tra tiết kiệm một giờ sửa sai tệp.

Ví dụ được ghi lại lưu một kết nối OpenVPN qua loại Netplan nm-devices với dữ liệu chuyển tiếp của NetworkManager. Việc Netplan không có cách diễn giải riêng cho một trường VPN cụ thể không có nghĩa là VPN đã lưu của bạn bị mất; nó có nghĩa là trường đó đi lại như dữ liệu không trong suốt.

Giao diện tạm thời không phải hồ sơ

Việc kích hoạt tạo ra các kết nối và giao diện ảo tạm thời chưa từng được dự định tồn tại. Tích hợp cố ý không ghi tệp YAML mới cho từng cái, nên sự vắng mặt của chúng trong /etc/netplan không nói gì về việc hồ sơ cha có được lưu hay không.

Nếu bạn đang truy tìm một tệp xuất hiện rồi biến mất, có lẽ bạn đang nhìn một trong những thứ này chứ không phải cấu hình của mình. Hãy kiểm tra xem nó có sống sót qua lần khởi động lại không trước khi kết luận bất cứ điều gì từ nội dung. Một tệp lúc chạy biến mất khi khởi động lại cho bạn biết nó chưa bao giờ là nguồn, và quan sát duy nhất đó chuyển hướng toàn bộ cuộc điều tra. Nó cũng giải thích vì sao một chỉnh sửa trông thành công vào lúc đó.

Bí mật và quyền sở hữu

Một hồ sơ có thể tham chiếu chứng chỉ hoặc khóa được lưu ở nơi hoàn toàn khác, và mật khẩu có thể thuộc về NetworkManager, được cung cấp bởi tác nhân bí mật của phiên người dùng, hoặc cố ý không được lưu. Vì vậy việc tìm ra một tệp giải quyết rất ít về những gì một lần khởi động không giám sát sẽ cần.

Kiểm tra các tham chiếu và cờ bí mật mà không in giá trị bí mật. Đăng nhập màn hình nền có thể làm cho một tác nhân sẵn có mà lúc khởi động không có, và sao chép một tệp lúc chạy được tạo không tái tạo tác nhân đó. Triệu chứng thực tế là một đường hầm kết nối khi có người đăng nhập và thất bại khi máy tự khởi động. Mẫu đó chỉ vào quyền sở hữu bí mật, không phải định tuyến.

Thực hiện các thay đổi đã duyệt qua trình quản lý sở hữu kết nối, rồi xác minh cả định danh đã lưu và kết nối hiệu lực. Giữ một chủ sở hữu bền vững duy nhất, vì sửa riêng phần nhập, một keyfile được tạo và một nguồn YAML để lại ba lời giải thích cạnh tranh về việc lần kết nối lại tiếp theo sẽ dùng gì. Chọn cái thực sự tồn tại, chỉ sửa cái đó, và ghi vào phiếu tệp nào bạn coi là có thẩm quyền. Người tiếp theo sẽ cảm ơn bạn vì một dòng nguồn gốc.

Bài viết liên quan