Konfigurasi Untuk Merubah Port Default Apache2 di Ubuntu

Menurut Wikipedia, sebuah port (dalam protokol jaringan TCP/IP ) adalah mekanisme yang mengizinkan sebuah komputer untuk mendukung beberapa sesi koneksi dengan komputer lainnya dan program di dalam jaringan. Port dapat mengidentifikasikan aplikasi dan layanan yang menggunakan koneksi di dalam jaringan TCP/IP. Sehingga, port juga mengidentifikasikan sebuah proses tertentu di mana sebuah server dapat memberikan sebuah layanan kepada klien atau bagaimana sebuah klien dapat mengakses sebuah layanan yang ada dalam server. Port dapat dikenali dengan angka 16-bit (dua byte) yang disebut dengan Port Number, karena memiliki angka 16-bit, maka total maksimum jumlah port untuk setiap protokol transport yang digunakan adalah 65536 buah.

Port bisa menjadi celah serius untuk keamanan sebuah layanan, untuk itu perlu adanya perubahan dari yang biasa menjadi tidak biasa. Seperti port pada web server, umunya web server menggunakan port 80 atau 8080, jika anda biarkan tetap seperti ini maka penyusup dapat dengan mudah untuk menentukan jalan masuk ke sistem web server Anda.

Bagaimana melakukan perubahan port default pada layanan web server, Apache2, berikut ulasannya:

Merubah Port Default di Apache2


Sebelum melanjutkan lebih jauh, pada bagian ini anda harus sudah melakukan instalasi Apache2 di mesin Ubuntu Anda, jika belum, anda dapat mengetikkan perintah berikut untuk menginstal Apache2:
sudo apt install apache2

Setelah instalasi Apache2 Anda selesai, anda dapat mengikuti petunjuk di tutorial ini untuk merubah default port yang ada.

Inti dari konfigurasi port pada Apache2 terletak pada file ports.conf yang terletak di direktori /etc/apache2/ dan 000-default.conf yang ada di /etc/apache2/sites-available/, sebelum anda melakukan konfigurasi, silahkan backup file ports.conf agar bila suatu saat terjadi error pada konfigurasi, anda dapat mengembalikannya dengan mudah.
sudo cp /etc/apache2/ports.conf /etc/apache2/ports.conf.old

Setelah terbackup, selanjutnya konfigurasikan file ports.conf dan rubahlah angka port (antara 1 sampai 65536) pada baris Listen, disini saya menggunakan 8751 sebagai port yang digunakan oleh apache2.
sudo nano /etc/apache2/ports.conf



Simpan konfigurasi dengan Ctrl X, Y, Enter. Setelah tersimpan, lanjutkan konfigurasi port yang ada pada VirtualHost dengan perintah:
sudo nano /etc/apache2/sites-available/000-default.conf



Gambar diatas adalah isi dari file konfigurasi default site milik apache2, silahkan sesuaikan seperti tanda pada gambar diatas. Sebagai keterangan, tanda kotak merah yang pertama digunakan untuk melakukan konfigurasi port yang digunakan untuk mengakses projek web anda. Yang kedua adalah ServerName yang berisi alamat IP yang digunakan untuk mengakses projek. Setelah selesai, simpan konfigurasi anda dan lakukan restart pada apache 2 dengan perintah berikut:
sudo service apache2 restart

Setelah proses restart berhasil, silahkan akses projek web anda dengan mengetikkan alamat IP yang telah anda konfigurasikan dengan diikuti alamat port baru, sehingga menjadi 192.168.1.1:8751



Gambar diatas adalah hasil yang terlihat setelah melakukan perubahan port pada Apache2, lalu apa yang terjadi ketika anda mengaksesnya tanpa port, berikut ini hasilnya:



Setelah anda merubah konfigurasi port pada suatu layanan, maka saat ingin mengakses layanan tersebut, anda harus turut menyertakan alamat port-nya, ini dikarenakan layanan hanya berjalan otomatis (tanpa menyertakan port) pada port defaultnya saja.

Anda selaku administrator jaringan tentu dengan mudah dapat mengakses projek anda sendiri, lalu bagaimana cara agar orang lain dapat mengakses projek anda jika orang tersebut tidak mengetahui port berapa yang anda set untuk projek web server anda? Jawabannya adalah anda harus melakukan redirect atau mengarahkan port default apache2, 80, ke port yang telah anda konfigurasikan dengan konfigurasi firewall.

Redirect Port 80 ke Port 8751


Tujuan utama redirect sama seperti pengalihan arus pada lalu lintas, yaitu mengalihkan request yang masuk ke server melalui suatu port (80) ke port yang lain (8751). Analoginya seperti Anda berkendara di Jalan A menuju Kota Z namun ditengah jalan terdapat Plakat Pengalihan Jalur atau arus kendaraan dan Polisi yang mengarahkan untuk melewati Jalan U, sehingga Anda menuju Kota Z melalui Jalan U. Jika analogi tersebut diterjemahkan ke pembahasan ini, maka :

  • Kendaraan yang anda tumpangi adalah permintaan yang masuk ke server.

  • Jalan A adalah port awal yang anda lewati (80).

  • Kota Z adalah server atau layanan yang anda tuju.

  • Plakat Pengalihan Arus dan Polisi adalah firewall yang menentukan jalur.

  • Jalan U adalah port hasil pengalihan (8751)


Seperti analogi diatas, untuk dapat mengalihkan port 80 ke port 8751 anda harus melakukan konfigurasi firewall, dalam hal ini firewall yang saya gunakan adalah IPTABLES.

Ketikkan konfigurasi firewall anda pada file rc.local yang berada di direktori /etc/ dengan perintah berikut:
sudo nano /etc/rc.local

Letakkan konfigurasi diatas tulisan exit 0 dan berikut adalah konfigurasi firewallnya:
iptables -t nat -A PREROUTING -s 192.168.1.0/24 -p tcp --dport 80 -j REDIRECT --to-port 8751



Simpan konfigurasi, selanjutnya eksekusi file rc.local untuk mengetahui apakah ada error dengan konfigurasi anda, berikut perintahnya:
sudo /etc/rc.local

Jika terdapat typo, maka akan keluar peringatan, jika konfigurasi anda benar maka tidak akan tampil apa-apa. Lakukan restart pada server anda untuk menerapkan konfigurasi.
sudo reboot

Setelah proses reboot selesai, silahkan beralih ke komputer client anda dan coba mengakses projek web dari peramban web di komputer client tanpa menyertakan alamat port, berikut hasilnya:



Sampai disini anda telah melakukan konfigurasi port beserta cara mengalihkan port dari 80 ke 8751.

Sumber

https://askubuntu.com/questions/291952/how-to-set-a-personalized-port-as-default-in-apache (konfigurasi mengubah port default di Apache2).

https://www.academia.edu/7176744/Konfigurasi_Router_dan_Proxy_di_Debian_5_via_VMWare (Redirect port)

Tutorial ini telah saya implementasikan di VirtualBox, pada bagian server, saya menggunakan Ubuntu Server 16.04.3 LTS dan bagian client saya menggunakan Lubuntu 16.04.2 LTS dengan alamat repositori dari kambing.ui.ac.id. Jika anda mendapati bagian ini ada yang error di mesin anda, silahkan tulis komentar di bawah artikel atau kirim surel ke alamat chotibulstudio@gmail.com, semoga artikel ini dapat membantu anda dan orang-orang yang anda kasihi. Salam Open Source!

Komentar

Postingan populer dari blog ini

Implementasi IPv6 TunnelBroker untuk Server WordPress Self Host

Daftar Rekomendasi Repositori Lokal Debian 11 "Bullseye"

Koneksi Internet Bermasalah di Ubuntu 18.04, Berikut Cara Memperbaikinya