Menyambung ulang VPN Windows tanpa menaruh kata sandi di tugas
Tugas rasdial berfungsi sampai Anda membaca argumennya. Bandingkan tiga desain yang menghindari rahasia dalam teks polos, dan pilih menurut dukungan server serta mode masuk.
Setiap resep penyambungan ulang tanpa pengawasan pada akhirnya menemui pertanyaan yang sama: di mana kata sandi tinggal. Jawaban populer adalah tindakan tugas itu sendiri, yang juga merupakan tempat terburuk untuknya. Ada dua desain lain. Mana yang cocok bergantung pada apakah mesin dapat mengautentikasi tanpa orang dan apakah server menerima sertifikat.
Apa yang ditinggalkan tindakan tugas agar terbaca
Argumen dalam tugas terjadwal adalah bagian dari definisinya, bukan nilai runtime tersembunyi. Siapa pun yang dapat membaca tugas, memulihkan cadangannya, atau mengekspor XML-nya melihat string itu persis seperti yang Anda ketikkan. Saat dijalankan, string yang sama muncul di daftar proses. Agen pemantau dapat menyalinnya ke log yang tidak pernah Anda tinjau.
schtasks /query /tn "VPN Reconnect" /xml
cmdkey /list
Periksa sebelum Anda menganggap sebaliknya. Perintah pertama mencetak definisi lengkap, termasuk tindakan dan argumennya. Yang kedua menunjukkan kredensial mana yang telah di-cache akun saat ini, yang penting untuk desain alternatif di bawah. Jika kata sandi muncul di XML tugas, merotasinya hanya separuh perbaikan, karena tugas masih menyimpan nilai lama.
Apa yang sebenarnya dibeli kunci pre-shared yang disimpan
Add-VpnConnection -L2tpPsk menulis kunci ke entri buku telepon koneksi alih-alih ke tugas. Itu permukaan paparan yang lebih kecil daripada tindakan tugas. Itu tetap rahasia yang dapat dipulihkan, karena administrator di mesin dapat membaca buku telepon.
Untuk tautan laboratorium antara dua mesin yang Anda kendalikan, pertukaran itu mungkin dapat diterima. Untuk kredensial pengguna di titik akhir bersama, tidak. Menyebutnya penyimpanan terenkripsi tidak mengubah siapa yang dapat membacanya. Buku telepon adalah berkas konfigurasi. Rencanakan untuk orang yang dapat membukanya, bukan hanya untuk orang yang dapat masuk sebagai pengguna.
Kredensial Winlogon menghapus rahasia dan menambah ketergantungan
-UseWinlogonCredential mengambil jalur berbeda. Koneksi mengautentikasi dengan MSCHAPv2 terhadap kredensial pengguna yang masuk. Tidak ada tambahan yang disimpan untuk akun itu.
Ketergantungan yang ditambahkannya signifikan. Harus ada login interaktif untuk dipinjam, yang menyingkirkan akun layanan dan tugas sebelum login. Koneksi juga mewarisi apa pun yang dapat dijangkau kredensial pengguna itu di server. Bacalah sakelar itu sebagai pernyataan tentang dari mana kredensial berasal, bukan sebagai pengaturan keamanan. Itu mengubah sumbernya, dan tidak ada yang berubah dalam cara server mengotorisasi sesi sesudahnya.
Autentikasi sertifikat berskala karena tidak ada yang disimpan
Di mana server mendukung EAP-TLS, sertifikat mesin menghapus rahasia bersama sepenuhnya, dan pencabutan terjadi di lapisan sertifikat. Tugas yang berjalan sebagai SYSTEM dapat menyajikan sertifikat itu tanpa login interaktif. Pastikan server menerima autentikasi sertifikat sebelum membangun di atasnya. Desain yang bergantung pada metode yang tidak didukung adalah rencana, bukan solusi. Lalu putuskan di mana kunci privat tinggal: penyimpanan mesin untuk identitas perangkat, penyimpanan pengguna untuk seseorang.
Di mana nama pengguna dan kata sandi tidak dapat dihindari, simpanlah di Credential Manager dengan cakupan akun tugas itu sendiri. Biarkan klien membacanya dari sana alih-alih dari argumen. Rahasia yang dapat diambil tugas tanpa mencetaknya adalah masalah yang lebih kecil daripada yang tertulis dalam definisinya.
Tinjau artefak sebelum rotasi berikutnya
Lihat apa yang disimpan, bukan apa yang Anda maksudkan. Periksa buku telepon per pengguna, salinan untuk semua pengguna, XML tugas, dan skrip apa pun yang memanggil perintah dial. Lalu pastikan sertifikat atau kredensial yang di-cache dibatasi pada akun yang digunakan tugas, karena kredensial yang disimpan untuk akun interaktif Anda tidak terlihat oleh SYSTEM.
Catat metode autentikasi dan akun di catatan tugas itu sendiri. Orang berikutnya yang mengubah kebijakan server perlu tahu desain mana yang dipakai. Jawaban itu tidak terlihat hanya dari perilaku penyambungan ulang. Tulislah di tempat rotasi berikutnya akan melihat pertama.