GNU/Linux >> Belajar Linux >  >> Panels >> Panels

Cara Menginstal Let's Encrypt di Ubuntu 20.04 dengan Apache

Dalam artikel ini, kami akan menunjukkan cara menginstal klien Let's Encrypt di Ubuntu 20.04 VPS Anda, menerbitkan sertifikat SSL untuk domain Anda, dan mengonfigurasinya dengan server web Apache.

Let's Encrypt adalah organisasi otoritas sertifikat (CA) yang memungkinkan siapa saja untuk mendapatkan sertifikat SSL gratis dengan perintah sederhana dan otomatis. Dalam tutorial ini, kita akan menggunakan alat yang disebut certbot , yang merupakan bagian resmi dari upaya EFF untuk mengenkripsi seluruh Internet. Berkat alat yang mudah digunakan ini, menyiapkan sertifikat SSL untuk melindungi pengunjung situs web Anda dan meningkatkan keamanan situs web Anda tidak pernah semudah ini. Semua sertifikat SSL yang disediakan oleh Let's Encrypt dapat digunakan untuk tujuan produksi/komersial tanpa biaya atau biaya apa pun. Mari kita mulai dengan penginstalan dan penyiapan.

Mari kita mulai dengan penginstalan – ini adalah penginstalan yang sederhana dan tidak akan memakan waktu lama.

Prasyarat

  • Untuk keperluan tutorial ini, kita akan menggunakan VPS Ubuntu 20.04.
  • Diperlukan pengguna dengan hak sudo atau akses root SSH penuh. Semua VPS kami hadir dengan akses root.
  • Nama domain yang valid menunjuk ke alamat IP server Anda. Dalam tutorial ini, kita akan menggunakan domain.com sebagai contoh.

1. Hubungkan ke Server Anda

Sebelum kita mulai, Anda harus terhubung ke server Anda melalui SSH sebagai pengguna root. Untuk melakukannya, gunakan perintah berikut:

ssh root@IP_ADDRESS -p PORT_NUMBER

tentu saja, Anda harus mengganti IP_ADDRESS dan PORT_NUMBER dengan alamat IP server Anda yang sebenarnya dan nomor port SSH.

Setelah masuk, pastikan server Anda mutakhir dengan menjalankan perintah berikut:

sudo apt update
sudo apt upgrade

2. Instal Server Web Apache2

Kami memilih untuk menggunakan salah satu server web paling populer di artikel kami. Kami akan menginstal Apache2 karena kami membutuhkan server web untuk menginstal sertifikat SSL Let's Encrypt gratis. Tidak ada gunanya memiliki sertifikat SSL tanpa halaman web apa pun. Cari tahu tentang beberapa alternatif Let's Encrypt gratis terbaik.

Jalankan perintah berikut untuk menginstal Apache2:

sudo apt install apache2

Setelah Apache2 diinstal di server Anda, Anda akan dapat menggunakan perintah di bawah ini untuk memulai, menghentikan, dan mengaktifkan layanan. Sebaiknya aktifkan agar Apache dapat memulai secara otomatis setiap kali server Anda di-boot ulang.

sudo systemctl stop apache2.service
sudo systemctl start apache2.service
sudo systemctl enable apache2.service

Untuk mengonfirmasi bahwa Anda telah menginstal Apache2 dengan benar, Anda dapat membuka browser web pilihan Anda dan mengetikkan alamat IP server atau domain Anda (kami berasumsi bahwa itu menunjuk ke server Anda) dan Anda seharusnya dapat melihat Halaman Default Apache2 Ubuntu.

3. Konfigurasikan Apache Virtual Host

Karena Anda sekarang telah menginstal Apache di server Anda, kami dapat melanjutkan dan menunjukkan cara membuat host virtual untuk domain yang ingin Anda gunakan. Kami akan menggunakan nano sebagai editor kami, tetapi jika Anda tidak menyukai nano, Anda dapat menggunakan editor pilihan Anda dan membuat file konfigurasi baru bernama domain.com.conf .

sudo nano /etc/apache2/sites-available/domain.com.conf

Kemudian rekatkan konfigurasi dari bawah ke dalam file, dan ganti semua kemunculan domain.com dengan nama domain Anda yang sebenarnya.

<VirtualHost *:80>

DocumentRoot /var/www/html/domain.com
ServerName domain.com
ServerAlias www.domain.com

<Directory /var/www/html/domain.com/>
Options FollowSymlinks
AllowOverride All
Require all granted
</Directory>

ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined

</VirtualHost>

Setelah Anda selesai mengedit file, simpan dan tutup.

Setelah Anda mengonfigurasi virtual host, Anda dapat mengaktifkannya dengan menjalankan perintah berikut.

Nonaktifkan host virtual default yang telah diinstal sebelumnya dengan:

sudo a2dissite 000-default

lalu, aktifkan domain.com tuan rumah virtual:

sudo a2ensite domain.com.conf

juga, Anda perlu memastikan bahwa mod rewrite diaktifkan:

sudo a2enmod rewrite

Mulai ulang Apache agar perubahan diterapkan.

sudo systemctl restart apache2.service

4. Instal Certbot

Seperti yang disebutkan sebelumnya, kami akan menggunakan Certbot sehingga kami bisa mendapatkan sertifikat SSL gratis dari Let's Encrypt. Untuk menginstal alat yang berguna ini, kita perlu mengaktifkan universe penyimpanan:

sudo apt install software-properties-common
sudo add-apt-repository universe
sudo apt update

Jalankan perintah ini pada baris perintah pada mesin untuk menginstal Certbot.

sudo apt install certbot python3-certbot-apache

5. Buat Sertifikat SSL Let's Encrypt Gratis

Ada banyak cara untuk mendapatkan sertifikat SSL dengan Certbot. Kami akan menggunakan plugin Apache, yang akan menangani konfigurasi ulang Host Virtual Apache dan akan memuat ulang konfigurasi baru untuk kami. Anda dapat menjalankan perintah berikut untuk menggunakan plugin:

sudo certbot --apache

Dengan menggunakan skrip ini, Anda perlu menjawab serangkaian pertanyaan dan memberikan alamat email. Pada langkah pertama, Anda perlu mengetikkan alamat email yang valid. Alamat email diperlukan untuk pemberitahuan dan pemberitahuan keamanan terkait sertifikat situs web Anda:

Output:
Saving debug log to /var/log/letsencrypt/letsencrypt.log
Plugins selected: Authenticator apache, Installer apache
Enter email address (used for urgent renewal and security notices) (Enter 'c' to
cancel): [email protected]

Langkah selanjutnya adalah mengonfirmasi bahwa Anda menyetujui persyaratan layanan Let's Encrypt. Jika Anda ingin mengonfirmasi, cukup ketik A lalu tekan [ENTER]:

Output:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Please read the Terms of Service at
https://letsencrypt.org/documents/LE-SA-v1.2-November-15-2017.pdf. You must
agree in order to register with the ACME server at
https://acme-v02.api.letsencrypt.org/directory
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
(A)gree/(C)ancel: A

Jika Anda ingin membagikan alamat email yang diberikan kepada EFF (Electronic Frontier Foundation) untuk menerima berita dan informasi lainnya, Anda dapat mengetik Y. Jika Anda tidak ingin menerima email jenis ini, Anda dapat mengetik N dan mengirimkan jawaban Anda dengan mengetik [ENTER].

Output:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Would you be willing to share your email address with the Electronic Frontier
Foundation, a founding partner of the Let's Encrypt project and the non-profit
organization that develops Certbot? We'd like to send you email about our work
encrypting the web, EFF news, campaigns, and ways to support digital freedom.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
(Y)es/(N)o: N

Sekarang Anda harus memilih domain yang ingin Anda aktifkan HTTPSnya. Domain dan subdomain yang terdaftar pada prompt perintah Anda secara otomatis diperoleh dari konfigurasi host virtual Apache Anda. Ketikkan angka yang dipisahkan dengan koma dan/atau spasi, atau jika Anda ingin mengaktifkan HTTPS untuk semua domain atau subdomain, Anda dapat mengosongkan prompt. Either way, Anda kemudian tekan [ENTER] untuk melanjutkan ke langkah berikutnya.

Output:
Which names would you like to activate HTTPS for?
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1: domain.com
2: www.domain.com
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Select the appropriate numbers separated by commas and/or spaces, or leave input
blank to select all options shown (Enter 'c' to cancel):

Outputnya akan seperti ini:

Output:
Obtaining a new certificate
Performing the following challenges:
http-01 challenge for domain.com
http-01 challenge for www.domain.com
Waiting for verification...
Cleaning up challenges
Created an SSL vhost at /etc/apache2/sites-available/domain.com-le-ssl.conf
Deploying Certificate to VirtualHost /etc/apache2/sites-available/domain.com-le-ssl.conf
Enabling available site: /etc/apache2/sites-available/domain.com-le-ssl.conf

Certbot menyediakan pengalihan HTTPS sebagai opsi yang dapat Anda aktifkan. Pada langkah ini, skrip akan meminta Anda untuk memilih apakah Anda ingin seluruh lalu lintas HTTP dialihkan ke HTTPS atau mempertahankan konfigurasi saat ini. Pilih 1 jika Anda tidak ingin pengalihan atau 2 untuk mengaktifkan pengalihan, lalu tekan [ENTER].

Output:
Please choose whether or not to redirect HTTP traffic to HTTPS, removing HTTP access.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1: No redirect - Make no further changes to the webserver configuration.
2: Redirect - Make all requests redirect to secure HTTPS access. Choose this for
new sites, or if you're confident your site works on HTTPS. You can undo this
change by editing your web server's configuration.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Select the appropriate number [1-2] then [enter] (press 'c' to cancel): 2

Kerja bagus. Sertifikat SSL Anda sekarang diinstal dan dimuat dalam konfigurasi Apache. Anda akan melihat output seperti berikut:

Output:
Redirecting vhost in /etc/apache2/sites-enabled/domain.com.conf to ssl vhost in /etc/apache2/sites-available/domain.com-le-ssl.conf
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Congratulations! You have successfully enabled https://domain.com

You should test your configuration at:
https://www.ssllabs.com/ssltest/analyze.html?d=domain.com
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

IMPORTANT NOTES:
- Congratulations! Your certificate and chain have been saved at:
/etc/letsencrypt/live/domain.com/fullchain.pem
Your key file has been saved at:
/etc/letsencrypt/live/domain.com/privkey.pem
Your cert will expire on 2021-09-09. To obtain a new or tweaked
version of this certificate in the future, simply run certbot again
with the "certonly" option. To non-interactively renew *all* of
your certificates, run "certbot renew"
- Your account credentials have been saved in your Certbot
configuration directory at /etc/letsencrypt. You should make a
secure backup of this folder now. This configuration directory will
also contain certificates and private keys obtained by Certbot so
making regular backups of this folder is ideal.
- If you like Certbot, please consider supporting our work by:

Donating to ISRG / Let's Encrypt: https://letsencrypt.org/donate
Donating to EFF: https://eff.org/donate-le

Untuk memverifikasi bahwa sertifikat SSL baru Anda telah disiapkan dengan benar, kunjungi https://domain.com/ di browser web Anda dan periksa ikon kunci hijau di bilah URL. Anda juga dapat menggunakan situs web atau alat eksternal untuk memeriksa apakah sertifikat SSL Anda terpasang dengan benar.

6. Memverifikasi Pembaruan Otomatis Certbot

Sertifikat SSL yang disediakan oleh Let's Encrypt hanya berlaku selama 90 hari. Certbot yang telah kami instal akan mengatur cronjob yang akan mengurus pembaruan sertifikat SSL apa pun yang dalam waktu tiga puluh hari setelah kedaluwarsa. Untuk memeriksa status layanan ini, Anda dapat menjalankan perintah:

sudo systemctl status certbot.timer
Output:
● certbot.timer - Run certbot twice daily
Loaded: loaded (/lib/systemd/system/certbot.timer; enabled; vendor preset: enabled)
Active: active (waiting) since Thu 2021-06-11 11:33:00 UTC; 1h 37min ago
Trigger: Thu 2021-06-11 15:52:01 UTC; 2h 41min left
Triggers: ● certbot.service

atau Anda dapat mencantumkan semua pengatur waktu dengan:

sudo systemctl list-timers

Anda dapat menguji perpanjangan otomatis untuk sertifikat Anda dengan menjalankan perintah ini:

sudo certbot renew --dry-run

dan perintah untuk memperbarui sertifikat SSL dapat ditemukan di salah satu lokasi berikut:

/etc/crontab/
/etc/cron.*/*

Selamat! Anda telah berhasil memasang sertifikat SSL Let's Encrypt gratis untuk domain Anda.

Pada artikel ini, kami menunjukkan kepada Anda cara menginstal server web Apache2 dan Certbot, serta cara membuat Apache Virtual Host, dan tentu saja, menginstal sertifikat SSL untuk domain Anda. Situs web Anda sekarang seharusnya aman dan diperbarui secara otomatis agar tetap seperti itu.

Tentu saja, jika Anda adalah salah satu pelanggan Hosting Ubuntu Terkelola kami, Anda tidak perlu menginstal sertifikat SSL Let's Encrypt untuk domain Anda sendiri – cukup tanyakan kepada admin kami, duduk, dan bersantai. Admin kami akan segera menginstal sertifikat Let's Encrypt SSL di Ubuntu 20.04 VPS Anda, bersama dengan banyak pengoptimalan berguna yang dapat kami lakukan untuk Anda.

Jika Anda menyukai posting ini tentang cara menginstal Let's Encrypt di Ubuntu 20.04 dengan Apache, silakan bagikan dengan teman-teman Anda di jejaring sosial menggunakan tombol bagikan di bawah ini, atau cukup tinggalkan komentar di bagian komentar. Terima kasih.


Panels
  1. Cara menginstal Elgg dengan Nginx di Ubuntu 14.04

  2. Cara Menginstal Let's Encrypt SSL di Ubuntu 18.04 dengan Nginx

  3. Cara Menginstal Joomla dengan Nginx di Ubuntu 18.04

  1. Cara Menginstal Apache di Ubuntu 18.04

  2. Cara menginstal Apache di Ubuntu 20.04

  3. Cara Menginstal Joomla dengan Apache di Ubuntu 18.04

  1. Cara Menginstal PrestaShop di Ubuntu 20.04 dengan Apache

  2. Cara Menginstal SonarQube dengan Lets Encrypt di Ubuntu 20.04

  3. Cara Menginstal NextCloud di Ubuntu 20.04 dengan Apache