Di Mana Linux Patut Menyimpan Kata Laluan VPN Anda? Bukan dalam Profil
Flag rahsia NetworkManager menentukan sama ada profil, ejen gelang kunci atau tiada sesiapa memegang kata laluan itu. Jawapannya bergantung pada bila sambungan bermula.
Kata laluan VPN mesti hidup di suatu tempat: dalam profil sambungan, dalam gelang kunci yang dibuka desktop, atau di mana-mana pun tidak. NetworkManager memanggil pilihan itu flag rahsia, dan memilih yang salah ialah sebab sambungan berfungsi selepas log masuk dan gagal sebagai perkhidmatan. Flag itu satu baris konfigurasi, dan ia menentukan yang mana satu daripada tiga hasil itu yang anda dapat.
Tiga flag meliputi hampir setiap kes, dan keputusannya tentang bila sambungan bermula.
Tiga flag rahsia, tiga tingkah laku
Flag 0 bermaksud rahsia disimpan bersama sambungan, dalam mana-mana stor yang memegang profil. Flag 1 menjadikannya milik ejen: rahsia datang daripada ejen rahsia seperti gelang kunci desktop, dan NetworkManager memintanya semasa pengaktifan. Flag 2 bermaksud tidak disimpan, jadi rahsia tidak pernah ditulis dan mesti dibekalkan setiap kali. Flag 4 menandakan rahsia sebagai tidak diperlukan, untuk sambungan yang benar-benar tidak memerlukan apa-apa.
| Flag | Where it lives | Works unattended |
|---|---|---|
| 0 saved | Connection profile | Yes, if the store is readable |
| 1 agent-owned | Secret agent or keyring | Only if that agent is available |
| 2 not-saved | Nowhere | No |
Tetapkan flag bagi setiap rahsia, bukan setiap sambungan. Satu sambungan boleh mempunyai kata laluan milik ejen dan frasa laluan kunci peribadi yang disimpan.
Putuskan mengikut bila sambungan bermula
Jika pengguna yang sudah log masuk memulakan sambungan, milik ejen ialah lalai yang wajar: gelang kunci dibuka oleh log masuk dan rahsia tidak pernah duduk dalam fail. Jika sambungan mesti naik sebelum sesiapa log masuk, milik ejen ialah pilihan yang salah, kerana tiada gelang kunci sesi untuk dibuka.
Itulah keseluruhan keputusan. Selebihnya ialah variannya.
Untuk perkhidmatan sebelum log masuk, stor peringkat sistem atau fail kunci terlindung ialah corak yang disokong, dan kebenaran fail menjadi perlindungannya. Jangan selesaikan masalah dengan menampal kata laluan ke dalam skrip shell yang berjalan semasa but.
Apa yang gelang kunci beri dan apa yang tidak
Gelang kunci menyimpan rahsia di luar profil sambungan dan mengikatnya kepada sesi pengguna. Ia tidak menjadikan rahsia tersedia kepada perkhidmatan tanpa sesi, dan ia tidak menyulitkan apa-apa di wayar. Itu sifat berasingan yang sering dicampur orang. Apa yang benar-benar dibelinya ialah jejari kerosakan yang lebih kecil apabila fail profil bocor.
Kunci peribadi yang dirujuk profil memerlukan kebenarannya sendiri, tanpa mengira di mana kata laluan hidup.
Diagnostik tanpa menumpahkan rahsia
Nama sambungan, UUID dan flag biasanya cukup untuk menerangkan kegagalan. nmcli connection show menyenaraikan profil, dan flag rahsia memberitahu dari mana kata laluan sepatutnya datang.
Elakkan --show-secrets dalam tiket dan sembang. Setelah ditampal, ia ialah kelayakan dalam transkrip.
Penyimpanan bukan pembatalan
Membuang rahsia daripada satu gelang kunci tidak membatalkan kelayakan yang sudah diterima oleh pengendali jauh. Pembatalan akaun ialah tindakan di sebelah pelayan, dan penyimpanan setempat ialah perkara berasingan dengan pemilik berasingan.
Putuskan kedua-duanya sebelum insiden, bukan semasanya. Sambungan pengguna interaktif dan perkhidmatan sebelum log masuk memerlukan jawapan berbeza, dan skrip shell bersama bukan kedua-duanya. Dokumentasi NetworkManager tentang flag rahsia menyenaraikan nilainya sepenuhnya.