Episode ini membahas keamanan jaringan Samba: port-port yang harus terbuka (139, 445, 389/636, 135/137/138), kebijakan firewall dengan ufw dan firewalld yang membatasi sumber akses, serta aturan emas bahwa SMB tidak boleh ter-expose ke internet — akses jarak jauh harus lewat VPN seperti WireGuard.

Sampai episode 12, kalian membangun kemampuan Samba — sekarang kita mengamankan jalan masuknya. Samba adalah server jaringan: ia tidak berguna bila tidak bisa dijangkau, tapi terlalu terbuka sama bahayanya. Di episode 13 kita memetakan port-port yang dilayani, menyusun kebijakan firewall yang membatasi siapa yang bisa terhubung, dan memahami satu aturan yang tidak bisa ditawar: SMB tidak pernah boleh terbuka ke internet.
Koneksi SMB modern hanya butuh satu port — tapi environment campuran (AD, NetBIOS, discovery) membuka lebih banyak. Peta lengkapnya:
| Port | Protokol | Layanan |
|---|---|---|
| 445/TCP | SMB/CIFS | Koneksi file/print modern — port utama |
| 139/TCP | NetBIOS Session | Koneksi SMB lawas via NetBIOS |
| 137/138 | NetBIOS Name/Datagram | Name resolution & browsing NetBIOS (nmbd) |
| 389/TCP | LDAP | Direktori AD (samba DC) |
| 636/TCP | LDAPS | LDAP aman (TLS) |
| 88/TCP | Kerberos | Autentikasi AD |
| 464/TCP | kpasswd | Ubah password Kerberos |
| 135/TCP | MS-RPC | Endpoint mapper (beberapa tool admin) |
| 3268/3269 | Global Catalog | Katalog global AD (bila diaktifkan) |
Prinsipnya: buka sekecil mungkin. File server standalone modern cukup 445 saja (ditambah 139 hanya bila ada klien lawas). DC AD butuh 445, 389/636, 88, dan 464; 137/138 (NetBIOS) hanya untuk browsing gaya lama — pada jaringan modern, DNS sudah menggantikan (episode 2). Jangan terbuka 135 kecuali tooling admin memang membutuhkannya.
File server: 445
AD DC: 445, 88, 389/636, 464
NetBIOS: 137/138/139 (hanya jika klien lawas)ufw adalah frontend iptables yang ramah. Aturan terpenting: batasi sumber, jangan hanya port. Contoh membuka SMB hanya untuk subnet LAN:
sudo ufw allow from 192.168.10.0/24 to any port 445 proto tcp
sudo ufw allow from 192.168.10.0/24 to any port 139 proto tcp
sudo ufw enable
sudo ufw status verbosePerhatikan: tidak ada aturan ufw allow 445 global — hanya dari 192.168.10.0/24. Server Samba di LAN kantor tidak butuh diakses dari jaringan lain, dan firewall adalah cara untuk menegakkan itu.
firewalld bekerja dengan konsep zones. Letakkan server di zone internal dan buka service:
sudo firewall-cmd --permanent --zone=internal --add-service=samba
sudo firewall-cmd --permanent --zone=internal --add-source=192.168.10.0/24
sudo firewall-cmd --reload
sudo firewall-cmd --list-all --zone=internaladd-service=samba membuka port SMB (445, 139) secara internal. Untuk DC, tambahkan --add-service=ldap, --add-service=ldaps, --add-service=kerberos.
Important
Aturan emas firewall: default-deny. Mulailah dari nol — jangan "tutup port yang tidak dipakai", melainkan "buka hanya yang dibutuhkan, dari sumber yang sah". Kalian juga harus ingat lapisan kedua dari episode 4: firewall melindungi jaringan, tapi bukan pengganti otentikasi Samba yang kuat (security = user, valid users). Keduanya saling melengkapi.
SMB adalah protokol yang dirancang untuk LAN tepercaya. Mengekspos port 445 ke internet sama dengan mengundang pemindai otomatis (Shodan, attacker bot) untuk mencoba brute-force dan mengeksploitasi — riwayat EternalBlue/WannaCry menunjukkan apa yang terjadi bila 445 terbuka luas. Tidak ada jumlah password kuat yang menyelamatkan dari eksposur SMB publik.
Kebutuhan "akses share dari rumah/office lain" harus dipenuhi dengan VPN, bukan port forwarding. Pilihan yang paling cocok untuk Samba adalah WireGuard — modern, cepat, dan mudah dikonfigurasi:
sudo apt install -y wireguard
sudo wg-quick up wg0
wg showKlien remote memasang WireGuard, mendapat IP di subnet LAN, lalu mengakses \\fileserver\share seperti berada di kantor — tanpa membuka satu pun port SMB ke publik. Port 51820/UDP WireGuard adalah satu-satunya yang boleh terbuka ke internet.
Tip
Dengan WireGuard, port SMB bahkan tidak perlu diteruskan: fileserver tetap di belakang NAT/firewall, klien VPN masuk ke subnet yang diizinkan firewall (aturannya sudah kita buat di atas). Ini pola zero trust paling sederhana untuk file server: jaringan aman dulu, lalu otentikasi Samba — dua lapis yang tidak saling menggantikan.
Setelah firewall disetel, uji dari luar subnet (atau dari host yang tidak diizinkan):
nc -zv 192.168.10.50 445 # seharusnya sukses dari LAN
nc -zv <public-ip> 445 # seharusnya gagal/timeout dari internetDan pastikan tidak ada rule port-forwarding SMB di router/firewall edge. Gunakan juga pemindai sederhana untuk melihat port yang terbuka dari perspektif luar:
sudo nmap -p 139,445,389,636 --open <public-ip>Hasil ideal: tidak ada port SMB yang tampil dari internet. Kalau muncul, ada pekerjaan rumah di edge network.
ufw allow 445 tanpa sumber = terbuka untuk semua — selalu batasi sumber.ufw reload / firewall-cmd --reload.Inti yang harus dibawa pulang:
ufw allow from <subnet> dan firewall-cmd --add-service=samba adalah pola yang benar.nc dan nmap dari perspektif luar.Di episode 14 selanjutnya kita akan membahas hardening SMB — menonaktifkan SMB1 dengan server min protocol = SMB2_10, mempertimbangkan ntlm auth = no, mewajibkan signing/encryption, serta audit dengan smbstatus dan log level. Ini episode di mana keamanan Samba naik dari "layak" menjadi "keras".