GNU/Linux >> Belajar Linux >  >> Linux

Cara Instal Apache 2 dengan SSL di Linux (dengan mod_ssl, openssl)

Artikel ini memberikan petunjuk langkah demi langkah tentang cara menginstal Apache 2 dengan mod_ssl.

Saya lebih suka menginstal Apache dari sumber, karena memberi saya lebih banyak fleksibilitas pada modul apa yang ingin saya aktifkan atau nonaktifkan, dan saya juga dapat meningkatkan atau menerapkan patch segera setelah dirilis oleh Apache foundation.

1. Unduh Apache

Unduh Apache dari httpd.apache.org. Rilis stabil saat ini adalah 2.2.17.

Setelah Anda mendapatkan URL langsung untuk mengunduh Apache versi stabil terbaru, gunakan wget seperti yang ditunjukkan di bawah ini untuk mengunduhnya langsung ke server Anda.

cd ~
wget http://www.eng.lsu.edu/mirrors/apache//httpd/httpd-2.2.17.tar.gz
tar xvfz httpd-2.2.17.tar.gz

2. Instal Apache dengan SSL/TLS

Lihat semua opsi instalasi dan konfigurasi Apache yang tersedia seperti yang ditunjukkan di bawah ini.

cd httpd-2.2.17
./configure --help

Untuk menginstal modul Apache, Anda biasanya akan mengatakan –enable-{module-name}. Misalnya, untuk menginstal SSL dengan Apache, itu adalah –enable-ssl. Untuk menginstal modul ldap adalah –enable-ldap.

Untuk menghapus modul default apa pun yang disertakan dengan Apache, Anda biasanya akan mengatakan –disable-{module-name}. Misalnya, untuk menonaktifkan otentikasi dasar di Apache, itu adalah –disable-auth-basic

Dalam contoh ini, kita akan menginstal Apache dengan semua modul default, dengan tambahan –enable-ssl (untuk menginstal mod_ssl untuk dukungan SSL), dan –enable-so, yang membantu memuat modul di Apache selama run-time melalui Dynamic Shared Mekanisme objek (DSO), daripada membutuhkan kompilasi ulang.

./configure --enable-ssl --enable-so
make
make install

Catatan :Secara default di atas menginstal Apache di bawah /usr/local/Apache2. Jika Anda ingin mengubah lokasi ini, gunakan opsi –prefix di ./configure.

3. Aktifkan SSL di httpd.conf

File konfigurasi Apache httpd.conf terletak di bawah /usr/local/apache2/conf.

Batalkan komentar pada baris Sertakan httpd-ssl.conf di file /usr/local/Apache2/conf/httpd.conf.

# vi /usr/local/apache2/conf/httpd.conf
Include conf/extra/httpd-ssl.conf

Lihat httpd-ssl.conf untuk meninjau semua konfigurasi SSL default. Untuk sebagian besar kasus, Anda tidak perlu mengubah apa pun dalam file ini.

vi /usr/local/apache2/conf/extra/httpd-ssl.conf

Sertifikat dan kunci SSL diperlukan sebelum kita memulai Apache. File server.crt dan server.key yang disebutkan dalam httpd-ssl.conf perlu dibuat sebelum kita melanjutkan.

# egrep 'server.crt|server.key' httpd-ssl.conf
SSLCertificateFile "/usr/local/apache2/conf/server.crt"
SSLCertificateKeyFile "/usr/local/apache2/conf/server.key"

4. Buat file server.crt dan server.key

Pertama, Buat server.key menggunakan openssl.

cd ~
openssl genrsa -des3 -out server.key 1024

Perintah di atas akan meminta kata sandi. Pastikan untuk mengingat kata sandi ini. Anda memerlukan ini saat memulai Apache nanti.

Jika Anda tidak memberikan kata sandi, Anda akan mendapatkan pesan kesalahan berikut.

2415:error:28069065:lib(40):UI_set_result:result too small:ui_lib.c:849:You must type in 4 to 8191 characters

Selanjutnya, buat file permintaan sertifikat (server.csr) menggunakan file server.key di atas.

openssl req -new -key server.key -out server.csr

Terakhir, buat sertifikat ssl yang ditandatangani sendiri (server.crt) menggunakan file server.key dan server.csr di atas.

openssl x509 -req -days 365 -in server.csr -signkey server.key -out server.crt

Untuk detail lebih lanjut, lihat:Cara Membuat Kunci SSL, CSR, dan Sertifikat yang Ditandatangani Sendiri Untuk Apache

5. Salin server.key dan server.crt

Salin file server.key dan server.crt ke lokasi direktori konfigurasi Apache yang sesuai.

cd ~
cp server.key /usr/local/apache2/conf/
cp server.crt /usr/local/apache2/conf/

6. Mulai apache dan verifikasi SSL

Jalankan Apache seperti yang ditunjukkan di bawah ini.

/usr/local/apache2/bin/apachectl start

Ini akan meminta Anda untuk memasukkan kata sandi untuk kunci pribadi Anda.

Apache/2.2.17 mod_ssl/2.2.17 (Pass Phrase Dialog)
Some of your private key files are encrypted for security reasons.
In order to read them you have to provide the pass phrases.

Server www.example.com:443 (RSA)
Enter pass phrase:

OK: Pass Phrase Dialog successful.

Secara default Apache SSL berjalan pada port 443. Buka browser web dan verifikasi bahwa Anda dapat mengakses Apache Anda menggunakan https://{your-ip-address}


Linux
  1. Bagaimana Mengkompilasi dan Menginstal Python dengan Dukungan OpenSSL?

  2. Cara Menginstal Apache 2.4.2 dari Sumber di CentOS 6.2 dengan SSL

  3. Cara Install JBoss AS 7 dengan SSL di Linux (Aktifkan HTTPS SSL di JBoss)

  1. Cara menginstal mod_ssl di RHEL 8 / CentOS 8 dengan server web httpd Apache

  2. Cara Menginstal Let's Encrypt SSL dengan Apache di Debian 11

  3. Cara Menginstal Virtualisasi Server Linux

  1. Cara menginstal server web Apache di Linux

  2. Cara Instal Apache Web Server di Alpine Linux

  3. Cara Install Apache di Almalinux 8 / Rocky Linux 8