Bagaimana cara membuat sertifikat yang ditandatangani sendiri untuk nama domain untuk pengembangan?

123

Saya memiliki subdomain.example.comyang saya gunakan untuk tujuan pengembangan. Solusi aplikasi web saya berisi API web dll, yang perlu saya panggil dari sistem eksternal, oleh karena itu saya tidak menggunakan localhost.

Sekarang saya perlu menguji SSL dan membutuhkan sertifikat untuk subdomain.example.comnama domain pengembangan saya .

Saya telah mencoba membuat sertifikat yang ditandatangani sendiri seperti yang dijelaskan di http://technet.microsoft.com/en-us/library/cc753127(v=ws.10).aspx , tetapi sertifikat ini hanya berfungsi untuk localhost. Dapatkah sertifikat ini digunakan untuk tujuan saya atau apakah saya harus membuat tanda tangan mandiri untuk subdomain pengembangan saya? Jika saya harus membuat sertifikasi yang ditandatangani sendiri untuk subdomain pengembangan saya, utilitas atau layanan online apa (Gratis) yang dapat saya gunakan untuk ini?

Moiz Tankiwala
sumber

Jawaban:

133

Dengan fitur sertifikat yang ditandatangani sendiri oleh IIS, Anda tidak dapat menyetel nama umum (CN) untuk sertifikat tersebut, dan oleh karena itu tidak dapat membuat sertifikat yang terikat pada subdomain pilihan Anda.

Salah satu cara mengatasi masalah ini adalah dengan menggunakan makecert.exe, yang dibundel dengan .Net 2.0 SDK. Di server saya ada di:

C:\Program Files\Microsoft.Net\SDK\v2.0 64bit\Bin\makecert.exe

Anda dapat membuat otoritas penandatanganan dan menyimpannya di repositori sertifikat LocalMachine sebagai berikut (perintah ini harus dijalankan dari akun Administrator atau dalam prompt perintah yang ditinggikan):

makecert.exe -n "CN=My Company Development Root CA,O=My Company,
 OU=Development,L=Wallkill,S=NY,C=US" -pe -ss Root -sr LocalMachine
 -sky exchange -m 120 -a sha1 -len 2048 -r

Anda kemudian dapat membuat sertifikat yang terikat ke subdomain Anda dan ditandatangani oleh otoritas baru Anda:

(Perhatikan bahwa nilai parameter -in harus sama dengan nilai CN yang digunakan untuk menghasilkan otoritas Anda di atas.)

makecert.exe -n "CN=subdomain.example.com" -pe -ss My -sr LocalMachine
 -sky exchange -m 120 -in "My Company Development Root CA" -is Root
 -ir LocalMachine -a sha1 -eku 1.3.6.1.5.5.7.3.1

Sertifikat Anda kemudian akan muncul di Manajer IIS untuk terikat ke situs Anda seperti yang dijelaskan dalam posting Tom Hall.

Semua pujian atas solusi ini untuk Mike O'Brien atas entri blognya yang luar biasa di http://www.mikeobrien.net/blog/creating-self-signed-wildcard

jlmt
sumber
8
Saya bisa membuat ini berhasil. Saya harus menggunakan prompt perintah Visual Studio 2010 untuk makecert.exeberada di jalur saya. Untuk sertifikat yang menurut saya akan lebih aman dan digunakan -a SHA512 -len 8192- butuh waktu lama untuk membuatnya. Dan seperti yang saya duga, itu tidak berdampak pada tingkat enkripsi yang digunakan IIS. Secara default IIS menggunakan 128-bit, Anda harus melakukan hal - hal kebijakan grup untuk mengubahnya. Catatan lebih lanjut bagi pembaca lain: jangan ubah angka ajaib setelahnya -eku, angka itu wajib.
BrainSlugs83
3
Jalankan semua perintah di atas dari prompt perintah dengan hak akses administratif jika tidak, Anda akan mendapatkan pesan "Kesalahan: Simpan sertifikat yang disandikan ke penyimpanan gagal => 0x5".
Giles Roberts
1
Saya juga ingin berbagi tautan bagus Membuat sertifikat yang ditandatangani sendiri dengan makecert.exe untuk pengembangan . Tautan tersebut menjelaskan pendekatan langkah demi langkah untuk membuat sertifikat root, sertifikat server, dan sertifikat klien. Ditambah ada postingan untuk menjelaskan cara menggunakannya.
Vikram Singh Saini
3
Browser seperti Chrome sudah mulai ditinggalkan sha1. Gantikan -a sha512dan pertimbangkan -len 2048untuk menambah makecertdoa kedua dan semuanya akan baik-baik saja.
O. Jones
2
Perhatikan bahwa ini tampaknya tidak lagi berfungsi (setidaknya seperti yang ditunjukkan di atas) di Windows 10. Saya harus menggunakan cmdlet PowerShell sebagai gantinya, yang berfungsi tanpa masalah apa pun.
DVK
120

Menggunakan PowerShell

Dari Windows 8.1 dan Windows Server 2012 R2 (Windows PowerShell 4.0) dan yang lebih baru, Anda dapat membuat sertifikat yang ditandatangani sendiri menggunakan New-SelfSignedCertificatecmdlet baru :

Contoh:

New-SelfSignedCertificate -DnsName www.mydomain.com -CertStoreLocation cert:\LocalMachine\My

New-SelfSignedCertificate -DnsName subdomain.mydomain.com -CertStoreLocation cert:\LocalMachine\My

New-SelfSignedCertificate -DnsName *.mydomain.com -CertStoreLocation cert:\LocalMachine\My

Menggunakan Manajer IIS

  1. Luncurkan Manajer IIS
  2. Di tingkat server, di bawah IIS, pilih Sertifikat Server
  3. Di sisi kanan di bawah Tindakan pilih Buat Sertifikat yang Ditandatangani Sendiri
  4. Di mana dikatakan "Tentukan nama ramah untuk sertifikat" ketik nama yang sesuai untuk referensi.
    1. Contoh: www.domain.comatausubdomain.domain.com
  5. Kemudian, pilih situs web Anda dari daftar di sisi kiri
  6. Di sisi kanan di bawah Actions pilih Bindings
  7. Tambahkan pengikatan HTTPS baru dan pilih sertifikat yang baru saja Anda buat (jika sertifikat Anda adalah sertifikat karakter pengganti, Anda harus menentukan nama host)
  8. Klik OK dan ujilah.
Tom Hall
sumber
7
1 untuk solusi PowerShell. Cepat dan mudah, dan setelah melakukan itu, sertifikat baru muncul di Manajer IIS saya> Koneksi> Situs> [Aplikasi Saya]> Edit Ikatan> Edit> Sertifikat SSL dropdown.
Jon Schneider
3
Setelah mengikuti instruksi di atas, & kemudian melihat sertifikat, instruksi tersebut tidak mengisi kolom CN yang masih memiliki nama localhost.
daveD
7
Persis. Ini salah! "Nama ramah" tidak ada hubungannya dengan CN. Saya tidak tahu mengapa jawaban ini memiliki begitu banyak suara positif?
c00000fd
25
Ini mendapat suara positif karena metode Powershell memang berfungsi. (Lihat jawaban @DivineOps) Berikut adalah perintah yang saya gunakan: New-SelfSignedCertificate -FriendlyName *.mydomain.local -DnsName *.mydomain.local, localhost -CertStoreLocation Cert:\LocalMachine\MyIni membuat sertifikat di penyimpanan Pribadi. Kemudian, saya pertama kali mengekspor sertifikat ke file dan kemudian mengimpornya kembali ke IIS melalui Manajer IIS (untuk menggunakannya untuk pengikatan https saya) dan kemudian ke CA Root Tepercaya melalui MMC (untuk menghindari peringatan browser).
Anton
3
The -NotAfterpilihan juga berguna untuk menentukan tanggal kedaluwarsa (tanpa itu, default hanya 1 tahun). Contoh yang saya gunakanNew-SelfSignedCertificate -DnsName *.mydomain.com -FriendlyName *.mydomain.com -NotAfter (Get-Date).AddYears(15) -CertStoreLocation cert:\LocalMachine\My
Ben Amada
52

Untuk membuat sertifikat baru untuk domain spesifik Anda:

Buka Powershell ISE sebagai admin, jalankan perintah:

New-SelfSignedCertificate -DnsName *.mydomain.com, localhost -CertStoreLocation cert:\LocalMachine\My

Untuk mempercayai sertifikat baru:

  • Buka mmc.exe
  • Buka Root Konsol -> Sertifikat (Komputer Lokal) -> Pribadi
  • Pilih sertifikat yang sudah Anda buat, lakukan klik kanan -> All Tasks -> Export dan ikuti wizard ekspor untuk membuat file .pfx
  • Buka Root Konsol -> Sertifikat -> Otoritas Sertifikasi Root Terpercaya dan impor file .pfx baru

Untuk mengikat sertifikat ke situs Anda:

  • Buka Manajer IIS
  • Pilih situs Anda dan pilih Edit Situs -> Bindings di panel kanan
  • Tambahkan pengikatan https baru dengan nama host yang benar dan sertifikat baru
DivineOps
sumber
2
Ini hanya berfungsi di Windows 8.1 dan Windows Server 2012 R2 (Windows PowerShell 4.0) atau yang lebih baru, meskipun Anda dapat membuat sertifikat di salah satu OS ini dan mengimpornya nanti ke komputer lain (Saya baru saja melakukannya untuk menggunakan sertifikat ini dengan SSRS diinstal di Windows Server 2008 R2).
mprost
2
Alih-alih Ekspor & Impor untuk menyalinnya ke Otoritas Sertifikasi Root Terpercaya, Anda cukup Salin & Tempel
jk7
Salin / Tempel hanya berfungsi di server yang sama. Anda juga dapat melakukan ctrl-seret sertifikat dari folder Pribadi ke Otoritas Sertifikasi Root Terpercaya di server yang sama. Jika Anda ingin host lain dapat mengakses situs tanpa peringatan, Anda harus mengekspornya dan meminta mereka mengimpor sertifikat ke TRCA lokalnya (Anda tidak perlu menyertakan kunci privat).
jessewolfe
41

Saya harus memecahkan teka-teki melalui sertifikat yang ditandatangani sendiri di Windows dengan menggabungkan potongan-potongan dari jawaban yang diberikan dan sumber daya lebih lanjut. Ini panduan saya sendiri (dan semoga selesai). Semoga ini akan menghindarkan Anda dari kurva belajar saya yang menyakitkan. Ini juga berisi info tentang topik terkait yang akan muncul cepat atau lambat saat Anda membuat sertifikat Anda sendiri.

Buat sertifikat yang ditandatangani sendiri di Windows 10 dan yang lebih lama

Jangan gunakan makecert.exe. Ini sudah tidak digunakan lagi oleh Microsoft.
Cara modern menggunakan perintah Powershell.

Windows 10:

Buka Powershell dengan hak istimewa Administrator:

New-SelfSignedCertificate  -DnsName "*.dev.local", "dev.local", "localhost"  -CertStoreLocation cert:\LocalMachine\My  -FriendlyName "Dev Cert *.dev.local, dev.local, localhost"  -NotAfter (Get-Date).AddYears(15)

Windows 8, Windows Server 2012 R2:

Di Powershell pada sistem ini, parameter -FriendlyName dan -NotAfter tidak ada. Hapus saja dari baris perintah di atas.
Buka Powershell dengan hak istimewa Administrator:

New-SelfSignedCertificate  -DnsName "*.dev.local", "dev.local", "localhost"  -CertStoreLocation cert:\LocalMachine\My

Alternatifnya adalah menggunakan metode untuk versi Windows yang lebih lama di bawah ini, yang memungkinkan Anda menggunakan semua fitur Win 10 untuk pembuatan sertifikat ...

Versi Windows yang lebih lama:

Rekomendasi saya untuk versi Windows yang lebih lama adalah membuat sertifikat pada mesin Win 10, mengekspornya ke file .PFX menggunakan contoh mmc (lihat "Percayai sertifikat" di bawah) dan impor ke penyimpanan sertifikat pada mesin target dengan OS Windows lama. Untuk mengimpor sertifikat, JANGAN klik kanan. Meskipun ada item "Impor sertifikat" dalam menu konteks, gagal semua uji coba saya untuk menggunakannya di Win Server 2008. Alih-alih membuka contoh mmc lain di mesin target, arahkan ke "Sertifikat (Komputer Lokal) / Pribadi / Sertifikat" , klik kanan di panel tengah dan pilih Semua tugas → Impor.

Sertifikat yang dihasilkan

Kedua perintah di atas membuat sertifikat untuk domain localhostdan *.dev.local.
Versi Win10 juga memiliki waktu hidup 15 tahun dan nama tampilan yang dapat dibaca "Dev Cert * .dev.local, dev.local, localhost".

Pembaruan: Jika Anda memberikan beberapa entri nama host di parameter-DnsName (seperti yang ditunjukkan di atas), entri pertama ini akan menjadi Subjek domain (Nama Umum AKA). Daftar lengkap semua entri nama host akan disimpan di bidang Nama Alternatif Subjek (SAN) sertifikat. (Terima kasih kepada @BenSewards karena telah menunjukkannya.)

Setelah pembuatan, sertifikat akan segera tersedia di semua pengikatan HTTPS IIS (petunjuk di bawah).

Percayai sertifikatnya

Sertifikat baru bukan bagian dari rantai kepercayaan dan karenanya tidak dianggap dapat dipercaya oleh browser mana pun. Untuk mengubahnya, kami akan menyalin sertifikat ke penyimpanan sertifikat untuk CA Root Terpercaya di komputer Anda:

Buka mmc.exe, File → Add / Remove Snap-In → pilih "Certificates" di kolom kiri → Add → pilih "Computer Account" → Next → "Local Computer ..." → Finish → OK

Di kolom kiri pilih "Sertifikat (Komputer Lokal) / Pribadi / Sertifikat".
Temukan sertifikat yang baru dibuat (di Win 10 kolom "Nama ramah" dapat membantu).
Pilih sertifikat ini dan tekan Ctrl-C untuk menyalinnya ke clipboard.

Di kolom kiri pilih "Certificates (Local Computer) / Trusted Root CAs / Certificates".
Tekan Ctrl-V untuk menempelkan sertifikat Anda ke penyimpanan ini.
Sertifikat akan muncul dalam daftar Trusted Root Authorities dan sekarang dianggap dapat dipercaya.

Gunakan di IIS

Sekarang Anda dapat pergi ke IIS Manager, pilih binding dari situs web lokal → Tambah → https → masukkan nama host formulir myname.dev.local(sertifikat Anda hanya berlaku untuk *.dev.local) dan pilih sertifikat baru → OK.

Tambahkan ke host

Tambahkan juga nama host Anda ke C: \ Windows \ System32 \ drivers \ etc \ hosts:

127.0.0.1  myname.dev.local

Senang

Sekarang Chrome dan IE harus memperlakukan sertifikat sebagai dapat dipercaya dan memuat situs web Anda saat Anda membuka https://myname.dev.local.

Firefox memiliki penyimpanan sertifikatnya sendiri. Untuk menambahkan sertifikat Anda di sini, Anda harus membuka situs web Anda di FF dan menambahkannya ke pengecualian saat FF memperingatkan Anda tentang sertifikat tersebut.

Untuk browser Edge mungkin ada lebih banyak tindakan yang diperlukan (lihat lebih jauh di bawah).

Uji sertifikatnya

Untuk menguji sertifikat Anda, Firefox adalah pilihan terbaik Anda. (Percayalah, saya sendiri adalah penggemar Chrome, tetapi FF lebih baik dalam hal ini.)

Berikut alasannya:

  • Firefox menggunakan cache SSL-nya sendiri, yang dihapus saat shift-reload. Jadi setiap perubahan pada sertifikat situs web lokal Anda akan segera tercermin dalam peringatan FF, sementara browser lain mungkin memerlukan restart atau pembersihan manual dari cache Windows SSL.
  • Juga FF memberi Anda beberapa petunjuk berharga untuk memeriksa validitas sertifikat Anda: Klik Advanced ketika FF menunjukkan peringatan sertifikatnya. FF akan menampilkan blok teks singkat dengan satu atau lebih kemungkinan peringatan di garis tengah blok teks:

Sertifikat tidak dipercaya karena ditandatangani sendiri.

Peringatan ini benar! Seperti disebutkan di atas, Firefox tidak menggunakan penyimpanan sertifikat Windows dan hanya akan mempercayai sertifikat ini, jika Anda menambahkan pengecualian untuk itu. Tombol untuk melakukan ini tepat di bawah peringatan.

Sertifikat tidak valid untuk nama ...

Peringatan ini menunjukkan, bahwa Anda melakukan sesuatu yang salah. Domain (karakter pengganti) sertifikat Anda tidak cocok dengan domain situs web Anda. Masalahnya harus diselesaikan dengan mengubah (sub-) domain situs web Anda atau dengan menerbitkan sertifikat baru yang cocok. Sebenarnya Anda dapat menambahkan pengecualian di FF meskipun sertifikat tidak cocok, tetapi Anda tidak akan pernah mendapatkan simbol gembok hijau di Chrome dengan kombinasi seperti itu.

Firefox dapat menampilkan banyak peringatan sertifikat bagus dan mudah dipahami lainnya di tempat ini, seperti sertifikat kedaluwarsa, sertifikat dengan algoritme penandatanganan yang kedaluwarsa, dll. Saya tidak menemukan browser lain yang memberi saya tingkat umpan balik untuk mengatasi masalah.

Pola (sub-) domain mana yang harus saya pilih untuk dikembangkan?

Dalam perintah New-SelfSignedCertificate di atas, kami menggunakan domain wildcard *.dev.local.

Anda mungkin berpikir: Mengapa tidak digunakan *.local?

Alasan sederhana: Ini ilegal sebagai domain wildcard.
Sertifikat karakter pengganti harus berisi setidaknya nama domain tingkat kedua.

Jadi, bentuk domain *.localbagus untuk mengembangkan situs web HTTP. Tetapi tidak terlalu banyak untuk HTTPS, karena Anda akan dipaksa untuk menerbitkan sertifikat baru yang cocok untuk setiap proyek baru yang Anda mulai.

Catatan penting:

  • Domain host yang valid HANYA boleh berisi huruf a sampai z, angka, tanda hubung, dan titik. Tidak boleh ada garis bawah! Beberapa browser sangat pilih-pilih tentang detail ini dan dapat menyulitkan Anda ketika mereka dengan keras kepala menolak untuk mencocokkan domain motör_head.dev.localAnda dengan pola wildcard Anda *.dev.local. Mereka akan mematuhi saat Anda beralih ke motoer-head.dev.local.
  • Karakter pengganti dalam sertifikat hanya akan cocok dengan SATU label (= bagian di antara dua titik) dalam domain, tidak lebih. *.dev.local cocok myname.dev.local tapi TIDAK other.myname.dev.local!
  • Karakter bebas multi level ( *.*.dev.local) TIDAK dimungkinkan dalam sertifikat. Jadi other.myname.dev.localhanya bisa dicakup oleh wildcard berupa *.myname.dev.local. Akibatnya, yang terbaik adalah tidak menggunakan bagian domain tingkat keempat. Masukkan semua variasi Anda ke bagian tingkat ketiga. Dengan cara ini Anda akan mendapatkan satu sertifikat untuk semua situs dev Anda.

Masalah dengan Edge

Ini bukan tentang sertifikat yang ditandatangani sendiri, tetapi masih terkait dengan keseluruhan proses:
Setelah mengikuti langkah-langkah di atas, Edge mungkin tidak menampilkan konten apa pun saat Anda membuka myname.dev.local.
Alasannya adalah fitur karakteristik dari manajemen jaringan Windows 10 untuk Aplikasi Modern, yang disebut "Isolasi Jaringan".

Untuk mengatasi masalah itu, buka prompt perintah dengan hak istimewa Administrator dan masukkan perintah berikut sekali:

CheckNetIsolation LoopbackExempt -a -n=Microsoft.MicrosoftEdge_8wekyb3d8bbwe

Info lebih lanjut tentang Edge dan Isolasi Jaringan dapat ditemukan di sini: https://blogs.msdn.microsoft.com/msgulfcommunity/2015/07/01/how-to-debug-localhost-on-microsoft-edge/

Jpsy
sumber
2
Saya ingin mencatat di sini bahwa nama DNS pertama juga disimpan sebagai Nama Subjek, yang mungkin Anda tidak ingin menjadi wild card.
Ben Sewards
@ BenSewards: Terima kasih telah menunjukkannya, Ben. Saya telah memperbarui jawaban untuk menyertakan detail bidang subjek / SAN. Apakah Anda melihat masalah saat memiliki nama host karakter pengganti di bidang Subjek, bukan di bidang SAN?
Jpsy
@Jpsy - Ini berfungsi untuk saya secara lokal di server tempat sertifikat yang ditandatangani sendiri dibuat, tetapi tidak dalam Firefox atau Chrome di mesin (klien) saya. Saya mengerti appname.dev has a security policy called HTTP Strict Transport Security (HSTS), which means that Firefox can only connect to it securely. You can’t add an exception to visit this site.yang, seperti yang dinyatakan, tidak mengizinkan Anda untuk menambahkan pengecualian klien, bertentangan dengan instruksi Anda. Apakah ini konfigurasi yang buruk dalam IIS itu sendiri sehubungan dengan Pengaturan SSL, Memerlukan SSL, dan opsi Sertifikat klien?
Kode Maverick
@ CodeMaverick: Mungkinkah ada pemblokir iklan atau perangkat lunak anti virus yang terlibat dalam masalah Anda secara kebetulan? Pilihan lainnya adalah sertifikat tidak cocok dengan nama domain yang Anda gunakan. Ingatlah bahwa * dalam CN atau SAN sertifikat hanya dapat mewakili satu segmen dalam nama domain ( tidak mengandung titik). Jadi CN *.mydomain.combisa menjadi sertifikat yang valid me.mydomain.comtetapi tidak untuk me.at.mydomain.com.
Jpsy
14

Saya mengalami masalah yang sama ini ketika saya ingin mengaktifkan SSL ke proyek yang dihosting di IIS 8. Akhirnya alat yang saya gunakan adalah OpenSSL , setelah beberapa hari berkelahi dengan perintah makecert. Sertifikat dihasilkan di Debian, tetapi saya dapat mengimpornya dengan mulus ke IIS 7 dan 8.

Unduh OpenSSL yang kompatibel dengan OS Anda dan file konfigurasi ini . Tetapkan file konfigurasi sebagai konfigurasi default OpenSSL.

Pertama, kami akan membuat kunci pribadi dan sertifikat Otoritas Sertifikasi (CA). Sertifikat ini untuk menandatangani permintaan sertifikat (CSR).

Anda harus melengkapi semua bidang yang diperlukan dalam proses ini.

  1. openssl req -new -x509 -days 3650 -extensions v3_ca -keyout root-cakey.pem -out root-cacert.pem -newkey rsa:4096

Anda dapat membuat file konfigurasi dengan pengaturan default seperti ini: Sekarang kami akan membuat permintaan sertifikat, yaitu file yang dikirim ke Otoritas Sertifikasi.

Common Name harus menetapkan domain situs Anda, misalnya: public.organization.com .

  1. openssl req -new -nodes -out server-csr.pem -keyout server-key.pem -newkey rsa:4096

Sekarang permintaan sertifikat ditandatangani dengan sertifikat CA yang dihasilkan.

  1. openssl x509 -req -days 365 -CA root-cacert.pem -CAkey root-cakey.pem -CAcreateserial -in server-csr.pem -out server-cert.pem

Sertifikat yang dihasilkan harus diekspor ke file .pfx yang dapat diimpor ke IIS.

  1. openssl pkcs12 -export -out server-cert.pfx -inkey server-key.pem -in server-cert.pem -certfile root-cacert.pem -name "Self Signed Server Certificate"

Pada langkah ini kami akan mengimpor sertifikat CA.

  1. Di server Anda harus mengimpor sertifikat CA ke Otoritas Sertifikasi Root Terpercaya, agar IIS dapat mempercayai sertifikat yang akan diimpor. Ingatlah bahwa sertifikat yang akan diimpor ke IIS, telah ditandatangani dengan sertifikat CA.

    • Buka Command Prompt dan ketik mmc .
    • Klik File .
    • Pilih Add / Remove Snap di ... .
    • Klik dua kali pada Sertifikat .
    • Pilih Akun Komputer dan Berikutnya -> .
    • Pilih Komputer Lokal dan Selesai .
    • Ok .
    • Pergi ke Sertifikat -> Otoritas Sertifikasi Root Terpercaya -> Sertifikat , klik tepat pada Sertifikat dan pilih Semua Tugas -> Impor ...

masukkan deskripsi gambar di sini

  • Pilih Berikutnya -> Jelajahi ...
  • Anda harus memilih All Files untuk menelusuri lokasi file root-cacert.pem .
  • Klik Berikutnya dan pilih Tempatkan semua sertifikat di toko berikut : Otoritas Sertifikasi Root Terpercaya .
  • Klik Berikutnya dan Selesai .

masukkan deskripsi gambar di sini

Dengan langkah ini, IIS mempercayai keaslian sertifikat kami.

  1. Pada langkah terakhir kami, kami akan mengimpor sertifikat ke IIS dan menambahkan situs pengikatan.

    • Buka Manajer Layanan Informasi Internet (IIS) atau ketik inetmgr pada prompt perintah dan buka Sertifikat Server .
    • Klik Impor ... .
    • Tetapkan jalur file .pfx, frasa sandi, dan Pilih penyimpanan sertifikat di Web Hosting .

masukkan deskripsi gambar di sini

  • Klik OK .
  • Sekarang masuk ke situs Anda di IIS Manager dan pilih Bindings ... dan Add a new binding.

  • Pilih https sebagai jenis pengikatan dan Anda seharusnya dapat melihat sertifikat yang diimpor.

  • Klik OK dan semuanya selesai.

masukkan deskripsi gambar di sini

Joseph
sumber
Saya ingin memiliki kedaluwarsa yang lebih lama dengan sertifikat yang ditandatangani sendiri dan Windows SDK dengan makecert.exe tidak tersedia di host Windows. Host Linux dan jawaban ini memberikan solusinya.
richk
Saya senang Anda menemukan jawaban saya bermanfaat.
Joseph
Di mana meletakkan "public.organization.com" itu ke dalam perintah openssl?
The One
2

Opsi lainnya adalah membuat sertifikat yang ditandatangani sendiri yang memungkinkan Anda menentukan nama domain per situs web. Ini berarti Anda dapat menggunakannya di banyak nama domain.

Di Manajer IIS

  1. Klik node nama mesin
  2. Buka Sertifikat Server
  3. Di panel Tindakan, pilih 'Buat Sertifikat yang Ditandatangani Sendiri'
  4. Di 'Specify a friendly name ...' beri nama * Dev (pilih 'Personal' dari daftar jenis)
  5. Menyimpan

Sekarang, di situs web Anda di IIS ...

  1. Kelola binding
  2. Buat pengikatan baru untuk Https
  3. Pilih sertifikat yang Anda tandatangani sendiri dari daftar
  4. Setelah dipilih, kotak nama domain akan diaktifkan dan Anda akan dapat memasukkan nama domain Anda.

masukkan deskripsi gambar di sini

pola pengujian
sumber
Terima kasih jawaban yang paling berguna sejauh ini. Setidaknya untuk menggunakannya dalam pengembangan, ini cepat.
cabaji99
0

Cara lain yang mudah untuk menghasilkan sertifikat yang ditandatangani sendiri adalah dengan menggunakan Jexus Manager,

Manajer Jexus

  1. Pilih node server di panel Connections.
  2. Di panel tengah, klik ikon Sertifikat Server untuk membuka halaman manajemen.
  3. Di bawah panel Actions, klik item menu "Generate Self-Signed Certificate ...".

https://www.jexusmanager.com/en/latest/tutorials/self-signed.html

Lex Li
sumber