HTTPS localhost: buat sertifikat self-signed untuk domain dan IP lokal
Alat ini mengubah nama situs lokal Anda menjadi sertifikat dan kunci privat yang siap dipakai di server pengembangan, supaya HTTPS localhost berjalan. Semuanya terjadi di browser: tidak ada yang diunggah atau disimpan. Di akhir, Anda mengunduh server.crt dan server.key dalam satu ZIP.
HTTPS localhost dan IP lokal dengan sertifikat self-signed
Setiap nama yang Anda ketik masuk ke daftar Subject Alternative Name (SAN), yang diperiksa browser modern. Tidak ada yang perlu diatur atau ditempel.
Pasangan kunci dibuat oleh WebCrypto di browser Anda, dan sertifikatnya dibangun serta ditandatangani langsung di halaman ini.
Generate SSL localhost langkah demi langkah
- Periksa kotak Domain dan alamat IP. Isinya diawali
localhost, 127.0.0.1; ganti atau tambahkan nama yang Anda pakai, misalnyalocalhost, 127.0.0.1, 192.168.1.5. - Jika perlu, buka Pengaturan untuk mengubah Berlaku selama (hari) atau Ukuran kunci RSA.
- Klik Buat sertifikat. Setelah langkah singkat Membuat sertifikat Anda…, muncul Sertifikat Anda siap.
- Klik Unduh ZIP. File
local-ssl-certificate.zipberisi server.crt (sertifikat) dan server.key (kunci privat). - Tambahkan server.crt ke penyimpanan kepercayaan komputer Anda lewat Percayai di komputer Anda, lalu atur server Anda dengan kedua file itu.
- Untuk mengubah nama atau pengaturan, klik Ubah nama atau pengaturan dan buat lagi.
Yang diketik di kotak domain dan alamat IP
Pisahkan entri dengan koma, spasi, atau baris baru. Tiap entri dikenali otomatis sebagai nama DNS atau alamat IP:
- Nama host seperti
localhostataudev.example.test - Wildcard seperti
*.example.test, yang mencakup satu tingkat subdomain - Alamat IPv4 seperti
192.168.1.5dan IPv6 seperti::1, dengan atau tanpa kurung siku - Nama dengan huruf beraksen atau non-Latin, yang diubah otomatis ke punycode (bentuk xn--)
Satu sertifikat dapat mencakup hingga 50 nama. Ketik hanya nama host atau alamatnya: entri dengan https:// atau nomor port ditolak, dan pesan galat menunjukkan entri mana yang tidak valid. Nama yang Anda ketik di bilah alamat browser harus salah satu nama dalam sertifikat, kalau tidak browser tetap memperingatkan.
Pengaturan: masa berlaku dan ukuran kunci
Berlaku selama menerima 1 sampai 397 hari dan dimulai dari 365. Angka di luar rentang itu diubah ke batas terdekat. Sertifikat berlaku sejak saat Anda membuatnya, dan Berlaku hingga menampilkan tanggal berakhir di hasil. Setelah habis, buat yang baru.
Ukuran kunci RSA bawaannya 2048 bit, yang cepat dan diterima di mana saja. Pilih 4096 bit untuk kunci lebih besar; pembuatannya bisa memakan beberapa detik.
Hasilnya menampilkan Mencakup (semua nama), Berlaku hingga, Kunci, dan Sidik jari SHA-256. Sertifikatnya berupa X.509 versi 3 self-signed, ditandatangani dengan kuncinya sendiri memakai SHA-256 dengan RSA. Common name adalah entri pertama yang Anda ketik, tetapi browser membaca daftar SAN. Nomor serinya acak.
SSL localhost Chrome: mempercayai sertifikat di Windows, macOS, dan Linux
Browser memperingatkan soal sertifikat ini sampai ia masuk ke penyimpanan kepercayaan. Ekstrak ZIP, buka terminal di folder itu, lalu jalankan perintah untuk sistem Anda. Masing-masing juga ditampilkan siap salin di bawah Percayai di komputer Anda.
- macOS:
sudo security add-trusted-cert -d -r trustRoot -k /Library/Keychains/System.keychain server.crt - Windows (PowerShell sebagai administrator):
Import-Certificate -FilePath .\server.crt -CertStoreLocation Cert:\LocalMachine\Root - Debian dan Ubuntu:
sudo cp server.crt /usr/local/share/ca-certificates/server.crtlalusudo update-ca-certificates - Fedora dan RHEL:
sudo cp server.crt /etc/pki/ca-trust/source/anchors/lalusudo update-ca-trust
Firefox memakai daftarnya sendiri, begitu juga Chrome di Linux. Impor server.crt di sana lewat Pengaturan, Sertifikat, Otoritas. Beberapa alat pengembangan juga punya daftar sendiri; berikan server.crt di pengaturannya. Mulai ulang browser setelah sertifikat dipercaya.
Memakai sertifikat di server dan menjaga kuncinya
Arahkan pengaturan sertifikat server web Anda ke server.crt dan pengaturan kunci privatnya ke server.key, lalu mulai ulang server. Di nginx namanya ssl_certificate dan ssl_certificate_key; di Apache SSLCertificateFile dan SSLCertificateKeyFile. Setelah itu buka situs Anda dengan salah satu nama di sertifikat, diawali https://.
Jaga kerahasiaan server.key: siapa pun yang memilikinya dapat menyamar sebagai situs lokal Anda. Jangan mengunggahnya ke repositori publik. Alat ini hanya untuk pengembangan lokal; jangan pernah memasang sertifikat self-signed di situs web publik.
Pertanyaan yang sering diajukan
Bagaimana cara mengaktifkan HTTPS localhost?
Biarkan localhost, 127.0.0.1 di kotak "Domain dan alamat IP", klik "Buat sertifikat", lalu "Unduh ZIP". Anda mendapat server.crt dan server.key. Arahkan server web lokal Anda ke kedua file itu, dan tambahkan server.crt ke penyimpanan kepercayaan komputer agar browser berhenti memperingatkan.
Bagaimana generate SSL localhost untuk alamat IP seperti 192.168.1.5?
Ketik alamatnya di kotak "Domain dan alamat IP", misalnya 192.168.1.5. IPv4 dan IPv6 sama-sama bisa, termasuk bentuk berkurung siku [::1]. Setiap IP ditulis di sertifikat sebagai entri alamat IP, yang diperiksa browser saat Anda membuka https://192.168.1.5. Ketik alamatnya saja, tanpa https:// dan port.
Bagaimana membuat self signed certificate dengan SAN?
Setiap nama yang Anda masukkan otomatis menjadi Subject Alternative Name: domain sebagai nama DNS, alamat IP sebagai entri alamat IP. Tidak ada yang perlu diatur. Daftar "Mencakup" di hasil menunjukkan semua nama yang masuk. Common name diisi entri pertama, tetapi browser membaca SAN.
Bisakah membuat sertifikat self-signed wildcard?
Bisa. Masukkan wildcard seperti *.example.test dan ia ditambahkan sebagai nama DNS. Wildcard hanya mencakup satu tingkat: *.example.test berlaku untuk app.example.test, tetapi tidak untuk example.test maupun a.b.example.test. Tambahkan example.test terpisah bila perlu.
Apakah perlu OpenSSL untuk membuatnya?
Tidak. Pasangan kunci dibuat oleh WebCrypto bawaan browser dan sertifikatnya dibangun serta ditandatangani di halaman, jadi tidak ada perintah yang harus dijalankan dan tidak ada yang perlu dipasang. OpenSSL baru berguna jika Anda ingin mengonversi file ke format lain sesudahnya.
Bagaimana mempercayai sertifikat di Windows, Mac, atau Ubuntu?
Di Windows, buka PowerShell sebagai administrator, masuk ke folder hasil ekstrak, lalu jalankan Import-Certificate -FilePath .\server.crt -CertStoreLocation Cert:\LocalMachine\Root. Di Mac, jalankan sudo security add-trusted-cert -d -r trustRoot -k /Library/Keychains/System.keychain server.crt. Di Debian dan Ubuntu, salin file ke /usr/local/share/ca-certificates/ lalu jalankan sudo update-ca-certificates.
Bagaimana mempercayai sertifikat di Firefox?
Firefox tidak memakai penyimpanan kepercayaan sistem. Di pengaturannya, cari Sertifikat, pilih Lihat Sertifikat, buka tab Otoritas, lalu impor server.crt dan centang opsi untuk mempercayainya bagi situs web. Chrome di Linux juga memakai daftarnya sendiri dengan cara yang sama.
Bisakah saya mendapat file PFX, CSR, atau sertifikat Let's Encrypt?
Tidak. Alat ini membuat satu sertifikat self-signed berformat PEM: server.crt dan server.key. Ia tidak membuat permintaan penandatanganan sertifikat (CSR), sertifikat yang ditandatangani CA atau publik, ataupun CA root terpisah. Jika Anda butuh PFX, perintah pkcs12 milik OpenSSL dapat membuatnya dari kedua file.