Let's Encrypt adalah perkhidmatan percuma yang menghasilkan sijil untuk melindungi laman web anda. Ia menyokong menghasilkan pelbagai jenis sijil, termasuk domain tunggal dan wildcard. Di samping itu, ia mempunyai banyak kaedah untuk mengesahkan domain anda untuk menghasilkan sijil.
http-01 (HTTP ringkas)
dns-01 (Pengesahan DNS)
tls-sni-01(Pengesahan melalui penggunaan sijil yang ditandatangani sendiri - kini tidak digunakan lagi )
Isu ini
Malangnya, kerentanan ditemui pada bulan Januari 2018 di mana menjadi mungkin untuk membuat sijil untuk domain tanpa pengesahan / kebenaran sebelumnya. Contohnya, sijil boleh dihasilkan untuk domain yang sebenarnya tidak anda miliki.
Tidak lama kemudian, protokol ( tls-sni-01) dihentikan dan kebanyakan terbitan baru (sijil baru) disekat daripada menggunakan protokol untuk mengesahkan.
Beralih ke HTTP Mudah
Menukar ke http-01atau pengesahan "HTTP Mudah" agak mudah. Sekiranya anda menggunakan certbot-autountuk menghasilkan sijil anda, Let's Encrypt akan menghasilkan sijil baru atau akan melakukannya secara automatik semasa "pembaharuan" seterusnya.
Jika anda menggunakan certbot, anda harus menggunakan --preferred-challengeparameter:
certbot (...) --prefered-challenge
Ini akan memberitahu Let's Encrypt untuk beralih ke http-01.
Beralih ke pengesahan DNS
Jika anda ingin mengelakkan semua kerumitan ini, agak mudah untuk mengkonfigurasi Pengesahan DNS Encrypt. Semasa melaksanakan certbot, tambahkan --preferred-challenges dnssebagai parameter:
certbot -d example.com --manual --preferred-challenges dns
certbot akan mencetak sesuatu yang serupa dengan yang berikut:
Please deploy a DNS TXT record under the name
_acme-challenge.example.com with the following value:
(random_string)
Once this is deployed,
Press ENTER to continue
Sebaik sahaja anda menambah rekod dengan pembekal DNS anda, tekan ENTER. Anda kemudian perlu menyediakan pekerjaan CRON untuk memperbaharui sijil anda secara automatik. Oleh kerana pengesahan DNS telah digunakan, anda tidak perlu risau tentang pengalihan seperti yang anda lakukan http-01, (port 80ke port 443).