Virtual Private Server Sebagai Proxy Server dan Web Server
Pembahasan kali ini merupakan pengaplikasian konfigurasi jaringan komputer yang menggunakan sebuah virtual OS sebagai server yang memiliki 2 network line. Target pratikum adalah membuat Proxy Server dan Webserver (http dan https). Modul pratikum yang digunakan adalah Virtual Server dengan OS Debian 6 dan router MikroTik RouterBoard 1100.
Skema Jaringan
Skema jaringan yang diterapkan
Persiapan
Assign IP Server
Untuk men-assign static IP address untuk eth0 dan eth1 edit file pada /etc/network/interfaces. Sesuai skema eth0 akan di-assign IP 10.252.108.85 sedangkan eth1 akan di-assign IP 192.168.1.85. eth0 di-assign dengan tujuan sebagai remote address untuk SSH dan penghubungan dengan debian mirror kebo sedangkan eth1 menggunakan gateway untuk mengkaitkan server ke node router 192.168.1.x. Berikut hasil konfigurasi file interfaces:
Setelah di-set, restart service networking.
Untuk tetap terkoneksi dengan debian mirror kebo, set nameserver /etc/resolv.conf ke DNS IPv6 PENS yaitu 2001:df0:a8:85::3 dan 2001:df0:a8:85::4. Berikut hasil konfigurasi file resolv.conf:
Ketika server dapat menghubungi server debian mirror kebo sehingga dapat meng-update atau menginstal paket yang dibutuhkan, maka assign ip server berhasil dikonfigurasi.
Menginstal ssh server
Untuk mempermudah akses ke server, install ssh server dengan perintah
apt-get install ssh
Berikut hasil instalasi:
Untuk melakukan remote ssh, lakukan dengan perintah #ssh ip_address_server, contohnya
ssh 10.252.108.85
Ketika server dapat di-remote ssh, maka instalasi ssh server berhasil dikonfigurasi.
Mengkonfigurasi Webserver Server
Pada kesempatan ini, target webserver ini adalah webserver yang dilengkapi fitur ssl. Hal yang pelu dilakukan pertama adalah menginstal apache2 dan openssl. Menginstal dapat menggunakan perintah #apt-get install apache2 openssl.
Kemudian untuk membuat web dengan koneksi ssl maka diperlukan sebuah sertifikat ssl. Untuk membuatnya gunakan openssl untuk membuat self-signed ssl certificate. Berikut hasil pembuatan sertifikat ssl:
Membuat rsa key:
Membuat certificate identity:
Untuk membuat localhost memakai ssl certificate maka edit file /etc/apache2/sites-available/default-ssl. Pastikan bahwa SSLEngine On dan ubah SSLCertificateFile dan SSLCertificateKeyFile ke sertifikat dan key yang telah dibuat sebelumnya. Berikut hasil pengubahan SSLCertificateFile dan SSLCertificateKeyFile pada file default-ssl:
Hasil pengubahan SSLCertificateFile dan SSLCertificateKeyFile pada file default-ssl
Kemudian enable-kan modul ssl dengan perintah:
a2enmod ssl
Kemudian masukan default-ssl sebagai site yang di-enable-kan dengan perintah:
a2ensite default-ssl
Terakhir, restart services apache2 mengunakan:
/etc/init.d/apache2
Dan hasilnya:
http diakses
https diakses
Ketika kedua halaman tersebut dapat diakses, maka konfigurasi webserver dengan ssl berhasil dikonfigurasi.
Mengkonfigurasi Proxy Server
Konfigurasi selanjutnya adalah Proxy Server. Proxy software yang digunakan adalah squid. Untuk memulai konfigurasi Proxy server, install paket squid dengan perintah #apt-get install squid. Setelah itu, untuk membuat squid secara otomatis mendeteksi sistem hostname server maka set visible_hostname pada /etc/squid/squid.conf. Tujuan menambahkan hostname pada visible_hostname adalah membantu squid untuk memberikan direksi pada squid kemana squid harus memberikan error message, dan lain sebagainya. Berikut hasil pengisian hostname pada /etc/squid/squid.conf:
Kemudian jalankan perintah #squid –z. Perintah tersebut digunakan untuk membangun atau rebuild direktori cache dan swap directories untuk squid. Berikut hasil eksekusi perintah #squid –z:
Kemudian tambahkan ACL (Access Control List) sesuai dengan aturan yang sudah ditentukan, dimana segmen 10.252.108.x tidak dapat mengakses internet, segmen 192.168.1.x dan 192.168.24.x dapat mengakses internet dengan autentifikasi user, dan sisanya tidak dapat mengakses internet. Berikut hasil pembuatan ACL pada /etc/squid/squid.conf:
Setelah itu restart service squid untuk menerapkan hasil konfigurasi pada /etc/squid/squid.conf.
Kemudian buat user auth list dengan perintah #htpasswd -c /etc/squid/password nama_user. Berikut contoh pembuatan user autentifikasi untuk squid:
Dan hasilnya
Browser yang sudah diset proxy-nya akan mngeluarkan autentifikasi seperti gambar diatas
Ketika proxy dapat berjalan pada jaringan lokal yang diuji, dan pada jaringan yang diblok tidak dapat mengakses interner, maka squid proxy server sudah dapat dikonfigurasi dengan benar. Kerja proxy juga dapat dicek pada /var/log/squid/access.log. Berikut gambar hasil akses proxy:
Hasil akses proxy klien pada /var/log/squid/access.log
Mengkonfigurasi DNS server
Untuk mengatur aliasing nama ip dan name resolution diperlukan sebuah DNS server. DNS server yang diinstal adalah BIND. Untuk menginstal DNS server, jalankan perintah #apt-get install bind9. Kemudian file /etc/resolv.conf perlu dikonfigurasi untuk menseting komputer yang digunakan sebagai DNS server, maka option nameserver diisi dengan nomor IP address komputer tersebut. DNS server ang akan diseting berdomain kecut.com. Berikut hasil seting file /etc/resolv.conf:
Setelah itu copy template database ke /var/cache/bind gunakan perintah #cp /etc/bind/db.local /var/cache/bind/kecut.com.db dan #cp /etc/bind/db.255 /var/cache/bind/kecut.com.rev. meng-copy selesai, edit database file menggunakan perintah #nano /var/cache/bind/kecut.com.db. Berikut hasil edit dari file database:
Edit juga file reverse menggunakan perintah #nano /var/cache/bind/kecut.com.rev. Berikut hasil edit dari file reverse:
kemudian edit file konfigurasi named.conf.local dengan perintah #nano /etc/bind/named.conf.local arahkan database dan reverse file ke file yang sudah dibuat di /var/cache/bind. Juga tambahkan allow-update untuk dhcp sehingga server DHCP dapat secara dinamis memperbarui catatan DNS record yang dibuat. Berikut hasilnya:
Juga edit file konfigurasi named.conf.option dengan perintah #nano /etc/bind/named.conf.option arah dns forwarder ke 180.131.144.144 dan 180.131.145.145.
Terakhir, restart services bind menggunakan perintah #/etc/init.d/bind9 restart.
Hasil set up DNS dapat dicheck menggunakan dig
nslookup ke www.kecut.com dan nslookup ke ip 192.168.1.85
Ketika nslookup mengembalikan return nilai sesuai dengan setting yang dilakukan sebelumnya, maka dns server sudah dapat dikonfigurasi dengan benar.
Mengkonfigurasi Router
Router yang digunakan adalah router MikroTik RouterBoard 1100. Pada router ini akan digunakan sebagai nat router. Tersedia 13 ethernet. eth1 digunakan sebagai penyambung ke jaringan 192.168.1.x, selanjutnya eth2-eht12 digunakan untuk klien (eth13 untuk pxe boot console). Berikut konfigurasi yang dilakukan:
Pertama assign ip 192.168.1.233 ke eth1, dapat dilakukan menjadi static 1 dengan perintah ip address add address=192.168.1.233 atau dengan mengassignnya sebagai dhcp client jaringan 192.168.1.x.
Kemudian, tambahakan ip static juga ke eth2, dengan alamat 192.168.24.1/24.
Setelah itu tambahkan route gateway address 192.168.1.1.
Langkah selanjutnya set dns router ke dns yang telah dibuat sebelumnya yaitu 192.168.1.85 dan beri kemampuan untuk mengijikan remote request.
Untuk memudahkan pengalamatan ip ke klien buat dhcp server pada mikrotik.
Terakhir buat scr nat dengan masquerade pada eth1
Uji Coba dan Hasil
Berikut hasil uji coba
Uji DHCP mikrotik untuk klien
Uji DNS server
Karena allow-update untuk dhcp diijikan sehingga server DHCP dapat secara dinamis memperbarui catatan DNS record pada /etc/resolv.conf pada klien
Uji webserver dan dns pada browser
Coba buka web
Konfigurasi proxy pada client
Browser yang sudah diset proxy-nya akan mngeluarkan autentifikasi seperti gambar diatas.