Mencegah website diakses melalui IP
Generate certificate dummy dulu, ini berfungsi untuk menyembunyikan nama domain jika kita menggunakan hostname FQDN
openssl req -x509 -nodes -days 3650 \
-newkey rsa:2048 \
-keyout /etc/ssl/private/default.key \
-out /etc/ssl/certs/default.crt \
-subj "/CN=localhost"
Buat virtualhost default dengan nama diawali 000 agar di eksekusi lebih dulu
Buat file 000-default.conf:
nano 000-default.conf
Isikan seperti berikut:
<VirtualHost *:80>
ServerName _default_
Redirect 404 /
ErrorLog ${APACHE_LOG_DIR}/default_error.log
CustomLog ${APACHE_LOG_DIR}/default_access.log combined
</VirtualHost>
Buat file 000-default-ssl.conf:
nano 000-default-ssl.conf
Isikan seperti berikut:
<VirtualHost *:443>
ServerName _default_
SSLEngine on
SSLCertificateFile /etc/ssl/certs/default.crt
SSLCertificateKeyFile /etc/ssl/private/default.key
Redirect 404 /
ErrorLog ${APACHE_LOG_DIR}/ssl_default_error.log
CustomLog ${APACHE_LOG_DIR}/ssl_default_access.log combined
</VirtualHost>
Path certificate disesuaikan dengan certificate dummy yang kita buat di awal tadi.
Aktifkan virtualhost:
a2ensite 000-default.conf
a2ensite 000-default-ssl.conf
Reload dan restart Apache:
sudo systemctl reload apache2
sudo systemctl restart apache2
Menyembunyikan Versi Apache
Salin file konfigurasi original
sudo cp /etc/apache2/apache2.conf /etc/apache2/apache2.conf.bak
Edit file konfigurasi Apache
sudo nano /etc/apache2/apache2.conf
Tambahkan baris berikut di paling bawah
# KONFIGURASI TAMBAHAN
ServerSignature Off
Restart Apache:
sudo systemctl restart apache2