Web Server adalah server yang menyediakan layanan konten website pada Jaringan Internet, saat Web Server menerima permintaan maka Web Server akan mengirimkannya pada yang meminta lewat Jaringan Publik atau Internet, konten yang dikirim lewat jaringan tentunya dapat terlihat oleh Orang lain atau mata-mata, karena melewati jaringan publik, untuk itu kita perlu mengamankan konten yang dikirim agar tidak dapat dilihat oleh orang.
Apache2 memiliki fitur HTTPS atau HTTP SSL/TLS, adalah protokol HTTP yang dilengkapi dengan Enkripsi menggunakan protocol SSL/TLS, dengan ini ketika Web Server dan Client bertukar informasi, maka Informasinya akan di enkripsi atau isinya dikunci dengan cara diubah menjadi tulisan aneh yang tidak dapat dibaca oleh manusia, sehingga ketika dikirim lewat Jaringan Internet tidak dapat dibaca oleh orang lain.
Dengan menggunakan HTTPS maka Server harus memiliki Sertifikat CA (Certificate Authority) yang isinya adalah informasi dari Server, fungsinya agar server dapat melakukan Enkripsi data, didalam CA terdapat Public Key atau kunci untuk mengenkripsi data, kemudian data yang dienkripsi tersebut hanya bisa dibaca oleh Client yang memiliki Private Key.
Pada kali ini saya akan memposting cara membuat server HTTPS dengan Apache2, nama domain Server adalah www.server1.xyz, kemudian Sertifikat CA yang akan dibuat menggunakan tanda tangan sendiri (Self-signed), sehingga mungkin browser Client tidak akan mempercayainya.
Kita buat domain pada DNS Server lokal, yaitu www.server1.xyz. Anda bisa melihat cara konfigurasi DNS Server pada posting blog saya yang ini atau cari di google.
Install paket aplikasi yang dibutuhkan yaitu apache2 dan openssl untuk membuat setifikat CA dan Key.
Kita buat folder untuk meletakan CA, Public Key, dan Private Key untuk Web Server.
Kemudian kita buat CA Public key dan Private Key dengan perintah dibawah ini.
Ubah Chmod agar kedua file sertifikat dan key hanya bisa diakses oleh root saja.
Aktifkan modul SSL apache2
Kita buat file konfigurasi untuk HTTPS Server yang akan kita buat.
Kemudian aktifkan situs tersebut dengan perintah dibawah ini.
Kita buat folder dan file index.html untuk isi konten dari Web Server ini.
Kemudian reload konfigurasi apache2.
Kita lakukan pengujian pada Client dengan membuka situs https://www.server1.xyz pada Browser, maka akan muncul seperti ini.
Kenapa bisa seperti ini, karena sertifikat CA yang kita buat tadi merupakan tanda tangan sendiri dan belum masuk dalam daftar sertifikat yang dipercaya oleh browser.
Klik Advance dan proceed to www.server1.xyz untuk lanjut membuka isi dari Web Server ini.
Dan inilah sertifikan yang telah kita buat sebelumnya.
Apache2 memiliki fitur HTTPS atau HTTP SSL/TLS, adalah protokol HTTP yang dilengkapi dengan Enkripsi menggunakan protocol SSL/TLS, dengan ini ketika Web Server dan Client bertukar informasi, maka Informasinya akan di enkripsi atau isinya dikunci dengan cara diubah menjadi tulisan aneh yang tidak dapat dibaca oleh manusia, sehingga ketika dikirim lewat Jaringan Internet tidak dapat dibaca oleh orang lain.
Dengan menggunakan HTTPS maka Server harus memiliki Sertifikat CA (Certificate Authority) yang isinya adalah informasi dari Server, fungsinya agar server dapat melakukan Enkripsi data, didalam CA terdapat Public Key atau kunci untuk mengenkripsi data, kemudian data yang dienkripsi tersebut hanya bisa dibaca oleh Client yang memiliki Private Key.
Pada kali ini saya akan memposting cara membuat server HTTPS dengan Apache2, nama domain Server adalah www.server1.xyz, kemudian Sertifikat CA yang akan dibuat menggunakan tanda tangan sendiri (Self-signed), sehingga mungkin browser Client tidak akan mempercayainya.
- Pertama konfigurasi IP Address pada Server, file konfigurasi ada di /etc/network/interfaces
root@secure-webserver:~# nano /etc/network/interfaces
auto eth0 iface eth0 inet static address 192.168.56.10 netmask 255.255.255.0 gateway 192.168.56.1 dns-nameservers 192.168.56.10
apt-get update apt-get install apache2 openssl
root@secure-webserver:~# mkdir /etc/ssl/apache root@secure-webserver:~# cd /etc/ssl/apache/
root@secure-webserver:/etc/ssl/apache# openssl req -x509 -nodes -days 365 -newkey rsa:2048 -out apache.crt -keyout apache.keyIsi data data berikut ini dengan data Server anda.
Generating a 2048 bit RSA private key ....................................................................................................+++ ...............+++ writing new private key to 'apache.key' ----- You are about to be asked to enter information that will be incorporated into your certificate request. What you are about to enter is what is called a Distinguished Name or a DN. There are quite a few fields but you can leave some blank For some fields there will be a default value, If you enter '.', the field will be left blank. ----- Country Name (2 letter code) [AU]:ID State or Province Name (full name) [Some-State]:Jawa Barat Locality Name (eg, city) []:Bekasi Organization Name (eg, company) [Internet Widgits Pty Ltd]:SMK Organizational Unit Name (eg, section) []:TKJ Common Name (e.g. server FQDN or YOUR name) []:www.server1.xyz Email Address []:fathin@server1.xyz
root@secure-webserver:/etc/ssl/apache# chmod 600 *
a2enmod ssl
root@secure-webserver:/etc/apache2/sites-available# cp default-ssl www_secureBuka file tersebut untuk mengeditnya.
root@secure-webserver:/etc/apache2/sites-available# nano www_secureTambahkan tulisan ini untuk mengatur URL Situs Web HTTPS yang akan dibuat.
<IfModule mod_ssl.c> <VirtualHost _default_:443> ServerAdmin webmaster@localhost ServerName www.server1.xyz DocumentRoot /var/www/server1Kemudian tulisan ini untuk file dan folder dimana file sertifikat tersebut berada.
SSLCertificateFile /etc/ssl/apache/apache.crt SSLCertificateKeyFile /etc/ssl/apache/apache.keySimpan file tersebut.
root@secure-webserver:/etc/apache2/sites-available# a2ensite www_secure
mkdir /var/www/server1 cd /var/www/server1Buat file index.html dan isi dengan beberapa tag HTML.
nano index.html
<H1>SECURE WEBSITES, WWW.SERVER1.XYZ</H1>
service apache2 reload
Komentar
Posting Komentar