Setelah melakukan deploy Hermes, sangat penting untuk mengamankan VPS Anda. Panduan ini membahas pembatasan akses SSH pada port 8288 menggunakan iptables dengan IP yang diizinkan (whitelist), serta memverifikasi alamat IP publik Anda.
Prasyarat
Pastikan Anda memiliki akses SSH ke VPS dan mengetahui alamat IP publik Anda. Jika Anda belum mengetahuinya, Anda dapat memeriksanya menggunakan myip.dk:
curl -s https://myip.dk | grep -oE '([0-9]{1,3}\.){3}[0-9]{1,3}' | head -1Sebagai alternatif, kunjungi https://myip.dk melalui browser. Alamat IP publik Anda akan ditampilkan.
Dalam panduan ini, kita akan menggunakan IP dummy berikut sebagai contoh alamat klien yang diizinkan:
203.0.113.45Penting: Ganti IP dummy ini dengan IP publik Anda yang sebenarnya sebelum menerapkan aturan. Jika tidak, Anda akan terkunci dari server Anda.
Langkah 1: Instal iptables-persistent
Untuk memastikan aturan firewall Anda tetap berlaku setelah reboot, instal paket persistence:
apt update
apt install -y iptables-persistentSelama instalasi, Anda akan diminta untuk menyimpan aturan saat ini. Pilih Yes untuk IPv4 dan IPv6.
Langkah 2: Atur Kebijakan Default
Atur kebijakan default untuk menolak semua lalu lintas masuk kecuali yang diizinkan secara eksplisit. Ini mengikuti prinsip hak istimewa minimal (least privilege).
iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -P OUTPUT ACCEPTLangkah 3: Izinkan Lalu Lintas Esensial
Izinkan loopback dan koneksi yang sudah terjalin agar sistem berfungsi dengan benar:
iptables -A INPUT -i lo -j ACCEPT
iptables -A INPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPTLangkah 4: Batasi SSH Port 8288 Hanya untuk IP Anda
Tambahkan aturan yang mengizinkan koneksi SSH pada port 8288 hanya dari IP yang diizinkan. Menggunakan IP dummy dari atas:
iptables -A INPUT -s 203.0.113.45/32 -p tcp --dport 8288 -m conntrack --ctstate NEW,ESTABLISHED -j ACCEPTJika Anda perlu mengizinkan seluruh subnet alih-alih satu IP, sesuaikan alamat sumber dan notasi CIDR sesuai kebutuhan (misalnya, 203.0.113.0/24).
Langkah 5: Simpan Aturan
Simpan aturan iptables agar diterapkan secara otomatis saat boot:
netfilter-persistent saveSebagai alternatif, Anda dapat menyimpannya secara manual:
iptables-save > /etc/iptables/rules.v4Langkah 6: Verifikasi Aturan
Tampilkan aturan iptables saat ini untuk mengonfirmasi konfigurasi Anda:
iptables -L INPUT -n -v --line-numbersCari aturan yang menerima lalu lintas TCP pada port 8288 dari IP yang diizinkan. Pastikan tidak ada aturan di atasnya yang menolak atau men-drop koneksi tersebut.
Langkah 7: Uji Konfigurasi
Dari mesin lain (bukan VPS itu sendiri), coba hubungkan ke port 8288 menggunakan IP yang diizinkan. Jika koneksi berhasil, aturan telah bekerja dengan baik.
Dari mesin dengan IP berbeda, koneksi seharusnya ditolak atau timeout.
Peringatan: Jangan menutup sesi SSH Anda saat ini sampai Anda memastikan bahwa Anda dapat membuka koneksi SSH baru pada port 8288 dari IP yang diizinkan. Jika Anda terkunci, Anda perlu menggunakan konsol VPS provider (VNC) untuk memulihkan akses.