Istilah DMZ muncul tanpa definisi yang menyertainya. Satu butir di daftar periksa tinjauan keamanan, satu kalimat di dokumen pengerasan dari vendor, satu syarat di lowongan kerja yang berdiri di samping TLS dan hak akses seminimal mungkin.
Anda mencarinya dan menemukan diagram firewall dengan tiga kabel jaringan. Satu menuju internet, satu menuju sederet server, satu lagi menuju LAN kantor. Sementara yang Anda kelola adalah satu server sewaan dengan satu IP publik dan tanpa antarmuka jaringan cadangan sama sekali.
Gambar pertama adalah arsitektur DMZ yang sesungguhnya. Di satu server, Anda bisa menghasilkan sebagian dari tujuan keamanannya: membatasi apa yang bisa dijangkau internet. Yang tidak bisa Anda hasilkan di host yang sama adalah batas jaringan terpisah yang membuat sebuah DMZ benar-benar menjadi DMZ.
Versi Singkat
- DMZ memisahkan layanan yang harus dijangkau orang asing dari sisa hal yang Anda jalankan.
- Intinya tidak pernah soal pengkabelan: intinya adalah agar pembobolan di sisi publik berhenti di situ.
- Anda bisa saja mengonfigurasi firewall dan tetap tidak memiliki DMZ.
- Satu server dengan satu IP publik dapat mengurangi paparan lewat reverse proxy, aturan firewall di host, serta pengikatan ke loopback atau antarmuka privat, tetapi itu tidak menciptakan segmen DMZ yang terpisah.
- Versi itu berbagi kernel dengan apa yang dilindunginya, jadi hitunglah sebagai paparan yang berkurang, bukan sebagai isolasi.
Apa yang Tidak Dibahas Artikel Ini
Cakupan di sini adalah model mentalnya, dan tiga topik yang bersinggungan sengaja tidak dibahas.
- Tanpa langkah pembangunan. Tidak ada konfigurasi reverse proxy, tidak ada sintaks aturan firewall, dan tidak ada rekomendasi alat mana yang harus dipasang.
- Tanpa konfigurasi router rumahan. Opsi "DMZ host" pada router rumah menamai sesuatu yang sama sekali berbeda.
- Tanpa vonis soal zero trust. Apakah perimeter jaringan masih merupakan kendali utama yang tepat adalah perdebatan nyata, dan tidak diputuskan di sini.
Apa Itu DMZ, dan Untuk Apa?
DMZ, atau zona demiliterisasi, adalah segmen jaringan yang berada di antara internet yang tidak tepercaya dan jaringan internal. Di sanalah layanan yang harus dapat dijangkau publik ditempatkan, seperti server web dan server surel. Selebihnya tetap berada di balik batas kedua, sehingga mencapai layanan publik tidak berarti mencapai sisanya.
Entri glosarium Mozilla tentang DMZ merangkum paruh yang menentukan dari hal itu dalam satu klausa: ia hanya membuka endpoint tertentu yang telah ditetapkan, sembari menolak akses ke jaringan internal dari luar. Itulah keseluruhan tujuan rancangannya, dinyatakan tanpa menyebut perangkat apa pun.
Jenis layanan yang secara klasik berada di sana mengikuti tujuan itu. Server web, server surel, server FTP, server VoIP: hal-hal yang memang seharusnya bisa dihubungi orang asing. Server direktori, basis data, berbagi berkas, aplikasi internal, dan antarmuka administrasi tidak ada dalam daftar itu, karena tidak seorang pun dari luar seharusnya menjangkaunya.
Peganglah sifatnya, bukan gambarnya. Tiga antarmuka jaringan adalah satu cara membuat batas kepercayaan yang terpisah. Rancangan cloud dan server tunggal bisa menerapkan prinsip pengendalian paparan yang sama dengan cara berbeda, tetapi hanya rancangan dengan zona perimeter tersendiri yang benar-benar menghadirkan DMZ itu sendiri.
Bagaimana DMZ Klasik Tiga Antarmuka Bekerja?
DMZ klasik dibangun dengan dua cara. Rancangan firewall tunggal memberi satu firewall tiga antarmuka: satu ke internet, satu ke DMZ, satu ke jaringan internal. Rancangan dua firewall menempatkan DMZ di antara dua firewall terpisah. Keduanya menegakkan aturan yang sama. Internet mencapai DMZ. Internet tidak pernah mencapai jaringan internal.
Model Firewall Tunggal (Tiga Kaki)
Satu firewall, tiga antarmuka jaringan. Yang pertama menghadap internet. Yang kedua menghadap DMZ, tempat layanan publik berada. Yang ketiga menghadap jaringan internal. Firewall mengizinkan lalu lintas masuk dari internet ke port tertentu di DMZ, mengizinkan lalu lintas sempit dari DMZ ke internal jika sebuah aplikasi membutuhkannya, dan menolak yang lainnya.
Nama bentuk ini adalah firewall tiga kaki. Setiap paket yang menyeberang antarzona melewati satu perangkat, sehingga firewall itu menjadi titik kegagalan tunggal bagi lalu lintas antarzona. Jika gagal, konektivitas dan penegakan kebijakan akan terpengaruh sesuai perilaku kegagalan firewall dan redundansi yang Anda siapkan.
Saya menghabiskan satu dekade menjalankan operasi jaringan di sebuah ISP, dan yang mengejutkan orang tentang antarmuka DMZ adalah betapa biasanya benda itu. Sebuah port ethernet biasa dengan label kepercayaan berbeda yang disematkan di konfigurasi firewall. Arsitekturnya tidak ada di dalam tembaga. Ia ada di dalam kumpulan aturan, dan pada kenyataan bahwa seseorang telah memikirkan baik-baik arah mana yang diizinkan untuk tiap aliran.
Model Dua Firewall (Saling Membelakangi)
Dua firewall berderet, dengan DMZ di antaranya. Firewall luar mengizinkan lalu lintas internet masuk ke DMZ dan tidak lebih jauh. Firewall dalam hanya mengizinkan lalu lintas spesifik dari DMZ ke internal yang dibutuhkan sebuah aplikasi. Penyerang yang mencapai DMZ masih harus menembus batas kebijakan firewall dalam sebelum sampai ke jaringan internal.
Dua firewall memberi Anda dua batas kebijakan yang ditegakkan secara terpisah, tetapi keduanya juga menambah konfigurasi, penambalan, dan kerumitan operasional. Kegagalan atau pembobolan batas luar tidak otomatis menghapus batas dalam, meski perlindungannya tetap bergantung pada bagaimana kedua firewall itu dikonfigurasi dan dikelola.
Apakah DMZ Sama dengan Firewall?
Tidak. DMZ adalah jaringan perimeter atau segmen jaringan tersendiri. Firewall adalah salah satu kendali umum yang dipakai untuk mengatur lalu lintas antara zona itu, internet, dan jaringan internal. Anda bisa mengonfigurasi aturan firewall di jaringan datar tanpa membuat DMZ sama sekali, jadi perbedaannya bersifat arsitektural, bukan sekadar soal konfigurasi.
Kekeliruan itu bisa dimaklumi. Firewall adalah benda yang Anda masuki, benda yang punya berkas konfigurasi, vendor, dan kontrak dukungan, sehingga ia menyerap nama dari hal yang dihasilkannya. Sementara tidak ada seorang pun yang pernah masuk ke sebuah segmen.
Akibatnya muncul pada saat yang paling buruk. Anggaplah server web publik Anda sudah dibobol, karena cepat atau lambat memang akan begitu. Di jaringan datar, penyerang kini punya pijakan di mesin yang sudah bisa berbicara dengan basis data, server berkas, dan antarmuka administrasi Anda, dan berpindah di antaranya hanyalah memakai akses yang memang sudah diizinkan. Perjalanan menyamping itu disebut lateral movement, dan justru itulah yang ingin dihentikan oleh batas kedua. DMZ tidak mencegah server web dibobol. Ia mencegah server web yang sudah dibobol berubah menjadi akses ke segalanya.
Satu klarifikasi selagi istilah ini ada di depan mata: pengaturan "DMZ host" pada router rumahan atau kantor kecil adalah fitur yang berbeda. Ia meneruskan lalu lintas masuk yang tidak diminta ke satu perangkat internal, sehingga perangkat itu terpapar langsung ke internet; ia tidak menciptakan jaringan DMZ yang terpisah dan terlindungi.
Bagaimana Menerapkan Prinsip DMZ di Satu Server?
Satu server dengan satu IP publik dapat menghadirkan sebagian tujuan pengendalian paparan milik DMZ, tanpa menghadirkan pemisahan jaringannya. Reverse proxy bisa menjadi satu-satunya titik masuk publik, aturan firewall masuk dengan tolak-secara-bawaan bisa memblokir sisanya, dan layanan internal bisa mendengarkan di loopback atau antarmuka privat alih-alih di alamat publik.
Mulailah dari batasan yang diasumsikan bagian ini: satu VPS, satu antarmuka publik, dan tanpa perangkat firewall terpisah dan tanpa subnet DMZ yang Anda kendalikan. Dalam susunan itu, Anda tidak bisa menghadirkan kembali topologi tiga kaki klasik di host yang sama. Aturan firewall di host, pemilihan antarmuka tempat layanan mendengarkan, dan reverse proxy tetap dapat mengurangi paparan, tetapi tidak menciptakan batas isolasi yang sama.
Reverse proxy dapat menempati antarmuka publik pada port 80 dan 443 dan menjadi satu-satunya titik masuk di lapisan aplikasi untuk lalu lintas web. Itu mempersempit permukaan serangan publik, tetapi tidak setara dengan antarmuka DMZ terpisah, karena proxy tetap berbagi host dengan layanan yang ada di belakangnya.
Aturan firewall masuk pada host mengizinkan dua port itu dan membuang sisanya. Layanan lain di mesin itu boleh saja berjalan dan mendengarkan, tetapi tidak ada yang dari luar bisa memulai koneksi ke sana. Ini mendekati kebijakan "hanya port yang dimaksudkan yang dapat dijangkau" pada satu host; ia tidak menciptakan batas terpisah dengan jaringan internal.
Server aplikasi, basis data, dan panel admin sebaiknya tidak terikat ke alamat publik. Ketika proxy berjalan di host yang sama, mereka bisa mendengarkan di loopback; ketika proxy berjalan di tempat lain pada jaringan privat, mereka bisa mendengarkan di alamat privat. Dalam kedua kasus, tidak ada pendengar bagi layanan tersebut di antarmuka publik, sehingga membuka satu aturan masuk pada antarmuka itu saja tidak akan memaparkannya.
Akses administratif berada di sisi internal, bukan di sisi DMZ. Menjaga SSH dan antarmuka manajemen tetap di luar jalur publik, di balik VPN atau jaringan privat, mencegah koneksi langsung ke sana dari internet publik.
Bagaimana Konsep DMZ Dipetakan ke Subnet VPC dan Security Group?
Model klasik punya pemetaan konseptual yang cukup dekat ke primitif jaringan cloud, tetapi bukan satu lawan satu. Segmen DMZ menjadi subnet publik. Jaringan internal menjadi subnet privat tanpa rute ke internet gateway. Kumpulan aturan firewall terbagi antara security group, yang terkait dengan antarmuka jaringan sumber daya, dan network ACL, yang menempel pada subnet.
| Elemen Klasik | Padanan di Cloud | Apa yang Ditegakkan |
|---|---|---|
| Segmen DMZ | Subnet publik | Menyediakan rute internet; sebuah sumber daya juga membutuhkan alamat publik dan aturan keamanan yang mengizinkan lalu lintas itu |
| Segmen jaringan internal | Subnet pribadi | Tidak ada rute langsung ke internet gateway, sehingga internet tidak bisa memulai koneksi langsung lewat jalur itu |
| Antarmuka firewall antarzona | Tabel rute + pemasangan internet gateway | Ke mana lalu lintas boleh dirutekan; pengalamatan publik dan kendali keamanan tetap yang menentukan apakah sebuah sumber daya dapat dijangkau |
| Kumpulan aturan firewall (per zona) | Network ACL | Aturan izinkan dan tolak tanpa status, dievaluasi di tepi subnet |
| Kumpulan aturan firewall (per host) | Security group | Aturan izinkan berstatus, diterapkan pada antarmuka jaringan sumber daya yang terkait |
| Layanan menghadap publik di DMZ | Load balancer atau instans proxy di subnet publik | Satu-satunya titik masuk yang harus dilalui lalu lintas |
Para penyedia cloud sendiri memakai kosakata ini, dan itu bukti bagus bahwa istilahnya masih relevan. Blog networking AWS menjelaskan arsitektur DMZ di Amazon VPC yang mengisolasi layanan menghadap publik dari jaringan internal, dibangun di atas VPC Block Public Access, sebuah kendali tingkat Region yang diluncurkan pada November 2024.
Subnet adalah bagian yang memikul beban dalam pemetaan ini. Sebuah subnet publik bersifat publik karena tabel rutenya menunjuk ke internet gateway. Karena tabel rute menentukan ke mana paket berjalan, tata letak subnet membentuk paparan Anda bahkan sebelum aturan mana pun ikut bicara.
Pemetaan ini tidak sempurna pada satu titik khusus. Antarmuka firewall dahulu menegakkan batas bagi satu segmen utuh; sementara security group terkait dengan antarmuka jaringan sebuah sumber daya. Dua mesin di subnet privat yang sama bisa membawa security group yang sama sekali berbeda, sehingga penegakannya jatuh pada granularitas yang lebih halus daripada yang pernah dicapai antarmuka fisik. Umumnya itu perbaikan. Tapi itu juga berarti nama sebuah subnet memberi tahu Anda lebih sedikit tentang apa yang dapat dijangkau ketimbang yang dulu diberi tahu oleh sebuah diagram jaringan.
Di Mana Versi Server Tunggal Tidak Cukup
Di satu host, proses yang menghadap publik dan layanan internal berbagi kernel dan mesin yang sama. Segmen terpisah memaksa penyerang melintasi batas jaringan yang diperiksa firewall; satu host tidak. Pola server tunggal mengurangi paparan. Ia tidak menghadirkan kembali pemisahan.
Jika reverse proxy dibobol dengan cara yang memberi penyerang kemampuan menjalankan kode, kode itu sudah berjalan di mesin tempat basis data Anda berjalan. Mengikat ke loopback tidak menolong saat itu, karena loopback dapat dijangkau dari host itu sendiri. Isolasi kontainer atau pengguna bisa menaikkan usaha yang dibutuhkan, tetapi kontainer di host yang sama tetap berbagi kernel host tersebut. Pada model klasik, langkah berikutnya penyerang adalah sebuah paket melintasi kabel yang sedang diperiksa sesuatu. Di sini, ia hanyalah sebuah soket lokal.
Konsekuensi praktisnya adalah sebuah ambang, bukan sebuah vonis. Ketika apa yang ada di balik proxy lebih berharga daripada repotnya menyiapkan mesin kedua, pakailah mesin kedua dan jaringan privat di antara keduanya. Tidak ada yang perlu dipelajari ulang dari artikel ini untuk melakukannya, sebab tak satu pun bagiannya pernah berbicara tentang perangkat keras.
Bangun di VPS Linux dengan akses root, NVMe, dan tenaga AMD EPYC.
Lihat Paket LinuxPerimeter bukan lagi satu-satunya tempat kebijakan keamanan bisa ditegakkan. Arsitektur zero trust menghapus kepercayaan implisit berdasarkan lokasi jaringan, sementara konektivitas privat yang dibangun dengan WireGuard atau Tailscale dapat mengurangi paparan publik. Tidak satu pun dari kedua pendekatan itu secara otomatis menggantikan segmentasi atau otorisasi. Sikap saya soal pertanyaan yang lebih sempit itu tegas. Sebagai model mental: pilah mana yang dapat dijangkau dan mana yang tidak, dan ketahui batas mana yang akan menahan sebuah pembobolan. Pertanyaan itu bertahan melewati setiap arsitektur yang disebut di atas, dan justru karena itulah ia masih layak dijawab.
Pertanyaan yang Sering Diajukan
Apakah DMZ Sama dengan VPN?
Tidak. Keduanya memecahkan masalah yang berbeda. DMZ mengendalikan apa yang bisa dijangkau orang luar yang tidak tepercaya, dengan membuka sekumpulan kecil layanan dan tidak lebih. VPN memberi orang luar yang tepercaya sebuah jalan privat masuk ke dalam, dengan mengautentikasi mereka ke jaringan yang tanpa itu tidak akan mereka jangkau. Banyak jaringan menjalankan keduanya, dan tidak satu pun menggantikan yang lain.
Apakah DMZ Aman?
DMZ tidak membuat layanan yang terpapar menjadi aman. Ia membatasi sejauh mana pembobolan layanan itu menjangkau. Layanan yang menghadap publik tetap menghadap publik, tetap terbuka bagi semua orang di internet, dan tetap butuh penambalan, pemantauan, serta pengerasan atas namanya sendiri. DMZ menentukan apa yang terjadi setelah ia jatuh, bukan apakah ia akan jatuh.
Apakah Saya Butuh DMZ Kalau Cuma Punya Satu Server?
Tidak dalam pengertian klasik, dan lagi pula Anda tidak akan bisa membangunnya di satu host. Topologi tiga antarmuka membutuhkan segmen jaringan yang terpisah, dan server dengan satu IP publik tidak punya satu pun. Yang bisa Anda lakukan adalah mengendalikan paparan: jadikan reverse proxy satu-satunya titik masuk publik, tolak port masuk lainnya secara bawaan, dan biarkan layanan internal mendengarkan di loopback atau alamat privat. Itu mengurangi apa yang dapat dijangkau internet, tanpa mengisolasi layanan publik dari sisa host. Ketika apa yang ada di balik proxy lebih berharga daripada biaya mesin kedua, pakailah dua mesin dan jaringan privat di antara keduanya.
Kenapa Disebut Zona Demiliterisasi?
Istilah ini dipinjam dari makna militer, yaitu daerah penyangga antara dua kekuatan yang berhadapan, tempat tak satu pun dari keduanya berkuasa penuh. Pemakaiannya di dunia jaringan mempertahankan kiasan itu: DMZ tidak sepenuhnya milik dunia luar yang tidak tepercaya, dan juga tidak sepenuhnya milik dunia dalam yang tepercaya.

Diskusi
Komentar
Masuk untuk bergabung dalam diskusi.