it-swarm-id.com

Apakah praktik yang buruk untuk menggunakan sertifikat SSL yang ditandatangani sendiri?

Sertifikat SSL cukup mahal untuk perorangan, terutama jika Anda perlu mengamankan subdomain yang berbeda. Saya sedang mempertimbangkan untuk menggunakan sertifikat yang ditandatangani sendiri, karena fokus utama saya adalah untuk mengamankan koneksi, dan bukan untuk mengotentikasi diri saya.

Namun, beberapa browser menampilkan peringatan tidak menyenangkan ketika menemukan sertifikat seperti itu. Apakah Anda akan mencegah penggunaan sertifikat yang ditandatangani sendiri (misalnya untuk aplikasi web kecil atau halaman admin situs web kecil)? Atau tidak apa-apa dalam beberapa kasus?

29
Wookai

Secara umum, buruk untuk menggunakan sertifikat yang ditandatangani sendiri. Jika Anda melakukannya maka Anda menjalankan risiko orang akan meninggalkan situs Anda ketika mereka mendapat peringatan tentang sertifikat Anda yang buruk. Lebih penting lagi, Anda menghadapi risiko lebih besar untuk meminta seseorang melakukan serangan injeksi di mana mereka menggunakan sertifikat yang ditandatangani sendiri di tempat Anda dan pengunjung tidak akan tahu yang lebih baik.

Lihat artikel di sini, http://www.sslshopper.com/article-when-are-self-signed-certificates-acceptable.html untuk info lebih lanjut.

14
Ben Hoffman

Seperti yang dikatakan RandomBen, sertifikat yang ditandatangani sendiri umumnya disukai karena alasan yang dia jelaskan. Tetapi ada satu situasi di mana mereka baik-baik saja: jika set orang yang perlu mengirimkan data sensitif ke situs web Anda kecil dan terbatas, mereka semua agak kompeten secara teknis, dan Anda dapat berkomunikasi dengan mereka semua. Jika demikian, Anda dapat memberi setiap orang rincian sertifikat, lalu mereka dapat memeriksa sertifikat secara manual saat mereka pergi ke situs Anda dan menambahkan pengecualian keamanan jika perlu.

Sebagai contoh ekstrem, pada VPS pribadi saya, saya memiliki subdomain administratif, yang hanya boleh diakses oleh saya. Tidak akan ada masalah mengamankan domain itu dengan sertifikat yang ditandatangani sendiri karena saya dapat memeriksa secara manual bahwa sertifikat server yang digunakan untuk mengamankan koneksi adalah sama dengan yang saya instal di server.

Dalam kasus di mana sertifikat yang ditandatangani sendiri tidak akan berfungsi atau Anda lebih memilih yang "asli", saya sarankan Let's Encrypt , sebuah proyek yang dimulai oleh Kelompok Penelitian Keamanan Internet dan didukung oleh internet utama perusahaan, yang menawarkan sertifikat SSL tanpa biaya. Mereka dapat melakukan ini karena proses verifikasi yang mereka gunakan sepenuhnya otomatis, dan pada kenyataannya server web yang mendukung protokol ACME (seperti Caddy , yang saat ini saya gunakan) dapat memperoleh sertifikat sepenuhnya dengan sendirinya. Let's Encrypt tidak memverifikasi bahwa Anda , sebagai pribadi, adalah orang yang Anda katakan; itu hanya memverifikasi bahwa server web Anda mampu menyajikan konten pada domain yang diklaimnya. Let's Encrypt didukung oleh semua browser utama, tetapi diketahui bahwa verifikasi minimal, jadi jika Anda menjalankan sesuatu seperti situs e-commerce atau apa pun di mana orang akan mengirimkan informasi sensitif, Anda mungkin harus mengeluarkan uang untuk mendapatkan sertifikat dengan tingkat validasi yang lebih tinggi.

Saya biasa merekomendasikan sertifikat StartSSL gratis dari StartCom untuk orang-orang yang tidak ingin membayar validasi, tetapi sekarang tidak lagi. StartCom diam-diam diakuisisi oleh WoSign pada tahun 2016 dan kemudian mengeluarkan sertifikat tidak sah untuk beberapa domain. Akibatnya, browser utama menghapus dukungan mereka untuk sertifikat StartCom. (Sejauh yang saya tahu, IE toh tidak pernah mendukungnya.) Bagaimanapun, Let's Encrypt jauh lebih nyaman.

14
David Z

Itu bukan praktik buruk untuk menggunakan sertifikat yang ditandatangani sendiri. Sertifikat yang ditandatangani sendiri memiliki banyak tujuan praktis yang tidak masuk akal untuk menggunakan sertifikat yang ditandatangani CA.

Misalnya, di banyak server saya, saya memiliki pengaturan login tanpa kata sandi. Ini adalah server yang sangat sering saya hubungkan, dan terkadang membuat beberapa koneksi SSH terbuka, sehingga sulit untuk mengetik nama pengguna dan kata sandi saya setiap saat.

Sebagai gantinya, saya menggunakan sertifikat SSL yang ditandatangani sendiri yang saya hasilkan pada masing-masing mesin klien saya (workstation di kantor, laptop, dan workstation rumah saya). Pengaturan semacam ini memungkinkan saya untuk menggunakan kata sandi yang cukup panjang, aman, dan benar-benar unik untuk setiap server saya tanpa memengaruhi produktivitas. Dan karena saya memiliki akses langsung ke server di mana saya dapat menginstal kunci publik untuk setiap sertifikat, tidak ada gunanya saya menggunakan sertifikat yang ditandatangani CA.

Saya dapat mengatur CA root saya sendiri yang dengannya saya dapat menandatangani semua sertifikat penggunaan internal untuk perusahaan kami, dan dengan cara ini saya hanya perlu instal kunci publik tunggal di setiap server. Namun, organisasi kami belum berkembang ke ukuran yang benar-benar mengharuskan ini, dan untuk keperluan HTTP aman, ini akan tetap sama dengan memiliki sertifikat yang ditandatangani sendiri.

Demikian juga, sertifikat yang ditandatangani sendiri sering digunakan untuk koneksi email, tanda tangan PGP, dan koneksi server-ke-server di mana itu sepele untuk pra-pertukaran kunci publik. Dalam banyak kasus ini, ini sebenarnya lebih aman daripada mengandalkan rantai sertifikat yang dapat dikompromikan pada titik mana pun dalam rantai.

3
Lèse majesté

Jika Anda mengamankan beberapa subdomain, Anda mungkin ingin menggunakan sertifikat wildcard , yang (tergantung pada berapa banyak subdomain yang Anda amankan) dapat bekerja jauh lebih murah daripada membeli satu per domain; misalnya, RapidSSL memiliki wildcard yang lebih murah daripada sertifikat individual begitu Anda memiliki empat domain yang digunakan.

2
Cebjyre