{"id":303,"date":"2025-10-17T11:28:36","date_gmt":"2025-10-17T11:28:36","guid":{"rendered":"https:\/\/tutorial.emka.web.id\/?p=303"},"modified":"2025-10-17T11:28:36","modified_gmt":"2025-10-17T11:28:36","slug":"cara-membuat-sertifikat-ssl-self-signed-di-ubuntu-25-10","status":"publish","type":"post","link":"https:\/\/emka.web.id\/en\/2025\/10\/cara-membuat-sertifikat-ssl-self-signed-di-ubuntu-25-10.html","title":{"rendered":"Cara Membuat Sertifikat SSL Self-signed di Ubuntu 25.10"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">Sertifikat SSL sangat penting untuk komunikasi aman antara <em>web server<\/em> dan <em>client<\/em>. Untuk keperluan <em>testing<\/em> atau penggunaan internal, sertifikat SSL <em>self-signed<\/em> bisa menjadi alternatif yang sesuai dibandingkan sertifikat komersial.<\/p>\n\n\n\n<!--more-->\n\n\n\n<p class=\"wp-block-paragraph\">Sebelum memulai, pastikan OpenSSL sudah terinstal di sistem Anda. Sebagian besar distribusi Linux sudah menyertakan OpenSSL secara <em>pre-installed<\/em>. Untuk memverifikasinya, jalankan perintah berikut:<\/p>\n\n\n\n<pre class=\"wp-block-syntaxhighlighter-code\">openssl version<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Jika OpenSSL belum terinstal, Anda dapat menginstalnya di Ubuntu 25.10 dengan perintah:<\/p>\n\n\n\n<pre class=\"wp-block-syntaxhighlighter-code\">sudo apt update &amp;&amp; sudo apt install openssl -y<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Langkah pertama dalam pembuatan sertifikat SSL adalah menghasilkan <em>private key<\/em>. Jalankan perintah berikut untuk membuat <em>private key<\/em> RSA 2048-bit bernama <em>mydomain.key<\/em>:<\/p>\n\n\n\n<pre class=\"wp-block-syntaxhighlighter-code\">openssl genrsa -out mydomain.key 2048<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Untuk keamanan yang lebih kuat, Anda dapat mengganti nilai <em>2048<\/em> dengan <em>4096<\/em>.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Setelah <em>private key<\/em> dibuat, langkah selanjutnya adalah membuat <em>Certificate Signing Request<\/em> (CSR). CSR ini berisi informasi tentang entitas yang mengajukan sertifikat. Gunakan <em>private key<\/em> yang telah dibuat sebelumnya:<\/p>\n\n\n\n<pre class=\"wp-block-syntaxhighlighter-code\">openssl req -new -key mydomain.key -out mydomain.csr<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Selama proses ini, Anda akan diminta untuk memasukkan beberapa detail seperti <em>Country Name<\/em>, <em>State or Province Name<\/em>, <em>Locality Name<\/em>, <em>Organization Name<\/em>, <em>Organizational Unit Name<\/em>, <em>Common Name<\/em> (nama <em>domain<\/em> atau FQDN server), dan <em>Email Address<\/em>. Isi semua detail yang diminta dan tekan Enter.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Dengan CSR dan <em>private key<\/em> yang sudah ada, kini Anda bisa membuat sertifikat <em>self-signed<\/em>. Perintah berikut akan menghasilkan sertifikat dengan masa berlaku satu tahun (365 hari):<\/p>\n\n\n\n<pre class=\"wp-block-syntaxhighlighter-code\">openssl x509 -req -days 365 -in mydomain.csr -signkey mydomain.key -out mydomain.crt<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">File <em>mydomain.crt<\/em> akan berisi sertifikat <em>self-signed<\/em> yang telah dihasilkan.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Untuk mengimplementasikan sertifikat SSL <em>self-signed<\/em> ini dengan Nginx, Anda perlu memindahkan file sertifikat (<em>.crt<\/em>) dan <em>private key<\/em> (<em>.key<\/em>) ke direktori yang sesuai. Direkomendasikan untuk menempatkannya di <em>\/etc\/nginx\/ssl\/<\/em>. Buat direktori tersebut jika belum ada, lalu salin file-nya:<\/p>\n\n\n\n<pre class=\"wp-block-syntaxhighlighter-code\">sudo mkdir -p \/etc\/nginx\/ssl\nsudo cp mydomain.crt \/etc\/nginx\/ssl\/\nsudo cp mydomain.key \/etc\/nginx\/ssl\/<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Selanjutnya, Anda perlu mengkonfigurasi Nginx untuk menggunakan sertifikat ini. Buka file konfigurasi Nginx Anda, biasanya terletak di <em>\/etc\/nginx\/sites-available\/default<\/em> atau <em>\/etc\/nginx\/nginx.conf<\/em>, menggunakan <em>text editor<\/em> seperti vi atau nano. Modifikasi blok <em>server<\/em> untuk mengaktifkan SSL:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>server {\n   listen 443 ssl;\n   server_name mydomain.com;\n   ssl_certificate \/etc\/nginx\/ssl\/mydomain.crt;\n   ssl_certificate_key \/etc\/nginx\/ssl\/mydomain.key;\n   location \/ {\n      root \/var\/www\/html;\n      index index.html;\n   }\n}<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Pastikan Nginx mendengarkan pada <em>port 443<\/em> (HTTPS). Simpan perubahan pada file konfigurasi. Setelah itu, uji konfigurasi Nginx untuk memastikan tidak ada kesalahan sintaks:<\/p>\n\n\n\n<pre class=\"wp-block-syntaxhighlighter-code\">sudo nginx -t<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Jika pengujian berhasil, <em>restart<\/em> layanan Nginx agar perubahan konfigurasi diterapkan:<\/p>\n\n\n\n<pre class=\"wp-block-syntaxhighlighter-code\">sudo systemctl restart nginx<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Atau, jika Anda menggunakan <em>SysVinit<\/em>:<\/p>\n\n\n\n<pre class=\"wp-block-syntaxhighlighter-code\">sudo service nginx restart<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Terakhir, verifikasi apakah konfigurasi SSL telah terinstal dengan benar. Anda dapat menggunakan perintah <em>openssl s_client<\/em> untuk memeriksa detail sertifikat:<\/p>\n\n\n\n<pre class=\"wp-block-syntaxhighlighter-code\">openssl s_client -connect mydomain.com:443 -servername mydomain.com<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Sebagai alternatif, buka <em>web browser<\/em> Anda dan navigasikan ke <em>https:\/\/mydomain.com<\/em>. Karena ini adalah sertifikat <em>self-signed<\/em>, <em>browser<\/em> kemungkinan akan menampilkan peringatan keamanan. Anda dapat melewati peringatan ini dengan menambahkan sertifikat ke daftar <em>trusted certificate<\/em> di <em>browser<\/em> Anda. Meskipun sertifikat <em>self-signed<\/em> cocok untuk <em>testing<\/em> atau penggunaan internal, untuk lingkungan produksi, sangat disarankan untuk mendapatkan sertifikat SSL dari <em>Certificate Authority<\/em> (CA) terpercaya untuk menghindari peringatan keamanan <em>browser<\/em> dan membangun kepercayaan pengguna.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong><em>Penulis: Felix Ibo Bukhara<\/em><\/strong><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Ayo Pelajari cara membuat sertifikat SSL self-signed di Ubuntu 25.10 menggunakan OpenSSL untuk testing atau penggunaan internal web server Nginx<\/p>\n","protected":false},"author":27,"featured_media":304,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[22],"tags":[39,40,41,42,15],"class_list":["post-303","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-ubuntu","tag-nginx","tag-openssl","tag-self-signed-ssl-certificate","tag-sertifikat-ssl","tag-ubuntu"],"_links":{"self":[{"href":"https:\/\/emka.web.id\/en\/wp-json\/wp\/v2\/posts\/303","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/emka.web.id\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/emka.web.id\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/emka.web.id\/en\/wp-json\/wp\/v2\/users\/27"}],"replies":[{"embeddable":true,"href":"https:\/\/emka.web.id\/en\/wp-json\/wp\/v2\/comments?post=303"}],"version-history":[{"count":0,"href":"https:\/\/emka.web.id\/en\/wp-json\/wp\/v2\/posts\/303\/revisions"}],"wp:attachment":[{"href":"https:\/\/emka.web.id\/en\/wp-json\/wp\/v2\/media?parent=303"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/emka.web.id\/en\/wp-json\/wp\/v2\/categories?post=303"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/emka.web.id\/en\/wp-json\/wp\/v2\/tags?post=303"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}