Firewall dan Basic Server Security
Mengatur firewall dengan UFW dan nftables, memahami Proxmox firewall, serta menerapkan pertahanan dasar untuk server.
Firewall mengatur trafik mana yang boleh masuk dan keluar. Bersama update rutin dan autentikasi yang kuat, firewall adalah lapisan pertahanan pertama server.
Prinsip dasar firewall
- Default deny untuk trafik masuk, kecuali port yang memang dibutuhkan.
- Least privilege — buka port sesedikit mungkin.
- Stateful — izinkan balasan dari koneksi yang sudah established.
- Log — catat trafik yang ditolak untuk diagnosa.
UFW (Uncomplicated Firewall)
UFW adalah frontend ramah untuk iptables/nftables, umum di Ubuntu/Debian.
apt install -y ufw
ufw status
ufw default deny incoming
ufw default allow outgoing
ufw allow 22/tcp
ufw allow 80/tcp
ufw allow 443/tcp
ufw enable
ufw status verboseJangan kunci SSH
Aktifkan aturan SSH sebelum ufw enable. Jika tidak, koneksi remote Anda bisa terputus.
Aturan berdasarkan sumber
ufw allow from 10.10.10.0/24 to any port 3306 proto tcp
ufw allow from 192.168.1.0/24 to any port 22 proto tcp
ufw deny 3306/tcpMenghapus aturan
ufw status numbered
ufw delete 3
ufw delete allow 80/tcpLog
ufw logging on
journalctl -k | grep UFW
tail -f /var/log/ufw.lognftables
nftables adalah penerus iptables dan tersedia di distro modern.
nft list ruleset
nft add table inet filter
nft add chain inet filter input '{ type filter hook input priority 0; policy drop; }'
nft add rule inet filter input ct state established,related accept
nft add rule inet filter input iif lo accept
nft add rule inet filter input tcp dport { 22, 80, 443 } acceptAturan di atas belum persisten setelah reboot. Simpan dengan:
nft list ruleset > /etc/nftables.conf
systemctl enable --now nftablesPilih satu tool utama
UFW, nftables, dan iptables dapat saling memengaruhi. Gunakan satu pendekatan utama agar aturan mudah dilacak. Di Proxmox, pertimbangkan firewall bawaan Proxmox.
Proxmox firewall
Proxmox menyediakan firewall di beberapa level:
| Level | Lokasi |
|---|---|
| Datacenter | Datacenter → Firewall |
| Node | Node → Firewall |
| VM/LXC | Guest → Firewall |
Langkah umum:
- Aktifkan firewall di level Datacenter.
- Buat aturan default yang aman.
- Aktifkan firewall pada node.
- Tambahkan aturan spesifik untuk VM/LXC.
Contoh aturan guest: izinkan SSH hanya dari jaringan admin.
pve-firewall compile
pve-firewall statusFail2ban
Fail2ban memblokir IP yang gagal login berulang kali.
apt install -y fail2ban
systemctl enable --now fail2banKonfigurasi lokal /etc/fail2ban/jail.local:
[DEFAULT]
bantime = 1h
findtime = 10m
maxretry = 5
[sshd]
enabled = true
port = ssh
logpath = %(sshd_log)s
backend = systemdsystemctl restart fail2ban
fail2ban-client status
fail2ban-client status sshdPertahanan dasar lainnya
| Praktik | Alasan |
|---|---|
| Update rutin | Menutup kerentanan yang diketahui |
| SSH key-only | Mengurangi brute force |
| Disable root login | Memaksa audit lewat user biasa + sudo |
| Hapus service tak terpakai | Mengurangi attack surface |
| Monitor log | Mendeteksi percobaan akses |
| Backup teruji | Pemulihan setelah insiden |
| Password manager | Kredensial kuat dan unik |
Praktik: firewall minimal untuk server web
# 1. Pasang dan reset aturan
apt install -y ufw
ufw --force reset
# 2. Kebijakan default
ufw default deny incoming
ufw default allow outgoing
# 3. Izinkan layanan
ufw allow 22/tcp comment 'SSH'
ufw allow 80/tcp comment 'HTTP'
ufw allow 443/tcp comment 'HTTPS'
# 4. Aktifkan
ufw --force enable
ufw status verbose
# 5. Uji
curl -I http://localhost
ss -tulpnSetelah aktif, uji akses dari mesin lain. Jika ada layanan yang tidak bisa diakses, periksa apakah port-nya memang perlu dibuka.
Ringkasan
- Firewall memfilter trafik berdasarkan aturan; default deny adalah baseline aman.
- UFW ramah untuk pemula, nftables lebih fleksibel.
- Proxmox punya firewall terintegrasi di level datacenter, node, dan guest.
- Fail2ban, update, dan SSH key-only melengkapi pertahanan dasar.
Selanjutnya
Tingkatkan keamanan di Linux Server Hardening dan Secure Configuration.
Server Architecture: CPU, RAM, Storage, dan Resource Management
Memahami peran CPU, RAM, dan storage, membaca metrik beban, serta mengalokasikan resource VM/LXC secara sehat.
Linux Server Hardening dan Secure Configuration
Menerapkan baseline hardening Linux: update, hardening SSH, least privilege, minimalisasi service, sysctl, audit, dan backup.