Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Author: Justin Turner, Senior Support Escalation Engineer with the Windows group
Note
Konten ini ditulis oleh teknisi dukungan pelanggan Microsoft, dan ditujukan untuk administrator berpengalaman dan arsitek sistem yang mencari penjelasan teknis yang lebih dalam tentang fitur dan solusi di Windows Server 2012 R2 daripada topik di TechNet biasanya disediakan. Namun, itu belum mengalami lolos pengeditan yang sama, sehingga beberapa bahasa mungkin tampak kurang dipoles daripada apa yang biasanya ditemukan di TechNet.
Overview
Meskipun dukungan untuk kunci yang dilindungi TPM telah ada sejak Windows 8, tidak ada mekanisme bagi CA untuk membuktikan secara kriptografis bahwa kunci privat pemohon sertifikat benar-benar dilindungi oleh Modul Platform Tepercaya (TPM). Pembaruan ini memungkinkan CA untuk melakukan pengesahan tersebut dan untuk mencerminkan pengesahan tersebut dalam sertifikat yang diterbitkan.
Note
This article assumes that the reader is familiar with certificate template concept (for reference, see Certificate Templates). Ini juga mengasumsikan bahwa pembaca terbiasa dengan cara mengonfigurasi CA perusahaan untuk menerbitkan sertifikat berdasarkan templat sertifikat (untuk referensi, lihat Daftar Periksa: Mengonfigurasi CA untuk Menerbitkan dan Mengelola Sertifikat).
Terminology
Term | Definition |
---|---|
EK | Endorsement Key. Ini adalah kunci asimetris yang terkandung di dalam TPM (disuntikkan pada waktu manufaktur). EK unik untuk setiap TPM dan dapat mengidentifikasinya. EK tidak dapat diubah atau dihapus. |
EKpub | Mengacu pada kunci umum EK. |
EKPriv | Mengacu pada kunci privat EK. |
EKCert | EK Certificate. Sertifikat yang dikeluarkan produsen TPM untuk EKPub. Tidak semua TPM memiliki EKCert. |
TPM | Modul Platform Tepercaya. TPM dirancang untuk menyediakan fungsi terkait keamanan berbasis perangkat keras. Chip TPM adalah prosesor kripto aman yang dirancang untuk melakukan operasi kriptografi. Chip ini mencakup beberapa mekanisme keamanan fisik untuk membuatnya tahan terhadap perubahan, dan perangkat lunak berbahaya tidak dapat mengubah fungsi keamanan TPM. |
Background
Dimulai dengan Windows 8, Modul Platform Tepercaya (TPM) dapat digunakan untuk mengamankan kunci privat sertifikat. Penyedia Penyimpanan Kunci Penyedia Kripto Platform Microsoft (KSP) mengaktifkan fitur ini. Ada dua kekhawatiran dengan implementasi:
Tidak ada jaminan bahwa kunci benar-benar dilindungi oleh TPM (seseorang dapat dengan mudah memalsukan KSP perangkat lunak sebagai TPM KSP dengan kredensial administrator lokal).
Tidak dimungkinkan untuk membatasi daftar TPM yang diizinkan untuk melindungi sertifikat yang dikeluarkan perusahaan (jika Administrator PKI ingin mengontrol jenis perangkat yang dapat digunakan untuk mendapatkan sertifikat di lingkungan).
Pengesahan kunci TPM
Pengesahan kunci TPM adalah kemampuan entitas yang meminta sertifikat untuk membuktikan secara kriptografis kepada CA bahwa kunci RSA dalam permintaan sertifikat dilindungi oleh TPM "a" atau "the" yang dipercaya CA. The TPM trust model is discussed more in the Deployment overview section later in this article.
Mengapa pengesahan kunci TPM penting?
Sertifikat pengguna dengan kunci yang dibuktikan TPM memberikan jaminan keamanan yang lebih tinggi, dicadangkan oleh nonexportability, anti-hammering, dan isolasi kunci yang disediakan oleh TPM.
With TPM key attestation, a new management paradigm is now possible: An administrator can define the set of devices that users can use to access corporate resources (for example, VPN or wireless access point) and have strong guarantees that no other devices can be used to access them. This new access control paradigm is strong because it's tied to a hardware-bound user identity, which is stronger than a software-based credential.
Bagaimana cara kerja pengesahan kunci TPM?
Secara umum, pengesahan kunci TPM didasarkan pada pilar berikut:
Every TPM ships with a unique asymmetric key, called the Endorsement Key (EK), burned by the manufacturer. We refer to the public portion of this key as EKPub and the associated private key as EKPriv. Beberapa chip TPM juga memiliki sertifikat EK yang dikeluarkan oleh produsen untuk EKPub. We refer to this cert as EKCert.
CA menetapkan kepercayaan pada TPM baik melalui EKPub atau EKCert.
Pengguna membuktikan kepada CA bahwa kunci RSA tempat sertifikat diminta secara kriptografis terkait dengan EKPub dan bahwa pengguna memiliki EKpriv.
CA mengeluarkan sertifikat dengan OID kebijakan penerbitan khusus untuk menunjukkan bahwa kunci sekarang dibuktikan untuk dilindungi oleh TPM.
Deployment overview
Dalam penyebaran ini, diasumsikan bahwa OS perusahaan Windows Server 2012 R2 disiapkan. Selain itu, klien (Windows 8.1) dikonfigurasi untuk mendaftar terhadap OS perusahaan tersebut menggunakan templat sertifikat.
Ada tiga langkah untuk menyebarkan pengesahan kunci TPM:
Rencanakan model kepercayaan TPM: Langkah pertama adalah memutuskan model kepercayaan TPM mana yang akan digunakan. Ada 3 cara yang didukung untuk melakukan ini:
Kepercayaan berdasarkan kredensial pengguna: CA perusahaan mempercayai EKPub yang disediakan pengguna sebagai bagian dari permintaan sertifikat dan tidak ada validasi yang dilakukan selain kredensial domain pengguna.
Kepercayaan berdasarkan EKCert: CA perusahaan memvalidasi rantai EKCert yang disediakan sebagai bagian dari permintaan sertifikat terhadap daftar rantai sertifikasi EK yang dapat diterima administrator. Rantai yang dapat diterima didefinisikan per produsen dan dinyatakan melalui dua penyimpanan sertifikat kustom pada CA penerbit (satu toko untuk perantara dan satu untuk sertifikat OS akar). This trust mode means that all TPMs from a given manufacturer are trusted. Perhatikan bahwa dalam mode ini, TPM yang digunakan di lingkungan harus berisi EKCerts.
Kepercayaan berdasarkan EKPub: CA perusahaan memvalidasi bahwa EKPub yang disediakan sebagai bagian dari permintaan sertifikat muncul dalam daftar EKPubs yang dikelola administrator. Daftar ini dinyatakan sebagai direktori file di mana nama setiap file dalam direktori ini adalah hash SHA-2 dari EKPub yang diizinkan. Opsi ini menawarkan tingkat jaminan tertinggi tetapi membutuhkan lebih banyak upaya administratif, karena setiap perangkat diidentifikasi secara individual. Dalam model kepercayaan ini, hanya perangkat yang telah menambahkan EKPub TPM mereka ke daftar EKPubs yang diizinkan yang diizinkan untuk mendaftar untuk sertifikat yang diuji TPM.
Bergantung pada metode mana yang digunakan, CA akan menerapkan OID kebijakan penerbitan yang berbeda ke sertifikat yang dikeluarkan. Untuk detail selengkapnya tentang OID kebijakan penerbitan, lihat tabel OID Kebijakan Penerbitan di bagian Mengonfigurasi templat sertifikat di artikel ini.
Perhatikan bahwa dimungkinkan untuk memilih kombinasi model kepercayaan TPM. Dalam hal ini, CA akan menerima salah satu metode pengesahan, dan OID kebijakan penerbitan akan mencerminkan semua metode pengesahan yang berhasil.
Mengonfigurasi templat sertifikat: Mengonfigurasi templat sertifikat dijelaskan di bagian Detail penyebaran di artikel ini. Artikel ini tidak membahas bagaimana templat sertifikat ini ditetapkan ke OS perusahaan atau bagaimana akses pendaftaran diberikan kepada sekelompok pengguna. Untuk informasi selengkapnya, lihat Daftar Periksa: Mengonfigurasi CA untuk Menerbitkan dan Mengelola Sertifikat.
Mengonfigurasi CA untuk model kepercayaan TPM
Kepercayaan berdasarkan kredensial pengguna: Tidak diperlukan konfigurasi tertentu.
Kepercayaan berdasarkan EKCert: Administrator harus mendapatkan sertifikat rantai EKCert dari produsen TPM, dan mengimpornya ke dua penyimpanan sertifikat baru, yang dibuat oleh administrator, pada CA yang melakukan pengesahan kunci TPM. For more information, see the CA configuration section in this article.
Kepercayaan berdasarkan EKPub: Administrator harus mendapatkan EKPub untuk setiap perangkat yang akan memerlukan sertifikat yang dites TPM dan menambahkannya ke daftar EKPubs yang diizinkan. For more information, see the CA configuration section in this article.
Note
- Fitur ini memerlukan Windows 8.1/Windows Server 2012 R2.
- Pengesahan kunci TPM untuk KSP kartu pintar pihak ketiga tidak didukung. KSP Penyedia Kripto Platform Microsoft harus digunakan.
- Pengesahan kunci TPM hanya berfungsi untuk kunci RSA.
- Pengesahan kunci TPM tidak didukung untuk CA mandiri.
- Pengesahan kunci TPM tidak mendukung pemrosesan sertifikat yang tidak persisten.
Deployment details
Mengonfigurasi templat sertifikat
Untuk mengonfigurasi templat sertifikat untuk pengesahan kunci TPM, lakukan langkah-langkah konfigurasi berikut:
Compatibility tab
In the Compatibility Settings section:
Pastikan Windows Server 2012 R2 dipilih untuk Otoritas Sertifikasi.
Pastikan Windows 8.1 / Windows Server 2012 R2 dipilih untuk penerima Sertifikat.
Cryptography tab
Pastikan Penyedia Penyimpanan Kunci dipilih untuk Kategori Penyedia dan RSA dipilih untuk nama Algoritma. Pastikan Permintaan harus menggunakan salah satu penyedia berikut dipilih dan opsi Penyedia Kripto Platform Microsoft dipilih di bawah Penyedia.
Key Attestation tab
Ini adalah tab baru untuk Windows Server 2012 R2:
Pilih mode pengesahan dari tiga opsi yang mungkin.
None: Implies that key attestation must not be used
Diperlukan, jika klien mampu: Memungkinkan pengguna pada perangkat yang tidak mendukung pengesahan kunci TPM untuk terus mendaftar untuk sertifikat tersebut. Pengguna yang dapat melakukan pengesahan akan dibedakan dengan OID kebijakan penerbitan khusus. Beberapa perangkat mungkin tidak dapat melakukan pengesahan karena TPM lama yang tidak mendukung pengesahan kunci, atau perangkat tidak memiliki TPM sama sekali.
Required: Client must perform TPM key attestation, otherwise the certificate request will fail.
Kemudian pilih model kepercayaan TPM. Ada lagi tiga opsi:
User credentials: Allow an authenticating user to vouch for a valid TPM by specifying their domain credentials.
Endorsement certificate: The EKCert of the device must validate through administrator-managed TPM intermediate CA certificates to an administrator-managed root CA certificate. If you choose this option, you must set up EKCA and EKRoot certificate stores on the issuing CA as described in the CA configuration section in this article.
Endorsement Key: The EKPub of the device must appear in the PKI administrator-managed list. Opsi ini menawarkan tingkat jaminan tertinggi tetapi membutuhkan upaya yang lebih administratif. If you choose this option, you must set up an EKPub list on the issuing CA as described in the CA configuration section in this article.
Terakhir, putuskan kebijakan penerbitan mana yang akan ditampilkan dalam sertifikat yang diterbitkan. Secara default, setiap jenis penegakan memiliki pengidentifikasi objek terkait (OID) yang akan dimasukkan ke dalam sertifikat jika melewati jenis penegakan tersebut, seperti yang dijelaskan dalam tabel berikut. Perhatikan bahwa dimungkinkan untuk memilih kombinasi metode penegakan. Dalam hal ini, CA akan menerima salah satu metode pengesahan, dan OID kebijakan penerbitan akan mencerminkan semua metode pengesahan yang berhasil.
OID Kebijakan Penerbitan
OID Jenis pengesahan kunci Description Assurance level 1.3.6.1.4.1.311.21.30 EK "EK Diverifikasi": Untuk daftar EK yang dikelola administrator High 1.3.6.1.4.1.311.21.31 Endorsement certificate "Sertifikat EK Diverifikasi": Ketika rantai sertifikat EK divalidasi Medium 1.3.6.1.4.1.311.21.32 User credentials "EK Tepercaya saat Digunakan": Untuk EK yang diuji pengguna Low OID akan dimasukkan ke dalam sertifikat yang dikeluarkan jika Sertakan Kebijakan Penerbitan dipilih (konfigurasi default).
Tip
Salah satu potensi penggunaan memiliki OID yang ada dalam sertifikat adalah untuk membatasi akses ke VPN atau jaringan nirkabel ke perangkat tertentu. Misalnya, kebijakan akses Anda mungkin mengizinkan koneksi (atau akses ke VLAN yang berbeda) jika OID 1.3.6.1.4.1.311.21.30 ada dalam sertifikat. Ini memungkinkan Anda membatasi akses ke perangkat yang TPM EK-nya ada dalam daftar EKPUB.
CA configuration
Menyiapkan penyimpanan sertifikat EKCA dan EKROOT pada CA penerbit
If you chose Endorsement Certificate for the template settings, do the following configuration steps:
Gunakan Windows PowerShell untuk membuat dua penyimpanan sertifikat baru di server otoritas sertifikasi (CA) yang akan melakukan pengesahan kunci TPM.
Dapatkan sertifikat OS perantara dan akar dari produsen yang ingin Anda izinkan di lingkungan perusahaan Anda. Sertifikat tersebut harus diimpor ke penyimpanan sertifikat yang dibuat sebelumnya (EKCA dan EKROOT) sebagaimana mestinya.
Skrip Windows PowerShell berikut melakukan kedua langkah ini. In the following example, the TPM manufacturer Fabrikam has provided a root certificate FabrikamRoot.cer and an issuing CA certificate Fabrikamca.cer.
PS C:>\cd cert: PS Cert:\>cd .\\LocalMachine PS Cert:\LocalMachine> new-item EKROOT PS Cert:\ LocalMachine> new-item EKCA PS Cert:\EKCA\copy FabrikamCa.cer .\EKCA PS Cert:\EKROOT\copy FabrikamRoot.cer .\EKROOT
Menyiapkan Daftar EKPUB jika menggunakan jenis pengesahan EK
If you chose Endorsement Key in the template settings, the next configuration steps are to create and configure a folder on the issuing CA, containing 0-byte files, each named for the SHA-2 hash of an allowed EK. Folder ini berfungsi sebagai "daftar izin" perangkat yang diizinkan untuk mendapatkan sertifikat yang diuji kunci TPM. Karena Anda harus menambahkan EKPUB secara manual untuk setiap perangkat yang memerlukan sertifikat yang diuji, EKPUB memberi perusahaan jaminan perangkat yang berwenang untuk mendapatkan sertifikat yang diuji kunci TPM. Mengonfigurasi CA untuk mode ini memerlukan dua langkah:
Buat entri registri EndorsementKeyListDirectories: Gunakan alat baris perintah Certutil untuk mengonfigurasi lokasi folder tempat EKpubs tepercaya didefinisikan seperti yang dijelaskan dalam tabel berikut.
Operation Command syntax Menambahkan lokasi folder certutil.exe -setreg CA\EndorsementKeyListDirectories +"<folder>" Menghapus lokasi folder certutil.exe -setreg CA\EndorsementKeyListDirectories -"<folder>" Perintah EndorsementKeyListDirectories dalam certutil adalah pengaturan registri seperti yang dijelaskan dalam tabel berikut.
Value name Type Data EndorsementKeyListDirectories REG_MULTI_SZ <Jalur LOKAL atau UNC ke daftar izin EKPUB> Example:
\\blueCA.contoso.com\ekpub
\\bluecluster1.contoso.com\ekpub
D:\ekpub
HKLM\SYSTEM\CurrentControlSet\Services\CertSvc\Configuration\<CA Nama yang Dibersihkan>
EndorsementKeyListDirectories will contain a list of UNC or local file system paths, each pointing to a folder that the CA has Read access to. Setiap folder mungkin berisi nol atau lebih entri daftar yang diizinkan, di mana setiap entri adalah file dengan nama yang merupakan hash SHA-2 dari EKpub tepercaya, tanpa ekstensi file. Membuat atau mengedit konfigurasi kunci registri ini memerlukan mulai ulang CA, sama seperti pengaturan konfigurasi registri CA yang ada. Namun, pengeditan pada pengaturan konfigurasi akan segera berlaku dan tidak akan mengharuskan CA dimulai ulang.
Important
Amankan folder dalam daftar dari akses yang mengubah dan tidak sah dengan mengonfigurasi izin sehingga hanya administrator yang berwenang yang memiliki akses Baca dan Tulis. Akun komputer CA hanya memerlukan akses Baca.
Isi daftar EKPUB: Gunakan cmdlet Windows PowerShell berikut untuk mendapatkan hash kunci publik TPM EK dengan menggunakan Windows PowerShell pada setiap perangkat lalu kirim hash kunci publik ini ke CA dan simpan di folder EKPubList.
PS C:>\$a=Get-TpmEndorsementKeyInfo -hashalgorithm sha256 PS C:>$b=new-item $a.PublicKeyHash -ItemType file
Troubleshooting
Bidang pengesahan kunci tidak tersedia pada templat sertifikat
Bidang Pengesahan Kunci tidak tersedia jika pengaturan templat tidak memenuhi persyaratan pengesahan. Alasan umumnya adalah:
Pengaturan kompatibilitas tidak dikonfigurasi dengan benar. Pastikan bahwa mereka dikonfigurasi sebagai berikut:
Certification Authority: Windows Server 2012 R2
Certificate Recipient: Windows 8.1/Windows Server 2012 R2
Pengaturan kriptografi tidak dikonfigurasi dengan benar. Pastikan bahwa mereka dikonfigurasi sebagai berikut:
Provider Category: Key Storage Provider
Algorithm Name: RSA
Providers: Microsoft Platform Crypto Provider
Pengaturan penanganan permintaan tidak dikonfigurasi dengan benar. Pastikan bahwa mereka dikonfigurasi sebagai berikut:
Opsi Izinkan kunci privat untuk diekspor tidak boleh dipilih.
Opsi Kunci privat enkripsi subjek Arsip tidak boleh dipilih.
Verifikasi perangkat TPM untuk pengesahan
Use the Windows PowerShell cmdlet, Confirm-CAEndorsementKeyInfo, to verify that a specific TPM device is trusted for attestation by CAs. Ada dua opsi: satu untuk memverifikasi EKCert, dan yang lainnya untuk memverifikasi EKPub. Cmdlet dijalankan secara lokal pada CA, atau pada CA jarak jauh dengan menggunakan jarak jauh Windows PowerShell.
Untuk memverifikasi kepercayaan pada EKPub, lakukan dua langkah berikut:
Ekstrak EKPub dari komputer klien: EKPub dapat diekstrak dari komputer klien melalui Get-TpmEndorsementKeyInfo. Dari prompt perintah yang ditingkatkan, jalankan yang berikut ini:
PS C:>\$a=Get-TpmEndorsementKeyInfo -hashalgorithm sha256
Verifikasi kepercayaan pada EKCert di komputer CA: Salin string yang diekstrak (hash SHA-2 dari EKPub) ke server (misalnya, melalui email) dan teruskan ke cmdlet Confirm-CAEndorsementKeyInfo. Perhatikan bahwa parameter ini harus 64 karakter.
Confirm-CAEndorsementKeyInfo [-PublicKeyHash] <string>
Untuk memverifikasi kepercayaan pada EKCert, lakukan dua langkah berikut:
Ekstrak EKCert dari komputer klien: EKCert dapat diekstrak dari komputer klien melalui Get-TpmEndorsementKeyInfo. Dari prompt perintah yang ditingkatkan, jalankan yang berikut ini:
PS C:>\$a=Get-TpmEndorsementKeyInfo PS C:>\$a.manufacturerCertificates|Export-Certificate -filepath c:\myEkcert.cer
Verifikasi kepercayaan pada EKCert di komputer CA: Salin EKCert (EkCert.cer) yang diekstrak ke CA (misalnya, melalui email atau xcopy). Sebagai contoh, jika Anda menyalin file sertifikat folder "c:\diagnose" di server CA, jalankan yang berikut ini untuk menyelesaikan verifikasi:
PS C:>new-object System.Security.Cryptography.X509Certificates.X509Certificate2 "c:\diagnose\myEKcert.cer" | Confirm-CAEndorsementKeyInfo
See Also
Gambaran UmumTeknologi Modul Platform Tepercaya Sumber Daya Eksternal: Modul Platform Tepercaya