Cara Menginstal dan Mengkonfigurasi Apache di CentOS/RHEL 8
- 2250
- 269
- Karl O'Connell DDS
Centos 8 adalah rilis terbaru dari Sistem Operasi Centos Linux, yang didasarkan pada Red Hat Enterprise Linux 8. Dalam tutorial ini, kami akan membantu Anda menginstal Server Web Apache pada sistem Centos 8 atau RHEL 8 dengan konfigurasi dan keamanan tambahan.
Prerequsities
- Akses SSH ke Sistem CentOS/RHEL 8
- Hak istimewa sudo kepada pengguna untuk menginstal paket
Langkah 1 - Instal Apache di Centos 8
Pertama -tama, login ke sistem CentOS 8 atau RHEL 8 Anda melalui SSH. Kemudian instal Paket Server APACHE2 HTTP menggunakan perintah berikut. Ini juga akan memasang paket tambahan yang diperlukan pada sistem Anda.
sudo dnf menginstal httpd
Tunggu instalasi selesai
Langkah 2 - Kelola Layanan Apache
Layanan Apache dikelola dengan baris perintah SystemCTL di CentOS/RHEL 8. Setelah instalasi, gunakan perintah berikut untuk mengaktifkan layanan Apache dan kemudian mulai.
sudo systemctl mengaktifkan httpd.Layanan Sudo Systemctl Mulai httpd.melayani
Berikut adalah perintah lain untuk berhenti dan restart layanan Apache melalui baris perintah.
Sudo Systemctl Stop Apache2.Layanan Sudo Systemctl Restart Apache2.melayani
Langkah 3 - Uji Pengaturan Apache
Anda dapat melihat detail versi Apache yang diinstal menggunakan perintah berikut.
Versi server httpd -v: Apache/2.4.37 (Centos) Server Dibangun: 7 Okt 2019 21:42:02
Buat halaman HTML tes di bawah Dokumen Root Dokumen Default (/var/www/html).
sudo echo "halo tecadmin.net ">/var/www/html/index.html
Sekarang akses server Apache Anda menggunakan alamat IP server atau domain yang menunjuk ke IP server.
Langkah 4 - Membuat VirtualHost
Mari kita buat host virtual pertama di server Apache Anda. Untuk tutorial, kami menggunakan domain sampel “Contoh.com ". Di sini kami akan membuat host virtual misalnya.com di port 80.
Buat file indeks sampel di direktori:
sudo mkdir -p/var/www/contoh.com echo "Contoh halo.com "| sudo tee/var/www/contoh.com/index.html
Kemudian buat file konfigurasi virtualhost dan edit di editor:
sudo vim/etc/httpd/conf.D/Contoh.com.conf
Tambahkan konten berikut di akhir file konfigurasi. Anda dapat mengubah nama domain sesuai domain Anda.
Serveradmin [email protected] Documentroot/var/www/contoh.COM SERVERNAME CONTOH.com ServeralIas www.contoh.com #allowoverride semua ### uncomment jika diperlukan log kesalahan/contoh.com_error.Log Log CustomLog/Contoh.com_access.log digabungkan12345678910111213 |
Simpan file konfigurasi VirtualHost dan muat ulang layanan Apache menggunakan perintah berikut:
Sudo Systemctl Reload httpd.melayani
Langkah 5 - Mengkonfigurasi SSL VirtualHost
Anda dapat melewatkan langkah ini jika Anda tidak memerlukan SSL. Tetapi keamanan selalu menjadi perhatian utama untuk situs web mana pun. Untuk menggunakan SSL dengan Apache, instal paket MOD_SSL di sistem Anda.
sudo dnf instal mod_ssl
Untuk tutorial, saya telah mengikuti instruksi ini untuk menghasilkan sertifikat SSL yang ditandatangani sendiri untuk domain kami.
Anda bisa menggunakan /etc/httpd/conf/ssl.conf Untuk SSL Virtual Host atau Anda dapat menggunakan file konfigurasi host virtual yang terpisah untuk domain Anda. Misalnya:
sudo vim/etc/httpd/conf.D/Contoh.com_ssl.conf
dengan konten berikut:
Serveradmin [email protected] Documentroot/var/www/contoh.COM SERVERNAME CONTOH.com ServeralIas www.contoh.com #allowoverride all ### uncomment jika diperlukan sslengine di sslcertificateFile/etc/pki/tls/cerc/contoh.com.crt sslcertificateKeyFile/etc/pki/tls/certs/contoh.com.Log/contoh errorlog kunci.com_ssl-error.Log Log CustomLog/Contoh.com_ssl-access.log digabungkan123456789101112131415161718 |
Berikut adalah tiga istilah yang digunakan untuk mengonfigurasi SSL VirtualHost:
- Sslengine - Atur ini ke "On"
- SslcertificateFile - Atur jalur sertifikat SSL Anda
- SslcertificateKeyFile - Ini adalah file kunci pribadi yang digunakan untuk menghasilkan sertifikat SSL
Setelah itu mengaktifkan VirtualHost dan Muat Ulang Layanan Apache Menggunakan Perintah berikut:
Sudo Systemctl Reload Apache2.melayani
Langkah 6 - Secure Apache Server
Keamanan adalah bagian terpenting dari hosting. Peretas siap mengeksploitasi server web Anda. Edit file konfigurasi utama Apache
sudo vim/etc/httpd/conf/httpd.conf
Tambahkan nilai -nilai berikut di akhir file:
Servertokens Prod ServerSignature off123 | Servertokens Prod ServerSignature off |
Setelah itu mengedit file konfigurasi SSL default Apache:
sudo vim/etc/httpd/conf.D/SSL.conf
Berikut adalah beberapa pengaturan terkait keamanan. Tambahkan atau perbarui pengaturan berikut. Kami tidak akan melakukan deskripsi terperinci tentang hal itu tetapi pengaturan ini sangat berguna untuk server produksi.
#Rules diambil dari https: // cipherli.ST/ SSLCIPHERSUITE EECDH+AESGCM: EDH+AESGCM # membutuhkan Apache 2.4.36 & openssl 1.1.1 sslprotocol -all +tlsv1.3 +TLSV1.2 Kurva SSLOPENSSLCONFCMD X25519: SECP521R1: SECP384R1: PRIME256V1 # VERSI LAMA # SSLPROTOCOL ALL -SSLV2 -SSLV3 -TLSV1 -TLSV1.1 sslhonorcipherorder di header selalu menetapkan ketegangan-transport-keamanan "Max-AGE = 63072000; termasuk domain; header preload" selalu mengatur x-frame-options yang ditolak header selalu mengatur x-konten-opsi-opsi nosniff # membutuhkan apache> = 2.4 SSLKompresi OFF SSLUSESTAPLING ON SSLSTAPLINGCACHE "SHMCB: LOGS/Stapling-Cache (150000)" # membutuhkan Apache> = 2.4.11 SSLSESSIONTICKETS OFF123456789101112131415161718 | #Rules diambil dari https: // cipherli.ST/ SSLCIPHERSUITE EECDH+AESGCM: EDH+AESGCM# membutuhkan Apache 2.4.36 & openssl 1.1.1SSLPROTOCOL -ALL +TLSV1.3 +TLSV1.2sslopensslconfcmd kurva x25519: secp521r1: secp384r1: prime256v1# versi lama# sslprotocol all -sslv2 -sslv3 -tlsv1 -tlsv1.1sslhonorcipherorder onheader selalu menetapkan ketegangan-transport-keamanan "Max-AGE = 63072000; termasuk domain; preload" header selalu mengatur x-frame-options penolak yang selalu mengatur x-konten-opsi-opsi nosniff# membutuhkan apache> = 2.4SSLKompresi offsslusestapling Onsslstaplingcache "SHMCB: Log/Stapling-Cache (150000)"# membutuhkan Apache> = 2.4.11SSLSESSIONTICKETS OFF |
Setelah melakukan perubahan restart layanan Apache untuk menerapkan konfigurasi baru.
Sudo Systemctl Reload Apache2.melayani
Kesimpulan
Semua selesai, Anda menjalankan server Apache yang diamankan pada sistem Linux CentOS 8 atau RHEL 8 Anda.
- « Cara menginstal apache dengan php-fpm di ubuntu 18.04 lts
- Cara membunuh proses berjalan di port tertentu »