Mengapa VPN Mac Anda Meminta Akses Keychain Setiap Kali
Petakan komponen mana yang memunculkan setiap prompt VPN Mac, hentikan upaya koneksi ganda, dan perbaiki akses Keychain tanpa mengatur ulang seluruh keychain.
Satu klik pada Connect seharusnya menghasilkan satu jendela masuk. Di Mac, sering kali ada tiga, dan jarang berbagi pemilik yang sama: keychain memiliki prompt kredensial lokal, gateway VPN memiliki autentikasi, dan klien memiliki pemberitahuannya sendiri. Alih-alih mencari sakelar yang membungkam semuanya, perlakukan setiap jendela sebagai cacat terpisah dengan perbaikannya sendiri. Panduan berikut menelusuri satu upaya koneksi yang disengaja dan berakhir dengan pemeriksaan yang dapat Anda ulangi.
Beri nama pemilik setiap dialog sebelum mengubah pengaturan
Langkah pertama adalah pembukuan, bukan konfigurasi. Lakukan satu upaya koneksi dan, untuk setiap jendela yang muncul, catat empat bidang: nama aplikasi yang ditampilkan, teks persisnya tanpa apa pun yang rahasia, fase kemunculannya, dan apa yang terjadi saat Anda membatalkannya. Tiga baris seperti itu mencakup hampir semua laporan yang pernah saya periksa.
Kepemilikan menentukan perbaikan yang benar, dan perbaikan yang salah biasanya yang mengubah satu prompt menjadi tiga:
| Window | Who owns it | Correct fix | What not to do |
|---|---|---|---|
| “wants to use your confidential information stored in…” | The item's access control list in your login keychain | Approve the specific client helper, once, after checking the name | Resetting the login keychain, or granting Always Allow to every application |
| “Sign in to <organization>” or an MFA push | The gateway's identity provider | Use the client's supported session renewal, or re-authenticate | Scripting a fixed password or code into the client |
| “Connection failed”, “Update required”, a policy banner | The client or your organization | Read the first error and fix its cause | Hiding notices by editing a preference file the client rewrites |
Prompt yang kembali dalam upaya yang sama adalah sinyal berbeda dari yang kembali pada upaya berikutnya. Yang pertama biasanya berarti koneksi dimulai ulang di bawah Anda; yang kedua biasanya berarti kredensial tersimpan diminta lagi. Catat mana yang Anda alami sebelum menyentuh keychain, karena keduanya hampir tidak ada kesamaannya.
Cari tahu berapa banyak hal yang memulai tunnel
Empat mekanisme dapat memulai VPN yang sama di Mac: tindakan bilah menu, item login, aturan On Demand, dan skrip atau agen. Ketika dua di antaranya aktif, mulai yang kedua bisa datang saat yang pertama masih menunggu autentikasi, yang menghasilkan jendela duplikat dan tanpa kemajuan. Daftar dulu apa yang dikonfigurasi: scutil --nc list mencetak layanan VPN yang dikenal Pengaturan Sistem, beserta statusnya saat ini. Klien yang membawa ekstensi jaringan sendiri menyimpan profil di dalam aplikasi dan mungkin tidak muncul di sana, jadi periksa juga daftar koneksi klien itu sendiri.
Lalu cari pemula yang bersaing. scutil --nc show "Work VPN" mencetak kamus konfigurasi layanan bawaan, termasuk aturan On Demand; aturan yang menyambung ulang pada setiap perubahan antarmuka akan memulai ulang tunnel — dan membuka kembali prompt autentikasi — setiap kali Wi-Fi berpindah atau layar membangunkan tumpukan jaringan. Periksa item login di Pengaturan Sistem > Umum > Item Login, dan daftar agen per pengguna dengan ls ~/Library/LaunchAgents. Jangan sentuh apa pun milik tumpukan keamanan yang dikelola MDM; penghapusannya biasanya dikembalikan pada pemeriksaan berikutnya.
Untuk melihat apa yang benar-benar berjalan selama percobaan: ps -Ao pid,comm | grep -iE 'vpn|tunnel|extension'. Dua pembantu klien di tempat Anda mengharapkan satu lebih sering menjelaskan "mengapa saya mendapat dua prompt" daripada masalah kredensial apa pun.
Perbaiki akses keychain tanpa mengatur ulang keychain
Prompt berasal dari daftar kontrol akses item tersimpan, bukan dari protokol VPN. Setiap item mencatat aplikasi mana yang boleh membacanya tanpa bertanya. Setelah pembaruan klien, pembantu yang bertanya bisa membawa nama atau tanda tangan berbeda sementara item masih mencantumkan yang lama, sehingga macOS bertanya lagi pada setiap koneksi. Menyetujui pembantu baru untuk item itu saja adalah seluruh perbaikannya; menyetujui setiap aplikasi bukan.
Anda dapat memastikan ACL penyebabnya tanpa menyentuh VPN: security find-generic-password -s "service-name" -g membaca item yang sama dari terminal. Jika perintah itu juga memunculkan prompt, dialog itu milik keychain dan tunnel hanya pemicunya. Pedoman Apple tentang tiga tombol — Izinkan Sekali, Selalu Izinkan, Tolak — layak dibaca sekali, karena Tolak yang membuat prompt muncul kembali segera alih-alih pada upaya berikutnya.
Jika Anda menyetujui pembantu yang salah, buka item di Keychain Access, beralih ke Access Control, dan hapus entri itu; itulah pembalikannya. Menghapus keychain login, atau menjalankan alat perbaikan yang membangunnya ulang, juga membuang kata sandi tak terkait dan jauh lebih besar daripada masalahnya.
Simpan langkah masuk dan kebijakan pada alur yang memilikinya
Masuk lewat browser atau tantangan MFA milik gateway. Jika organisasi Anda menawarkan persistensi sesi atau autentikasi berbasis sertifikat, gunakan itu, karena itulah cara yang didukung untuk mengautentikasi lebih jarang. Mengetik kode tetap ke klien, atau menyimpan kata sandi dalam skrip agar prompt tidak pernah muncul, mengganti faktor interaktif dengan rahasia statis dan gagal saat kebijakan berputar berikutnya.
Pemberitahuan organisasi adalah satu-satunya kategori yang tidak boleh Anda tekan. Biasanya mereka menegakkan pemeriksaan postur atau persetujuan penggunaan yang wajar, dan menyembunyikannya dapat membuat perangkat tidak patuh bahkan saat tunnel berfungsi. Dialog kesalahan adalah kategori lainnya: simpan teks kesalahan pertama, karena dialog kedua sering kali hanya kegagalan yang sama setelah percobaan ulang.
Verifikasi dengan satu upaya, lalu setelah reboot
Setelah pemula duplikat dihapus dan entri keychain diperbaiki, lakukan satu upaya: keluar dari setiap instans klien termasuk pembantu bilah menu, sambungkan sekali, dan hitung jendelanya. Anda menginginkan persetujuan keychain, jika item dibangun ulang, dan satu langkah autentikasi. Tidak lebih. scutil --nc status "Work VPN" seharusnya melaporkan Connected untuk layanan bawaan.
Lalu reboot sekali dan ulangi. Prompt yang hanya kembali setelah reboot menunjuk ke item login atau aturan On Demand, bukan kredensial; yang kembali di dalam sesi menunjuk ke ACL atau ke pemula kedua. Jika masih berulang setelah kedua putaran, hal berguna untuk diberikan kepada administrator Anda adalah tabel tiga baris dari upaya pertama — pemilik, teks persis, fase — bukan tangkapan layar dialog.
Lebih sedikit prompt adalah tujuannya, bukan prompt yang senyap. Koneksi yang menyembunyikan langkah otorisasinya adalah koneksi yang tidak lagi dapat Anda audit, dan rotasi sertifikat berikutnya akan menemukan Anda tanpa tahu komponen mana yang gagal.