Windows Firewall dan aplikasi bisnis — daftarkan aturan masuk lewat penginstal

· Diperbarui pada: · · Windows, Firewall, Jaringan, Keamanan, Aplikasi bisnis, Penginstal, PowerShell, Sistem informasi

Riwayat revisi (2 pembaruan, terakhir pada 31 Aug 2026)

Catatan perubahan yang dilakukan pada artikel ini. Jika versi sebelumnya telah diarsipkan, versi itu tetap dapat dibaca melalui tautan permanen dengan DOI.

Diterjemahkan ulang sebagai terjemahan lengkap dari naskah Jepang. Versi bahasa Indonesia sebelumnya adalah ringkasan yang hanya memindahkan sebagian naskah, sehingga bagian, tabel, gambar Mermaid, keterangan gambar, dan FAQ tidak ada. Semuanya dipulihkan sesuai naskah Jepang, dan klaim teknisnya sama dengan versi Jepang.
Di antara tepi peta pengetahuan, yang mengaitkan pilihan implementasi khusus artikel ini ke konsep umum diubah menjadi bersyarat (context-dependent). Alasannya, pada data yang dapat dibaca mesin klaimnya terbaca seolah «teknologi itu secara umum memang demikian». Penjelasan dalam teks tidak diubah.
Publikasi pertama
Mengutip artikel ini(DOI (arsip terdaftar): 10.5281/zenodo.22175543)

DOI di bawah mengarah ke versi yang telah diarsipkan sebelumnya dan mungkin berbeda dari teks saat ini. Gunakan URL halaman ini untuk merujuk teks saat ini.

Go Komura (2026). Windows Firewall dan aplikasi bisnis — daftarkan aturan masuk lewat penginstal. KomuraSoft LLC. https://comcomponent.com/id/blog/windows-firewall-business-apps/

DOI (arsip terdaftar)
10.5281/zenodo.22175543
DOI (versi terakhir yang didaftarkan)
10.5281/zenodo.22175544

“Di mesin pengembangan berjalan tanpa masalah, tetapi setelah dipasang di pelanggan, klien tidak tersambung ke server.” “Saat peluncuran pertama ada semacam peringatan, dan orang di lapangan tampaknya membatalkannya.” “netstat menunjukkan port sedang mendengarkan, tetapi dari PC sebelah tidak sampai” — di lapangan penerapan aplikasi bisnis, pertanyaan “tidak bisa berkomunikasi” jenis ini adalah yang paling klasik. Dan yang secara konsisten menempati peringkat atas penyebabnya adalah Windows Firewall (Windows Defender Firewall).

Yang merepotkan, di mesin pengembangan masalahnya tidak terlihat. Di mesin pengembangan, izin ditekan sendiri saat debug Visual Studio, atau pengembang sendiri administrator, sehingga produk dikirim tanpa menyadari blok masuk default. Sementara di pelanggan, yang mengoperasikan adalah pengguna umum tanpa hak administrator, dan jaringan dikelola dengan GPO. Bukan “yang seharusnya jalan tidak jalan”, melainkan «mesin pengembangan kebetulan jalan» yang merupakan kenyataannya.

Artikel ini ditujukan kepada pengembang aplikasi bisnis yang menghadapi “tidak bisa berkomunikasi di pelanggan” pada aplikasi buatan sendiri, dan staf TI usaha kecil dan menengah yang menerima pertanyaan itu. Setelah menguasai setidaknya perilaku default Windows Firewall dan mekanisme profil, artikel ini menata desain aturan masuk, praktik pendaftaran lewat penginstal, langkah menelusuri masalah, dan poin perhatian di bawah pengelolaan GPO/Intune, berdasarkan informasi primer per Agustus 2026.

1. Intinya dulu

  • Default Windows Firewall adalah «masuk diblokir, keluar diizinkan». Lalu lintas masuk yang bukan respons terhadap permintaan dibuang kecuali cocok dengan aturan.1
  • Aturan masuk hanya diperlukan untuk aplikasi bertipe server yang mendengarkan port. Aplikasi klien yang hanya memulai koneksi sendiri dapat berkomunikasi dengan pengaturan default. Pilah di sini dulu.1
  • Ada tiga profil (domain/privat/publik). Domain diterapkan otomatis saat pengontrol domain terdeteksi; publik adalah default jaringan yang tidak dikenali. Aturan aktif atau tidak diputuskan per profil.1
  • Jangan serahkan produksi pada dialog «Peringatan penting» itu. Jika administrator membatalkan, aturan blok dibuat; bagi pengguna tanpa hak administrator, aturan blok dibuat apa pun tombol yang ditekan. Sampai aturan yang dibuat dihapus, dialog tidak ditampilkan ulang.2
  • Kesimpulannya: «daftarkan aturan masuk aplikasi bisnis lewat penginstal». Microsoft sendiri merekomendasikan menempatkan aturan sebelum peluncuran pertama, dan menonaktifkan notifikasi masuk.2
  • Rancang aturan dengan hak minimum. Berporos pada program + protokol + port, batasi profil ke domain/privat, dan sempitkan IP jarak jauh ke subnet yang diperlukan. Wildcard tidak dapat dipakai pada jalur program.23
  • Penelusuran dalam urutan Test-NetConnection → Get-NetFirewallRule → pfirewall.log. Log firewall secara default tidak ditulis; baru muncul setelah pencatatan paket yang dibuang diaktifkan.456
  • Penonaktifan keseluruhan dengan menghentikan layanan di luar dukungan. Di bawah pengelolaan GPO/Intune, «penggabungan aturan lokal» kadang dinonaktifkan, dan saat itu aturan lokal tidak berlaku. Ajukan distribusi terpusat aturan ke staf TI.12

Pada diagram, garis utuh menunjukkan relasi yang selalu berlaku dan garis putus-putus menunjukkan relasi bersyarat (syaratnya ada pada penjelasan masing-masing relasi di halaman rincian). Daftar lengkap relasi (total 35, beserta bukti dan tingkat kepastian) serta definisi konsep utama dikumpulkan di halaman rincian peta pengetahuan (dalam bahasa Jepang). Data: JSON-LD / Turtle

2. Perilaku default dengan tepat — masuk diblokir secara default, keluar diizinkan secara default

Pertama, kuasai fondasinya dengan tepat. Windows Firewall adalah firewall berbasis host yang aktif secara default di semua edisi, dan perilaku defaultnya terangkum dalam dua baris ini.1

  • Masuk (inbound): semua diblokir kecuali merupakan respons terhadap permintaan (solicited) atau cocok dengan aturan
  • Keluar (outbound): semua diizinkan kecuali cocok dengan aturan

Dari dua baris ini muncul pemilahan paling penting bagi aplikasi bisnis. Aturan masuk hanya diperlukan di «sisi yang mendengarkan».

  • Aplikasi klien yang hanya memulai koneksi sendiri ke server web, server DB, atau sistem inti internal → pada prinsipnya aturan tidak perlu. Paket balik koneksi adalah «respons terhadap permintaan» jadi lolos secara default.
  • Aplikasi bertipe server atau layanan Windows yang membuka port dan mendengarkan koneksi dengan TCP, gRPC, protokol sendiri, dan sejenisnya → aturan masuk wajib.
  • Selain itu, konfigurasi yang memakai named pipe dari jarak jauh adalah pengecualian. Named pipe jarak jauh tidak lewat port aplikasi sendiri melainkan lewat SMB (TCP 445), jadi yang diperlukan bukan aturan aplikasi melainkan aturan sisi berbagi berkas (SMB).
  • Pengecualiannya adalah lingkungan berkeamanan tinggi yang secara eksplisit mengubah default keluar menjadi blok. Konfigurasi ini hanya ada di sebagian organisasi, tetapi dalam kasus itu aplikasi klien juga perlu mengajukan aturan keluar.2
Tidak mendengarkan(hanya tersambung sebagai klien)Mendengarkan(tipe server, penerimaan callback)Inventarisasi komunikasi aplikasi sendiriApakah membuka port danmendengarkan koneksi?Aturan masuk pada prinsipnya tidak perlubalikan koneksi lolos sebagai «respons»Aturan masuk wajib→ daftarkan lewat penginstal (bab 5)Pengecualian: di lingkungan berkeamanan tinggidengan blok keluar default, ajukan aturan keluar

Kasus «aplikasi yang seharusnya klien ternyata juga mendengarkan» (penerimaan callback hasil, saluran notifikasi dari proses lain, dan sejenisnya) mudah terlewat. Jika cara komunikasi yang dipakai aplikasi buatan sendiri untuk mendengarkan masih kabur, konfirmasi juga “cara memilih komunikasi antarpproses” sebagai penataan di tahap desain.

2.1. Profil dan «lokasi jaringan»

Aturan diterapkan per profil jaringan. Ada tiga profil.1

Profil Syarat penerapan Tempat yang diasumsikan
Domain Diterapkan otomatis saat PC yang domain-joined ke AD mendeteksi pengontrol domain. Pengaturan manual tidak mungkin Jaringan domain internal
Privat Ditetapkan secara manual oleh administrator pada antarmuka jaringan LAN rumah / kantor kecil
Publik Default jaringan yang tidak dikenali. Dirancang dengan prasyarat paling ketat Wi-Fi publik, hotel, bandara

Profil mana yang sedang diterapkan dapat dikonfirmasi dengan Get-NetConnectionProfile, dan peralihan privat/publik dilakukan dengan Set-NetConnectionProfile.1 Insiden yang sering di lapangan: di lingkungan workgroup pelanggan, jaringan dinilai «publik», dan aturan masuk yang dibuat terbatas domain/privat tidak diterapkan. Saat «aturan ada tetapi tidak lolos», curigai kecocokan profil sebelum isi aturan.

2.2. Prioritas aturan

Evaluasi saat ada beberapa aturan bukan daftar urutan berbobot, melainkan diputuskan oleh prinsip konsisten berikut.2

  1. Aturan izinkan eksplisit mengalahkan blok default
  2. Aturan blok eksplisit mengalahkan aturan izinkan yang berkonflik
  3. Dalam rentang yang tidak bertentangan dengan 2 di atas, aturan yang lebih spesifik diutamakan

Implikasi praktisnya: «jika ada satu aturan blok di suatu tempat, menambahkan aturan izinkan sebanyak apa pun kemudian tidak menang». Seperti terlihat di bab berikutnya, justru aturan blok inilah yang dibuat diam-diam oleh dialog itu.

3. Identitas dialog «Peringatan penting» — alasan tidak boleh diandalkan

Ketika aplikasi pertama kali mulai mendengarkan (listen) port, jika tidak ada aturan izinkan maupun aturan yang ditetapkan administrator untuk aplikasi itu, Windows menampilkan dialog «Peringatan penting Keamanan Windows» yang familiar: “Beberapa fitur aplikasi ini diblokir oleh Windows Defender Firewall”. Spesifikasi perilakunya jelas.2

  • Jika ditampilkan kepada pengguna dengan hak administrator: aturan izinkan dibuat dengan «Izinkan akses». Namun jika «Batal» ditekan, aturan blok dibuat. Biasanya dua: untuk TCP dan UDP.
  • Jika ditampilkan kepada pengguna tanpa hak administrator: aturan blok dibuat apa pun pilihan yang dipilih.
  • Dalam kedua kasus, sampai aturan yang dibuat dihapus, dialog tidak pernah ditampilkan lagi, dan komunikasi terus diblokir.
AdaTidakNonaktifAktifAdministrator «Izinkan akses»Administrator «Batal»Pengguna tanpa hak administrator(operasi apa pun)Aplikasi mulai mendengarkan portApakah ada aturan yang cocokuntuk aplikasi itu?Mengikuti aturan(dialog tidak muncul)Apakah notifikasi masukaktif?Diblokir diam-diam(aturan tidak dibuat)Dialog «Peringatan penting»Aturan izinkan dibuatAturan blok dibuatAturan blok dibuatSampai aturan dihapus,dialog tidak pernah muncul lagi

Artinya, dialog ini tampak sebagai «mekanisme meminta izin kepada pengguna», tetapi di lapangan aplikasi bisnis ia bekerja sebagai «mekanisme yang menanamkan aturan blok begitu pengguna umum menyentuhnya». Jika petugas penerapan meluncurkan pertama kali dengan akun administrator dan mengizinkan di dialog, aturan izinkan yang dibuat berlaku untuk seluruh PC, jadi pengguna umum keesokan harinya untuk sementara dapat berkomunikasi. Meski begitu insiden tetap ada — ketika pengguna umum pertama kali memicu listen yang tidak terpicu saat uji penerapan, ketika profil jaringan yang diterapkan berbeda dari saat penerapan, dan ketika jalur exe berubah karena pembaruan (bab 4 dan 5).

Microsoft sendiri secara eksplisit menyatakan praktik terbaik berikut untuk perangkat yang dipakai orang selain administrator.2

  1. Tempatkan aturan yang diperlukan sebelum peluncuran pertama aplikasi (penginstal atau distribusi sisi pengelolaan)
  2. Nonaktifkan notifikasi masuk (jika notifikasi diputus, pembuatan aturan otomatis saat runtime sendiri tidak dilakukan)

Penonaktifan notifikasi dapat dilakukan dengan Set-NetFirewallProfile -NotifyOnListen False, atau dengan Group Policy.7 «Jika dialog muncul, minta orang di lapangan menekan izinkan» bukan prosedur operasi, melainkan undangan insiden. Daftarkan aturan masuk saat pemasangan — ini kesimpulan artikel ini, dan sejalan dengan rekomendasi Microsoft.

4. Desain aturan masuk — penetapan program, penetapan port, penetapan layanan

Isi aturan yang didaftarkan dirancang. Ada tiga sistem besar cara penetapan, lalu diputuskan apakah dipakai sendiri atau dikombinasikan.

Cara penetapan Cocok jika Kelemahan / perhatian
Penetapan program (program= / -Program) Port mendengarkan dinamis atau banyak. Konfigurasi di mana aplikasi desktop sendiri yang mendengarkan Hanya penetapan jalur penuh exe, wildcard tidak boleh2. Jika jalur berubah karena pembaruan, aturan kehilangan sasaran (pasal 5.4)
Penetapan port (localport= / -LocalPort) Port tetap. Mudah diselaraskan dengan pengajuan ke staf TI dan pengaturan sisi perangkat jaringan Juga melewatkan proses lain yang mendengarkan di port yang sama. Buku besar pengelolaan nomor port diperlukan
Penetapan layanan (-Service) Proses yang mendengarkan dan berjalan sebagai layanan Windows Menyempitkan sasaran dengan nama layanan (nama pendek)3. Tidak dapat dipakai untuk bentuk peluncuran exe langsung
Kombinasi (program + protokol + port) Bentuk dasar aplikasi bisnis produksi Semakin banyak syarat, semakin rapuh terhadap perubahan lingkungan (perubahan jalur/port), jadi dokumentasikan isi aturan2

Di atas itu, tumpuk pembatasan cakupan. Rekomendasi desain Microsoft juga “buat aturan masuk sespesifik mungkin”.2

  • Pembatasan profil: aturan masuk aplikasi bisnis yang hanya dipakai internal dibatasi ke domain/privat, dan tidak diaktifkan di publik. Mencegah insiden port yang didengarkan terbuka ke dunia begitu notebook tersambung ke Wi-Fi di luar.
  • Pembatasan IP jarak jauh: jika sumber koneksi sudah ditentukan, sempitkan -RemoteAddress ke subnet itu. Untuk jaringan rumah/kecil, pembatasan dengan kata kunci LocalSubnet direkomendasikan.23
  • Arah dan jumlah: jika yang didengarkan hanya TCP, satu aturan TCP cukup. Jangan membuat aturan TCP/UDP keduanya secara inersia seperti yang dibuat otomatis dialog.

«Hanya dari pihak yang diperlukan, ke port yang diperlukan, hanya program yang diperlukan» — desain aturan masuk terangkum dalam satu kalimat hak minimum ini.

5. Praktik pendaftaran lewat penginstal — netsh dan New-NetFirewallRule

5.1. Prasyarat: hak administrator diperlukan

Penambahan dan penghapusan aturan firewall adalah perubahan pengaturan seluruh komputer, jadi perlu dijalankan dengan hak administrator (proses yang ditingkatkan).8 Penginstal biasanya berjalan dengan hak administrator, jadi masuk akal menempatkan pendaftaran aturan di dalam pemrosesan pemasangan. Ini bukan alasan menjalankan aplikasi itu sendiri sebagai administrator. Cara berpikir garis ini dibahas secara rinci di “kapan hak administrator diperlukan”.

5.2. Pendaftaran dengan netsh advfirewall

Klasik, tetapi yang mudah dipanggil dari penginstal mana pun adalah netsh advfirewall firewall add rule.8

rem add rule menambahkan lagi meskipun aturan bernama sama sudah ada,
rem jadi hapus dulu aturan bernama sama lalu daftarkan ulang
rem agar aman dijalankan ulang saat pemasangan ulang, perbaikan, atau pembaruan
netsh advfirewall firewall delete rule name="MyCompany OrderServer"

rem aturan izinkan masuk: penetapan program + penetapan port + pembatasan profil
netsh advfirewall firewall add rule name="MyCompany OrderServer" dir=in action=allow program="C:\Program Files\MyCompany\OrderServer\OrderServer.exe" protocol=TCP localport=50051 profile=domain enable=yes

rem saat copot: hapus menurut nama
netsh advfirewall firewall delete rule name="MyCompany OrderServer"

add rule menambahkan dengan nama yang sama tanpa mengganti aturan bernama sama yang ada, jadi jika delete rule tidak dijalankan dulu, aturan berkembang biak setiap eksekusi ulang, dan aturan izinkan lama tetap hidup setelah pembaruan yang mengubah jalur atau cakupan (pada eksekusi pertama, delete rule di depan mengembalikan bahwa “tidak ada aturan yang cocok”, tetapi eksekusi batch berlanjut, jadi urutan ini tidak masalah. Jika penginstal menilai berhasil/gagal dengan kode keluar, lihat hasil add rule di akhir). Sumber koneksi juga dapat disempitkan seperti remoteip=157.60.0.1,172.16.0.0/16,LocalSubnet.8 Penghapusan menghapus sekaligus aturan yang cocok menurut nama, jadi jadikan nama aturan unik dengan awalan perusahaan sendiri lebih aman.

5.3. Pendaftaran dengan PowerShell (New-NetFirewallRule)

Untuk pengendalian lebih rinci, modul NetSecurity. -DisplayName wajib; -Profile dapat menetapkan beberapa dengan dipisah koma (tanpa spasi).3

# Pendaftaran (jalankan dari penginstal dalam keadaan ditingkatkan). -Name adalah
# pengidentifikasi unik, jadi eksekusi ulang pada pemasangan ulang, perbaikan,
# dan pembaruan, pembuatan aturan bernama sama akan error. Jadikan idempoten
# dengan menghapus aturan bernama sama yang ada lalu membuat ulang
Remove-NetFirewallRule -Name "MyCompany-OrderServer-In" -ErrorAction SilentlyContinue
New-NetFirewallRule -Name "MyCompany-OrderServer-In" `
    -DisplayName "MyCompany OrderServer (TCP 50051 masuk)" `
    -Direction Inbound -Action Allow `
    -Program "C:\Program Files\MyCompany\OrderServer\OrderServer.exe" `
    -Protocol TCP -LocalPort 50051 `
    -Profile Domain,Private -RemoteAddress LocalSubnet

# Saat copot: jangan error meski tidak ada
Remove-NetFirewallRule -Name "MyCompany-OrderServer-In" -ErrorAction SilentlyContinue

Ada alasan -Name dinyatakan di sini. -Name adalah pengidentifikasi unik aturan; jika dihilangkan, nilai acak diberikan. Nama tampilan (-DisplayName) dapat berubah tergantung lokal, jadi kunci untuk mengidentifikasi aturan dari skrip memakai -Name, menurut panduan Microsoft.3 Agar pencopot pasti hanya menghapus aturannya sendiri, anggap penetapan -Name wajib.

5.4. Jika jalur exe berubah karena pembaruan

Aturan penetapan program mengunci sasaran dengan jalur penuh. Artinya, jika lokasi pemasangan atau nama exe berubah karena pembaruan, aturan tetap ada tetapi kehilangan sasaran, dan pendengaran diblokir lagi. Saat itu, exe jalur baru diperlakukan sebagai «aplikasi tanpa aturan», jadi di lingkungan notifikasi aktif dialog bab 3 muncul lagi, dan jika pengguna umum mengoperasikan, aturan blok tertanam. Di lingkungan yang menonaktifkan notifikasi sesuai rekomendasi bab 3, gagal diam-diam tanpa dialog pun. Insiden ini mudah terjadi terutama pada cara penempatan ke folder berisi nomor versi, atau cara penempatan yang bergerak dengan pembaruan sendiri.

AktifNonaktifTindakanPasang v1.0aturan menunjuk exe di folder v1.0Pembaruan menempatkan ke folder v1.1jalur exe yang dijalankan berubahAturan jalur lama kehilangan sasaran(aturan ada tetapi tidak berlaku)Apakah notifikasi masukaktif?Dialog ditampilkan ulangjika pengguna umum menyentuh, aturan blokDiblokir diam-diamtanpa dialog punKunci jalur lintas pembaruanatau hapus aturan lama lalu daftarkan ulang dalam pemrosesan pembaruan

Tindakannya sederhana, salah satu berikut.

  • Kunci lokasi pemasangan, dan jadikan penempatan di mana jalur penuh exe tidak berubah lintas pembaruan
  • Pada pembaruan yang jalur berubah, updater menghapus aturan lama dan mendaftarkan ulang dengan jalur baru (jalankan juga perintah 5.2/5.3 dalam pemrosesan pembaruan)

Jika MSI, pendaftaran aturan sebagai custom action yang dijalankan setelah penempatan berkas (saat copot, custom action sisi penghapusan) adalah praktik baku. Toolset seperti WiX juga punya perluasan yang mendeskripsikan aturan firewall secara deklaratif. Lokasi implementasi berubah menurut cara distribusi yang dipilih, jadi lihat juga “cara memilih cara distribusi aplikasi Windows”. Selain itu, deteksi keliru antivirus — gangguan klasik lain saat penerapan di pelanggan — dibahas di “penanganan deteksi keliru Microsoft Defender”.

6. Pemecahan masalah — alur penelusuran «tidak bisa berkomunikasi»

Langkah saat menerima pertanyaan dipakukan secara berurutan. Alur keseluruhan sebagai berikut.

Tidak mendengarkanLISTENINGTcpTestSucceeded=TrueFalseTidak cocok dengan sasaran aturanCocok«Klien tidak bisa berkomunikasi»Sisi server: netstat -anoMasalah sebelum firewallselidiki sisi aplikasi/layananSisi klien: Test-NetConnectionKeterjangkauan normalselidiki lapisan aplikasi (autentikasi, protokol)Sisi server: Get-NetConnectionProfilekonfirmasi profil yang diterapkanTinjau penetapan profil aturanGet-NetFirewallRule -PolicyStore ActiveStorekonfirmasi ada/tidaknya aturan izinkan dan masuknya aturan blokUkur pembuangan (DROP) di pfirewall.log
Langkah Perintah / operasi Yang dikonfirmasi
1. Konfirmasi pendengaran (sisi server) netstat -ano Apakah port sasaran LISTENING. Jika tidak mendengarkan sama sekali, masalah sebelum firewall
2. Konfirmasi keterjangkauan (sisi klien) Test-NetConnection -ComputerName sv01 -Port 50051 Apakah TcpTestSucceeded True4
3. Konfirmasi profil (sisi server) Get-NetConnectionProfile Apakah profil yang sedang diterapkan cocok dengan profil yang mengaktifkan aturan1
4. Konfirmasi aturan yang berlaku (sisi server) Get-NetFirewallRule -PolicyStore ActiveStore Apakah aturan izinkan yang dituju ada di antara aturan «yang benar-benar berlaku» termasuk yang berasal dari GPO. Apakah aturan blok dari dialog tercampur5
5. Konfirmasi di log (sisi server) pfirewall.log Apakah paket ke port sasaran dibuang (DROP)6

Catatan langkah 4. Syarat port dan program ada di sisi objek filter, bukan pada aturan itu sendiri, jadi untuk menelusuri aturan dari port, kueri lewat filter.57

# Telusuri aturan terkait port 50051
Get-NetFirewallPortFilter | Where-Object { $_.LocalPort -eq 50051 } | Get-NetFirewallRule

# Lacak asal aturan (lokal atau GPO)
Get-NetFirewallRule -PolicyStore ActiveStore -TracePolicyStore |
    Select-Object Name, DisplayName, PolicyStoreSourceType, PolicyStoreSource

Log firewall (pfirewall.log) langkah 5 secara default tidak mencatat apa pun. Jalur default adalah %windir%\system32\logfiles\firewall\pfirewall.log, ukuran maksimum default 4,096KB, dan baru ditulis setelah salah satu «catat paket yang dibuang ke log» atau «catat koneksi yang berhasil ke log» diaktifkan.6 Di mesin tunggal, dapat diaktifkan sebagai berikut.6

netsh advfirewall set allprofiles logging droppedconnections enable
netsh advfirewall set allprofiles logging allowedconnections enable

Log adalah berkas teks, dan per baris mencatat apakah dibuang (DROP) atau diizinkan (ALLOW), protokol, IP dan port sumber/tujuan, jadi di sini dapat dipastikan “apakah SYN dari klien sampai lalu dibuang, atau tidak sampai sama sekali”. Selain itu, di lingkungan yang mengonfigurasi log dengan kebijakan, hak tulis ke folder log (FullControl layanan mpssvc) kadang kurang sehingga berkas tidak dibuat; dalam kasus itu pembuatan folder dan pemberian ACL diperlukan.6

Jika menggali lebih dalam, mengaktifkan kebijakan audit «Packet Drop pada Filtering Platform» mencatat peristiwa keamanan 5152 setiap kali pembuangan. Namun volume peristiwa sangat besar, jadi Microsoft menganjurkan memakai peristiwa 5157 (sambungan Filtering Platform) yang dicatat per sambungan. Ini alat yang diaktifkan hanya selama penelusuran, bukan pemakaian sehari-hari.9

Terakhir, perjelas penelusuran yang tidak boleh dilakukan. Penonaktifan keseluruhan dengan menghentikan layanan firewall (MpsSvc) di luar dukungan, dan menimbulkan masalah sisi OS seperti menu Mulai yang tidak merespons atau pembaruan aplikasi Store yang gagal. Jika tetap ingin menonaktifkan untuk memastikan, nonaktifkan profil dengan Set-NetFirewallProfile -Profile Domain,Public,Private -Enabled False sambil layanan tetap berjalan, dan segera kembalikan setelah konfirmasi.17 Dan jika sudah dipastikan penyebabnya firewall, penanganannya bukan menonaktifkan secara permanen melainkan menambah satu aturan yang benar.

7. Perhatian di bawah pengelolaan organisasi — lingkungan di mana aturan lokal tidak berlaku, dan tata cara pengajuan

Meski aturan didaftarkan lewat penginstal, ada lingkungan di mana ia tidak berlaku. Di organisasi yang mengelola firewall secara terpusat dengan GPO atau Intune (CSP), «penggabungan aturan lokal» (AllowLocalPolicyMerge) dapat dinonaktifkan per profil. Jika pengaturan ini nonaktif, aturan yang dibuat administrator lokal (termasuk penginstal) tidak diterapkan, dan aturan aplikasi yang memerlukan koneksi masuk wajib didistribusikan terpusat dari GPO/CSP.2

Aktif (default)NonaktifAturan yang didistribusikan dengan GPO/IntuneHimpunan aturan yang benar-benar berlaku(ActiveStore)Aturan yang dibuat secara lokal(termasuk pendaftaran penginstal)Penggabungan aturan lokal(AllowLocalPolicyMerge)Aturan ada tetapi tidak diterapkan→ beralih ke distribusi terpusat GPO/CSP

Kesiapan realistis sisi pengembangan dan penerapan sebagai berikut.

  • Jadikan pendaftaran aturan penginstal desain yang «tidak gagal» (pendaftaran itu sendiri berhasil, jadi tidak terdeteksi sebagai error. Sertakan konfirmasi konektivitas setelah penerapan ke prosedur)
  • Dengan langkah 4 bab 6 (-TracePolicyStore), konfirmasi apakah asal aturan yang berlaku lokal atau GPO5
  • Jika diketahui aturan lokal tidak berlaku, beralih ke pengajuan distribusi aturan ke departemen TI

Serahkan informasi berikut sebagai satu set pada pengajuan. Aturan firewall baru dapat dibuat setelah arah, program, port, dan cakupan lengkap, jadi ini langsung menjadi «spesifikasi jaringan aplikasi bisnis».

Butir Contoh isian
Nama aturan (pengidentifikasi) MyCompany-OrderServer-In
Arah Masuk
Jalur program C:\Program Files\MyCompany\OrderServer\OrderServer.exe
Protokol / port TCP 50051
Rentang IP jarak jauh 172.16.10.0/24 (segmen penempatan klien pemesanan)
Profil Hanya domain
Kegunaan / dasar Penerimaan koneksi dari klien input pesanan (nama sistem bisnis)
Syarat penghapusan Hapus saat sistem ini dibongkar

Dari sisi staf TI, volume kerja sangat berbeda antara pengajuan yang punya tabel ini dan yang tidak. Sebaliknya, «tolong buka» hanya dengan nomor port cenderung menjadi izin berlebih seperti terlihat di bab 4. Selain itu, persyaratan komunikasi seputar berbagi berkas dan autentikasi di lingkungan domain juga berubah dengan pengencangan terpisah dari firewall (keharusan penandatanganan, dan sejenisnya). Lihat juga “SMB signing dan LDAP channel binding”.

8. Ringkasan

  • Default Windows Firewall adalah blok masuk, izinkan keluar. Aturan masuk hanya diperlukan untuk aplikasi bertipe server yang mendengarkan; jika hanya tersambung sebagai klien, pada prinsipnya tidak perlu.
  • Aturan diterapkan per profil (domain/privat/publik). Tersangka pertama «aturan ada tetapi tidak lolos» adalah ketidakcocokan profil.
  • Dialog «Peringatan penting» membuat aturan blok saat batal atau operasi pengguna tanpa hak, dan setelah itu tidak ditampilkan ulang. Jangan serahkan operasi produksi pada dialog ini.
  • Daftarkan aturan masuk aplikasi bisnis lewat penginstal — ini satu-satunya prinsip. Pendaftaran dengan hak administrator, dan implementasikan termasuk penghapusan dengan -Name yang dikunci.
  • Aturan berporos pada program + protokol + port, lalu disempitkan dengan profil dan IP jarak jauh. Jika jalur exe berubah karena pembaruan, jangan lupa pendaftaran ulang aturan.
  • Penelusuran secara mekanis dalam urutan netstat → Test-NetConnection → konfirmasi profil → Get-NetFirewallRule (ActiveStore) → pfirewall.log. Penonaktifan dengan menghentikan layanan di luar dukungan.
  • Di bawah pengelolaan GPO/Intune, penggabungan aturan lokal kadang dinonaktifkan. Saat itu, ajukan distribusi ke staf TI dengan nama aturan, arah, program, port, IP jarak jauh, dan profil yang lengkap.

Artikel terkait

Area konsultasi terkait

KomuraSoft LLC menangani desain penginstal aplikasi bisnis bertipe server (termasuk pendaftaran dan penghapusan aturan firewall), investigasi penyebab «tidak bisa berkomunikasi» di lingkungan pelanggan, dan penataan persyaratan jaringan yang mengantisipasi penerapan di bawah pengelolaan GPO. Tidak apa-apa memulai dari penelusuran «jalan di mesin pengembangan tetapi tidak di pelanggan».

Tautan referensi

  1. Microsoft Learn, Windows Firewall overview. Tentang Windows Firewall sebagai firewall berbasis host yang aktif secara default di semua edisi; perilaku default «masuk diblokir kecuali respons terhadap permintaan atau cocok aturan, keluar diizinkan kecuali cocok aturan»; tiga profil (domain=diterapkan otomatis saat pengontrol domain terdeteksi, pengaturan manual tidak mungkin; privat=ditetapkan manual administrator; publik=default jaringan yang tidak dikenali); konfirmasi dan perubahan kategori jaringan dengan Get-NetConnectionProfile / Set-NetConnectionProfile; penonaktifan dengan menghentikan layanan firewall (MpsSvc) yang di luar dukungan dan menimbulkan menu Mulai berhenti atau pembaruan aplikasi Store gagal; dan cara penonaktifan yang benar adalah menonaktifkan profil sambil layanan tetap berjalan. ↩ ↩2 ↩3 ↩4 ↩5 ↩6 ↩7 ↩8 ↩9

  2. Microsoft Learn, Windows Firewall rules. Tentang prioritas aturan (izinkan eksplisit mengalahkan blok default, blok eksplisit mengalahkan izinkan, aturan lebih spesifik diutamakan, tidak ada urutan berbobot); dialog yang ditampilkan jika tidak ada aturan saat aplikasi mulai mendengarkan; aturan blok (biasanya dua TCP/UDP) yang dibuat jika pengguna administrator memilih «Tidak» atau batal; aturan blok yang dibuat apa pun pilihan bagi pengguna yang bukan administrator lokal; dialog yang tidak ditampilkan ulang dan komunikasi terus diblokir sampai aturan yang dibuat dihapus; bahwa aplikasi atau penginstal sendiri yang menambahkan aturan adalah hal biasa; rekomendasi menempatkan aturan sebelum peluncuran pertama dan menonaktifkan notifikasi masuk; wildcard (C:*\teams.exe, dll.) yang tidak dapat dipakai pada aturan program, hanya penetapan jalur penuh; penggabungan aturan lokal (AllowLocalPolicyMerge) yang dapat dinonaktifkan per profil, dan saat nonaktif distribusi terpusat aturan aplikasi yang memerlukan koneksi masuk menjadi wajib; rekomendasi membuat aturan masuk sespesifik mungkin dan untuk jaringan rumah/kecil membatasi alamat jarak jauh ke LocalSubnet; dan bahwa blok keluar default adalah pilihan lingkungan berkeamanan tinggi tetapi default masuk tidak boleh diubah menjadi izinkan. ↩ ↩2 ↩3 ↩4 ↩5 ↩6 ↩7 ↩8 ↩9 ↩10 ↩11 ↩12 ↩13

  3. Microsoft Learn, New-NetFirewallRule (NetSecurity). Tentang -DisplayName yang wajib saat pembuatan aturan; -Name sebagai pengidentifikasi unik dengan default nilai acak, dan panduan memakai -Name di skrip; spesifikasi tiap parameter -Direction (Inbound/Outbound), -Action (Allow/Block), -Program (jalur penuh), -Protocol (TCP/UDP/ICMPv4/ICMPv6/nomor), -LocalPort, -RemoteAddress (kata kunci IP/subnet/rentang/LocalSubnet, dll.), -Service, -Profile (Any/Domain/Private/Public, beberapa dengan dipisah koma tanpa spasi); dan contoh pembuatan aturan yang menggabungkan penetapan program + protokol + port. ↩ ↩2 ↩3 ↩4 ↩5

  4. Microsoft Learn, Test-NetConnection (NetTCPIP). Tentang Test-NetConnection sebagai cmdlet yang menampilkan informasi diagnostik ping, koneksi TCP, dan rute; menguji koneksi TCP ke port yang ditetapkan dengan -ComputerName dan -Port; dan hasil yang dikembalikan sebagai TcpTestSucceeded. ↩ ↩2

  5. Microsoft Learn, Get-NetFirewallRule (NetSecurity). Tentang -PolicyStore ActiveStore yang dapat mengambil aturan dari semua toko kebijakan yang diterapkan (himpunan kebijakan hasil termasuk yang berasal dari GPO); syarat port dan alamat yang ada di sisi objek filter, bukan pada aturan itu sendiri, dan dikueri lewat Get-NetFirewallPortFilter / Get-NetFirewallApplicationFilter; dan konfirmasi asal aturan (PolicyStoreSource / PolicyStoreSourceType Local/GroupPolicy) dengan -TracePolicyStore. ↩ ↩2 ↩3 ↩4

  6. Microsoft Learn, Configure Windows Firewall logging. Tentang jalur default log %windir%\system32\logfiles\firewall\pfirewall.log; ukuran maksimum default 4,096KB dengan entri lama dihapus saat batas tercapai; log yang tidak dicatat sampai «paket yang dibuang» atau «koneksi yang berhasil» diaktifkan; pengaktifan dengan netsh advfirewall set allprofiles logging droppedconnections/allowedconnections enable; dan tentang kasus berkas log tidak dibuat jika folder log tidak punya hak FullControl layanan mpssvc, sehingga pembuatan folder dan pemberian ACL secara manual diperlukan. ↩ ↩2 ↩3 ↩4 ↩5

  7. Microsoft Learn, Manage Windows Firewall with the command line. Tentang konfigurasi perilaku default, notifikasi (-NotifyOnListen False), dan pengaturan log dengan Set-NetFirewallProfile; contoh pembuatan aturan program dengan New-NetFirewallRule dan contoh penghapusan dengan Remove-NetFirewallRule / netsh advfirewall firewall delete rule; pola menekan error saat aturan tidak ada dengan -ErrorAction SilentlyContinue; contoh kueri menelusuri aturan dari syarat port dengan Get-NetFirewallPortFilter; dan tentang menonaktifkan profil dengan Set-NetFirewallProfile -Enabled False sebagai cara penonaktifan yang benar. ↩ ↩2 ↩3

  8. Microsoft Learn, Use netsh advfirewall firewall context to control Windows Firewall behavior (KB947709). Tentang contoh penambahan aturan program dan aturan port dengan sintaks netsh advfirewall firewall add rule (name= / dir=in / action=allow / program= / enable=yes / remoteip= / profile= / protocol= / localport=); contoh penghapusan dengan delete rule; tentang anggota grup administrator yang di lingkungan UAC aktif perlu menjalankannya dari command prompt yang ditingkatkan; dan tentang pengaturan log dengan netsh advfirewall set currentprofile logging. ↩ ↩2 ↩3

  9. Microsoft Learn, Audit Filtering Platform Packet Drop. Tentang peristiwa 5152 (dan 5153) yang dicatat saat Windows Filtering Platform membuang paket jika subkategori audit «Packet Drop pada Filtering Platform» diaktifkan; volume peristiwa subkategori ini yang sangat besar; dan rekomendasi memakai peristiwa 5157 yang dicatat per sambungan, bukan per paket, untuk memantau sambungan yang diblokir. ↩

Artikel terbaru dengan tag yang sama untuk mendalami topik-topik terdekat.

Halaman-halaman ini menempatkan topik dalam konteks layanan dan keputusan yang lebih luas.

Artikel ini berkaitan langsung dengan layanan berikut.

Pertanyaan yang sering diajukan

Pertanyaan yang sering muncul dalam konsultasi tentang topik artikel ini.

Apakah aplikasi yang hanya tersambung ke server sebagai klien juga memerlukan aturan firewall?
Pada prinsipnya tidak. Default Windows Firewall adalah «masuk diblokir, keluar diizinkan», jadi aplikasi klien yang hanya memulai koneksi sendiri dapat berkomunikasi dengan pengaturan default. Aturan masuk hanya diperlukan di sisi yang membuka port dan mendengarkan koneksi, yaitu aplikasi bertipe server. Ada dua pengecualian. Di lingkungan berkeamanan tinggi, keluar kadang diubah menjadi blok default; dalam kasus itu pengajuan aturan keluar diperlukan. Selain itu, jika aplikasi klien sendiri dirancang untuk mendengarkan port sebagai saluran menerima notifikasi hasil, bagian itu memerlukan aturan masuk.
Bukankah cukup menekan «Izinkan akses» pada dialog «Peringatan penting Keamanan Windows»?
Untuk saat itu cukup, tetapi operasi produksi tidak bisa diserahkan padanya. Jika pengguna dengan hak administrator membatalkan dialog ini, aturan blok dibuat. Bagi pengguna tanpa hak administrator, aturan blok dibuat apa pun tombol yang ditekan. Sampai aturan yang sudah dibuat dihapus, dialog tidak pernah muncul lagi, dan komunikasi terus gagal. Pada aplikasi bisnis yang dioperasikan pengguna umum di PC lapangan, keadaan «seseorang sekali membatalkan, lalu komunikasi tidak bisa selamanya» mudah terjadi. Microsoft juga merekomendasikan menempatkan aturan sebelum peluncuran pertama aplikasi.
Haruskah aturan masuk dibuat dengan penetapan port atau penetapan program?
Dasarnya bukan memilih salah satu, melainkan menggabungkan keduanya. Penetapan program dapat mempersempit sasaran dengan jalur penuh exe, tetapi jika jalur berubah karena pembaruan, aturan kehilangan sasarannya (wildcard tidak dapat dipakai). Penetapan port membuat pengajuan ke staf TI lebih jelas, tetapi juga melewatkan proses lain yang mendengarkan di port yang sama. Pada aplikasi bisnis produksi, bentuk hak minimum adalah berporos pada «program + protokol + port», membatasi profil ke domain/privat, dan mempersempit IP jarak jauh ke subnet tempat klien berada. Hanya jika port dinamis, pakai penetapan program saja.
Aturan yang didaftarkan penginstal tampaknya tidak berlaku di PC pelanggan. Mengapa?
Kemungkinan besar firewall pelanggan dikelola terpusat dengan GPO atau Intune, dan «penggabungan aturan lokal» (AllowLocalPolicyMerge) dinonaktifkan. Jika pengaturan ini nonaktif, aturan yang dibuat secara lokal ada di profil tetapi tidak diterapkan, dan satu-satunya cara adalah mendistribusikan aturan secara terpusat dari sisi GPO/CSP. Konfirmasi keseluruhan aturan yang berlaku dengan Get-NetFirewallRule -PolicyStore ActiveStore, lalu ajukan distribusi aturan ke departemen TI. Pengajuan yang sekali lolos menyertakan nama aturan, arah, jalur program, protokol dan port, rentang IP jarak jauh, dan profil.
Bolehkah menonaktifkan firewall sementara untuk menelusuri masalah komunikasi?
Penonaktifan dengan menghentikan layanan (MpsSvc) mutlak dihindari. Ini operasi di luar dukungan Microsoft, dan menimbulkan masalah sisi OS seperti menu Mulai yang tidak merespons atau pembaruan aplikasi Store yang gagal. Jika tetap ingin menonaktifkan untuk menelusuri masalah, cara yang benar adalah menonaktifkan profil dengan Set-NetFirewallProfile -Enabled False sambil layanan tetap berjalan. Namun ini pun dibatasi untuk memastikan dalam beberapa menit apakah penyebabnya firewall, dan segera dikembalikan setelah konfirmasi. Membiarkan firewall nonaktif berarti menukar masalah yang selesai dengan menambah satu aturan dengan membuka seluruh PC tanpa perlindungan.

Profil penulis

Halaman perkenalan penulis artikel.

Go Komura

Direktur KomuraSoft LLC

Berspesialisasi dalam pengembangan perangkat lunak Windows, konsultasi teknis, dan investigasi bug, terutama pada proyek dengan sistem yang sudah ada dan bug yang sulit direproduksi.

Kembali ke blog