FortiGate Firewall Zone ve DMZ Yapılandırması
FortiGate Firewall zone ve DMZ yapılandırması: zone'a yalnız aynı güven düzeyindeki arayüzler, zone içi trafiğin gizli kuralı, misafir ağının ayrı kuralı ve DMZ'den içeri kapalı yön.
- FortiGate Zone Nedir? Zone’a Eklenen Arayüz Neyi Devralır?
- FortiGate’te Zone ve DMZ Düzeni Nasıl Olmalı?
- Hangi Arayüz Aynı Zone’a Girer?
- Zone’a Girmek Kuralları Devralmaktır
- FortiGate’te Zone Oluşturma ve Düzenleme
- CLI’da Zone’a Arayüz Eklemek: set Değil append
- Zone’a Kural Yazmak: Zone’a Giren Arayüz Kuralı Devralır
- Misafiri Zone’dan Çıkarmak: Kendi Kuralı, Kendi Sınırı
- FortiGate Zone İçi Trafik: Block Intra-zone Traffic
- FortiGate’te DMZ: Rol ve Yön
- Doğrulama: FortiGate’in Bölge Düzeni Doğru mu?
- Sonuç: FortiGate’te Zone Kuralı Sadeleştirir, Arayüz Seçimi Dikkat İster
- FortiGate Firewall Zone ve DMZ Hakkında Sık Sorulan Sorular
FortiGate Firewall zone yapılandırması, aynı güven düzeyindeki arayüzleri tek bir ad altında toplamaktır ve Network → Interfaces → Create New → Zone ile yapılır; kural her arayüz için ayrı ayrı değil, zone için bir kez yazılır. DMZ de dışarıya açık sunucuların durduğu, iç ağdan kurallarla ayrılmış bir arayüzdür ve arayüzün Role satırında seçilir.
NSA’nın ve NIST’in tarif ettiği düzende aynı türden sistemler bir arada tutulur, farklı güven düzeyleri arasında yalnız gereken servisler açılır ve DMZ’den iç ağa başlatılan bağlantı kapalı kalır. Bu yazı FortiGate Firewall yapılandırma rehberimizin 11. adımıdır. Lab’daki en öğretici bulgu, misafir ağının yanlış zone’a eklenmesinden çıktı: misafir ağı iç bölümlerin zone’undayken, iç bölümler için yazılmış bir kuraldan geçip DMZ’deki web sunucusuna ulaştı.
Örnekteki sınır kapısında birkaç şerit tek bir alçak taş duvarla çevrilidir ve duvarın tek çıkışı vardır. Görevli o çıkışta tek bir talimatla bütün şeritleri yönetir; duvarın içine sonradan eklenen şerit de aynı talimata uyar. FortiGate’te şeritler arayüzler, duvar zone, çıkıştaki talimat da zone’a yazılan kuraldır.
Bu yazı, Kurumsal Network Kurulumu hizmetimizde iç ağ bölümlerini ve dışarıya açık sunucuları firewall’da ayırırken kurduğumuz düzeni anlatır.
FortiGate Zone Nedir? Zone’a Eklenen Arayüz Neyi Devralır?
Zone’un kavram olarak ne olduğunu ve kurumda hangi bölgelerin ayrıldığını firewall nedir yazımızın zone bölümünde anlattık. FortiGate’te zone, bir kuralın kaynak ya da hedef arayüzü olarak seçilebilen bir gruptur. Gruba alınan arayüzler zone formundaki Interface members listesinde durur. Kuralı gruba yazmanın kazancı, listeye eklenen arayüzün kurala dokunmadan o kuralın altına girmesidir. Aynı cümle bedeli de söylüyor: zone’a eklenen arayüz, zone’a yazılmış bütün kuralları devralır.
Yazıda lab cihazındaki kurallara numaralarıyla değiniyorum. Hepsi bu tabloda, metinde bir kural numarasına tıkladığınızda buraya dönersiniz:
| No | Kuralın adı | Nereden nereye | Ne açıyor? |
|---|---|---|---|
| 5 | Ic bolumler dis aga | ic-bolumler zone’u → dış ağ (port3) | Bütün servisler, NAT ile |
| 6 | Ic bolumlerden DMZ web | ic-bolumler zone’u → DMZ’deki web sunucusu | Yalnız HTTP |
| 11 | Misafir internet cikisi | misafir → dış ağ (port3) | DNS, HTTP ve HTTPS, NAT ile |
policy 0 | Listede görünmez | Hiçbir kuralın eşleşmediği bağlantı | Hiçbir şey: bağlantı reddedilir, logda policy 0 yazar |
| 4294967295 | Listede görünmez | Zone içindeki arayüzler arası, Block intra-zone traffic kapalıyken | Her şey, logsuz |
Lab cihazımda ic-bolumler zone’unda muhasebe ve depo’nun yanında misafir de vardı. Zone’dan DMZ’ye yazılmış tek kural, adıyla iç bölümler içindi: “Ic bolumlerden DMZ web”, yani kural 6. Misafir ağındaki bir cihazdan DMZ’deki web sunucusuna istek attım:
... func=print_pkt_detail line=5845 msg="vd-root:0 received a packet(proto=6, 10.34.60.10:48206->10.34.80.10:80) tun_id=0.0.0.0 from misafir. flag [S], seq 3241048444, ack 0, win 64240"
...
... func=fw_forward_handler line=881 msg="Allowed by Policy-6:"İstek 200 aldı. Kimse misafire DMZ’yi açan bir kural yazmamıştı. Misafir, iç bölümler için yazılmış kuraldan, zone’a eklenmiş olduğu için geçti. Satır başlarındaki tarih ve iz numarası kısaltıldı.
FortiGate’te Zone ve DMZ Düzeni Nasıl Olmalı?
Zone’a yalnız aynı güven düzeyindeki ve aynı kurallara tabi arayüzler girer. Zone içi trafik fabrika ayarındaki gibi kapalı kalır; zone içindeki iki bölüm arasında geçiş gerekiyorsa o geçiş için ayrı bir kural yazılır.
Bölgeler arasında yalnız gereken servisler açılır ve geri kalan her şey reddedilip loglanır. DMZ’de yalnız dışarıya hizmet veren sunucular durur ve DMZ’den iç ağa başlatılan bağlantıya kural yazılmaz.
Bu düzeni iki kaynak birlikte tarif ediyor:
- NSA, Network Infrastructure Security Guidance (Mart 2022 sürümü):
- Bölüm 2.1: dışarıdan erişilen sistemler bir ya da daha çok DMZ alt ağına konur.
- Bölüm 2.2: iş istasyonları, sunucular, yazıcılar ve telefonlar ayrı alt ağlarda tutulur. Aralarındaki cihazda yalnız gereken port ve protokollere izin verilir.
- Bölüm 2.4: kural seti yalnız gerekeni açar, gerisini tek bir retle kapatır ve reddedilen trafik loglanır.
- NIST, SP 800-41 Rev. 1 (Eylül 2009), bölüm 3.1 ve 3.4: dışarıya açık web ve e-posta sunucuları DMZ’de durur. DMZ ile korunan ağ arasındaki trafik firewall’dan geçer ve kurallara tabidir; hangi servisin DMZ’de, hangisinin içeride duracağı ayrıca düşünülür.
Lab’ın bölge düzeni, düzeltildikten sonra şöyle. Tablo her bölgenin kendisinin başlatabildiği bağlantıyı gösteriyor:
| Bölge | İçindeki arayüzler | İnternete bağlantı başlatabilir mi? | Öbür bölgelere bağlantı başlatabilir mi? |
|---|---|---|---|
ic-bolumler (zone) | muhasebe, depo | Evet, kural 5 ile, bütün servisler | Yalnız DMZ’deki web sunucusuna, yalnız HTTP ile (kural 6) |
misafir | Yalnız kendisi, zone’da değil | Evet, kural 11 ile, yalnız DNS, HTTP ve HTTPS | Hayır, kural yok |
dmz | Yalnız kendisi | Hayır, kural yok | Hayır, kural yok |
Tabloyu okurken iki şeyi bilmek gerekiyor:
- “Kural yok”, ret demektir. FortiGate kural listesinde eşleşen bir kural bulamayınca bağlantıyı listenin sonundaki görünmeyen ret kuralıyla düşürür. Logda bu
policy 0olarak görünür. - Bağlantıyı başlatan taraf, ilk paketi gönderen taraftır. Kural bu tarafa yazılır, karşı tarafın cevabı aynı bağlantının parçası olarak kendiliğinden döner. Bu yüzden
muhasebe’deki bir bilgisayar DMZ’deki sunucudan sayfa alabilir, ama sunucumuhasebe’deki bilgisayara kendisi bağlantı başlatamaz.
Tablonun ikinci satırı, misafirin neden zone’da olmadığını gösteriyor: dışarıya çıkışı bile iç bölümlerinkinden dar.
Hangi Arayüz Aynı Zone’a Girer?
NSA ve NIST bir sayı vermiyor, ölçüt veriyor: güven düzeyi ve izin verilen trafik aynı olan bölümler. Pratikte bir arayüzü zone’a eklemeden önce üç soru sorulur:
- Zone’un çıkış kurallarının hepsi bu bölüme de uygun mu? Misafir için cevap hayırdı: kural 6 iç bölümler içindi.
- Zone’a ileride yazılacak kurallar bu bölüme de uygun olacak mı? Zone’a yazılan her yeni kural, zone’daki arayüzlerin hepsine birden açılır.
- Bu bölüm zone’daki öbür bölümlerle aynı ağ türünde mi? Kullanıcı ağı, sunucu ağı ve misafir ağı NSA’nın 2.2’deki ayrımına göre farklı türlerdir.
Bölümlerin hangi güven düzeyinde olduğunu ağ segmentasyonu yazımızdaki erişim matrisi belirler; zone o matrisin firewall’daki karşılığıdır.
Zone’a Girmek Kuralları Devralmaktır
Bir oyun düşünün: takımın kurallarını değil, takımın kendisini seçersiniz. Takıma giren her oyuncu, takım için yazılmış bütün kurallara o andan itibaren uyar; yeni oyuncu için kural yeniden yazılmaz.
Bu sahneyi dört parça kuruyor:
- Zone, örnekteki duvardır; içine alınan şeritleri tek bir grup yapar.
- Zone’a eklenen arayüz duvarın içindeki şerittir.
- Zone’a yazılan kural duvarın çıkışındaki talimattır; duvarın içindeki her şeride uygulanır.
- Zone içi anahtar (Block intra-zone traffic) duvarın içindeki şeritler arasındaki geçitlerin kapalı tutulmasıdır.
Örnekteki sınır kapısında duvarın içine yeni bir şerit eklendiğinde görevli talimat listesini yeniden yazmaz; şerit çıkıştaki her talimata kendiliğinden uyar. Aynı şey tersinden de geçerlidir: o şeride uymaması gereken bir talimat da artık onun için geçerlidir. Mekanizma şöyle işliyor:
- Kural zone’a yazılır: kaynak arayüz
ic-bolumler. - Arayüz zone’a eklenir:
append interface. - Paket geldiğinde FortiGate arayüzün zone’unu bulur ve kuralları zone üzerinden arar.
- Zone’a yazılmış her kural o arayüzün trafiğine de uygulanır; arayüz için ayrıca bir şey yazılmaz.
Kazanç ve bedel aynı mekanizmadan geliyor. Kazanç: yeni bir iç bölüm zone’a eklendiğinde kural setine dokunmadan doğru kuralları alır. Bedel: zone’a yanlış bölüm girerse, kimsenin onun için yazmadığı kuralları da alır. Bu yüzden bir arayüzü zone’a eklemek, kural yazmak kadar dikkat ister.
FortiGate’te Zone Oluşturma ve Düzenleme
Bu adımdan önce iki şey hazır olmalı:
- Bölümlerin güven düzeyi kararı. Yukarıdaki üç soru; lab’da
muhasebevedepoaynı zone’a,misafirdışarıya. - Zone’a girecek arayüzlerin kural durumu. Zone’a girecek arayüz başka bir kuralda tek başına kullanılıyorsa önce o kuraldan çıkarılır.
Zone Network → Interfaces → Create New → Zone ile açılır; var olan zone listede çift tıklanarak düzenlenir. Formda dört alan var:
- Name:
ic-bolumler. Zone’un adı sonradan değiştirilemediği için baştan anlamlı verilir. - Block intra-zone traffic: fabrika ayarında açık. Zone içindeki arayüzler arasındaki trafiği reddeder; açık kalır.
- Interface members: zone’a girecek arayüzler; lab’da
depovemuhasebe.misafir’i buradan çıkardım. - Comments: isteğe bağlı açıklama.
Interface members seçicisinde depo, muhasebe, misafir, yonetim (port1), ic-ag (port2) ve yedek-hat vardı, ama personel, dmz ve dis-ag (port3) yoktu. Bu üçü lab’daki kurallarda tek başına kullanılıyor. ic-ag (port2) ise VLAN yazısında kuralları personel’e taşındığı için listeye girdi. Kaydedince cihaz zone’u şöyle yazdı:
config system zone
edit "ic-bolumler"
set description ''
set intrazone deny
set interface "depo" "muhasebe"
next
endset intrazone deny, formdaki Block intra-zone traffic anahtarının komut satırı karşılığı. Bu satır kısa show çıktısında görünmüyor, çünkü fabrika değeri; yalnız show full-configuration gösteriyor.
CLI’da Zone’a Arayüz Eklemek: set Değil append
Komut satırındaki farkı da ölçtüm. Zone’da depo ve muhasebe varken set interface "muhasebe" yazdım ve baktığımda zone’da yalnız o kalmıştı:
config system zone
edit "ic-bolumler"
set interface "muhasebe"
next
endset, arayüz listesini baştan yazıyor ve depo zone’dan sessizce düştü. Zone’daki arayüzleri koruyarak eklemek append ile yapılıyor:
config system zone
edit "ic-bolumler"
append interface "depo"
next
endBundan sonra zone’da yeniden iki arayüz vardı (set interface "muhasebe" "depo"). Zone’a bağlı kurallar bu listeye göre çalıştığı için yanlış bir set satırı, düşen arayüzün trafiğini o an keser; bir sonraki bölümde bunu ölçtüm.
Zone’a Kural Yazmak: Zone’a Giren Arayüz Kuralı Devralır
Zone’un asıl işi, dışarıya giden kuralı sadeleştirmek. ic-bolumler’den dış ağa tek bir kural var. Arayüzde yol Policy & Objects → Firewall Policy → Create New:
- Name:
Ic bolumler dis aga. - Incoming Interface: zone’un kendisi,
ic-bolumler. Listede zone, arayüzlerle birlikte durur ve ondan önce zone simgesiyle ayrılır. Üye arayüzler (muhasebe,depo) listede tek başına çıkmaz. - Outgoing Interface: dış ağ.
- Source, Destination ve Service: iç bölümlerin internete ne için çıkacağı.
- NAT: açık, internete özel adresle çıkılmaz.
Ekran kuralın bugünkü hâli: rehberin sonraki adımlarında dış ağ port3’ten dis-hatlar zone’una taşındı ve servisler HTTP, HTTPS ve PING ile daraltıldı (statik rota ve policy yazıları). Bu adımdaki ölçüm aşağıdaki hâliyle yapıldı:
config firewall policy
edit 5
set name "Ic bolumler dis aga"
set srcintf "ic-bolumler"
set dstintf "port3"
set action accept
set srcaddr "all"
set dstaddr "all"
set schedule "always"
set service "ALL"
set nat enable
next
enddepo yanlış set satırıyla zone’dan düşmüşken iki VLAN’dan dış ağdaki aynı adrese ping attım:
... trace_id=65 func=print_pkt_detail line=5845 msg="vd-root:0 received a packet(proto=1, 10.34.70.10:1978->203.0.113.80:2048) tun_id=0.0.0.0 from muhasebe. type=8, code=0, id=1978, seq=1."
... trace_id=65 func=fw_forward_handler line=881 msg="Allowed by Policy-5: SNAT"
... trace_id=66 func=print_pkt_detail line=5845 msg="vd-root:0 received a packet(proto=1, 10.34.90.10:1981->203.0.113.80:2048) tun_id=0.0.0.0 from depo. type=8, code=0, id=1981, seq=1."
... trace_id=66 func=fw_forward_handler line=719 msg="Denied by forward policy check (policy 0)"muhasebe kural 5’le geçti, zone dışındaki depo policy 0’a takıldı. depo’yu append ile geri ekledim ve kurala hiç dokunmadan aynı pingi tekrarladım:
... trace_id=86 func=print_pkt_detail line=5845 msg="vd-root:0 received a packet(proto=1, 10.34.90.10:2048->203.0.113.80:2048) tun_id=0.0.0.0 from depo. type=8, code=0, id=2048, seq=1."
... trace_id=86 func=fw_forward_handler line=881 msg="Allowed by Policy-5: SNAT"Zone’a giren arayüz, zone’a yazılmış kuralı kendiliğinden devraldı. İzlerin arasında FortiGate’in kendi adresinden (203.0.113.1) her saniye aynı hedefe giden ping’ler de vardı: statik rota yazısındaki hat izleme; onları çıkardım.
Misafiri Zone’dan Çıkarmak: Kendi Kuralı, Kendi Sınırı
Misafir zone’dan çıkınca kural 5’i de kaybetti, yani internete çıkışını da. Ona yalnız gereken servisleri açan ayrı bir kural yazdım. Formda (Policy & Objects → Firewall Policy → Create New) üç alan bu kuralın sınırını çiziyor:
- Incoming Interface:
misafir. Zone’da olmadığı için arayüzün kendisi seçiliyor. - Outgoing Interface: yalnız dış ağ. Hedef arayüz listesinde
ic-bolumlervedmzyok, misafirin iç bölümlere giden kuralı hiç yazılmıyor. - Service:
DNS,HTTPveHTTPS. Misafir cihazının internette ad çözmesi ve web’e çıkması için yeterli, geri kalan her servis kapalı.
Ekranda dış ağ bugünkü adıyla (dis-hatlar) görünüyor. Kuralın bu adımdaki hâli:
config firewall policy
edit 11
set name "Misafir internet cikisi"
set srcintf "misafir"
set dstintf "port3"
set action accept
set srcaddr "all"
set dstaddr "all"
set schedule "always"
set service "DNS" "HTTP" "HTTPS"
set nat enable
set comments "Misafir yalniz internete; ic bolumler ve DMZ kapali"
next
endAynı misafir cihazından iki istek attım. İnternetteki web sunucusu 200 döndü, DMZ’deki sunucuya giden istek ise artık düştü:
... func=print_pkt_detail line=5845 msg="vd-root:0 received a packet(proto=6, 10.34.60.10:42062->10.34.80.10:80) tun_id=0.0.0.0 from misafir. flag [S], seq 2359346692, ack 0, win 64240"
... func=fw_forward_handler line=719 msg="Denied by forward policy check (policy 0)"
...
... func=print_pkt_detail line=5845 msg="vd-root:0 received a packet(proto=6, 10.34.60.10:46586->203.0.113.66:80) tun_id=0.0.0.0 from misafir. flag [S], seq 1911239967, ack 0, win 64240"
... func=fw_forward_handler line=881 msg="Allowed by Policy-11: SNAT"Kural 11 misafire iç bölümlerin kural 5’inden de dar bir çıkış veriyor. NSA’nın 2.4’teki “yalnız gereken” ilkesi misafir için daha da sıkıdır. Misafir ağının DHCP ve DNS düzenini DHCP sunucusu yazımızda anlattık.
FortiGate Zone İçi Trafik: Block Intra-zone Traffic
Aynı zone’daki iki VLAN birbirine ulaşıyor mu? Fabrika ayarında (intrazone deny) muhasebe’den depo’ya ping attım ve paketin yolunu debug flow ile izledim:
... trace_id=45 func=print_pkt_detail line=5845 msg="vd-root:0 received a packet(proto=1, 10.34.70.10:64516->10.34.90.10:2048) tun_id=0.0.0.0 from muhasebe. type=8, code=0, id=64516, seq=1."
... trace_id=45 func=vf_ip_route_input_common line=2605 msg="find a route: flag=04000000 gw-10.34.90.10 via depo"
... trace_id=45 func=fw_forward_handler line=719 msg="Denied by forward policy check (policy 0)"Sonuç VLAN yazısındakiyle aynı: aynı zone’da olmak iki VLAN’ı birbirine açmıyor. Sonra anahtarı kapattım (set intrazone allow) ve aynı pingi attım:
... trace_id=49 func=print_pkt_detail line=5845 msg="vd-root:0 received a packet(proto=1, 10.34.70.10:1926->10.34.90.10:2048) tun_id=0.0.0.0 from muhasebe. type=8, code=0, id=1926, seq=1."
... trace_id=49 func=init_ip_session_common line=6024 msg="allocate a new session-0004130e, tun_id=0.0.0.0"
... trace_id=49 func=vf_ip_route_input_common line=2605 msg="find a route: flag=04000000 gw-10.34.90.10 via depo"
... trace_id=49 func=fw_forward_handler line=881 msg="Allowed by Policy-4294967295:"Ping geçti. Onu geçiren kuralın numarası 4294967295, yani 32 bitlik bir sayının alabileceği en büyük değer. Bu numaralı bir kural listede yok; FortiGate zone içi serbest trafik için kendi içinde tuttuğu, görünmeyen bir kuralı kullanıyor. Anahtarın bir servis seçimi de yok: formda yalnız aç ve kapa var, açılan geçiş zone içindeki bütün trafiği kapsıyor.
Trafik logunda bu hedefe giden kayıtlara baktım. Anahtar açıkken reddedilen iki deneme oradaydı, anahtar kapatıldıktan sonra geçen ping’ler ise hiç yoktu:
1: date=2026-10-01 time=13:36:35 ... srcip=10.34.70.10 ... srcintf="muhasebe" ... dstip=10.34.90.10 ... dstintf="depo" ... action="deny" policyid=0 ...
2: date=2026-10-01 time=13:36:34 ... srcip=10.34.70.10 ... srcintf="muhasebe" ... dstip=10.34.90.10 ... dstintf="depo" ... action="deny" policyid=0 ...Yani Block intra-zone traffic kapatıldığında zone içindeki arayüzler birbirine servis seçilmeden açılıyor, bunu gösteren bir kural satırı olmuyor ve trafik loga düşmüyor. NSA’nın 2.4’teki iki şartı da (yalnız gerekeni açmak, reddedileni loglamak) böylece kaybolur.
Zone içindeki iki bölüm arasında geçiş gerekiyorsa anahtarı kapatmak yerine o geçiş için ayrı bir kural yazılır; hem neyin açıldığı hem de log görünür kalır. Ölçümden sonra anahtarı fabrika ayarına geri aldım.
Örnek: muhasebe depodaki etiket yazıcısına yazdıracak, başka hiçbir şeye ihtiyacı yok. Kuralın iki arayüzü de zone’un kendisi, geçişi adres ve servis daraltır (Policy & Objects → Firewall Policy → Create New):
- Name:
Muhasebeden depo yazicisina. - Incoming Interface ve Outgoing Interface: ikisi de
ic-bolumler. - Source: muhasebenin ağı,
n-muhasebe. - Destination: yalnız yazıcı,
h-depo-etiket-yazici. - Service: yalnız yazdırma portu,
s-tcp-9100-yazdirma(TCP 9100). - NAT: kapalı.
- Log Allowed Traffic: All Sessions, her yazdırma oturumu loga düşsün.
Formu bu yazı için kaydetmeden doldurdum: lab cihazının değerlendirme lisansı en fazla 10 kurala izin veriyor ve liste dolu. Adres ve servis nesneleri adres nesneleri yazımızda açıldı. Komut satırındaki karşılığı:
config firewall policy
edit 0
set name "Muhasebeden depo yazicisina"
set srcintf "ic-bolumler"
set dstintf "ic-bolumler"
set action accept
set srcaddr "n-muhasebe"
set dstaddr "h-depo-etiket-yazici"
set schedule "always"
set service "s-tcp-9100-yazdirma"
set logtraffic all
next
endAnahtar kapalıyken görünmeyen geçiş, bu kuralla listede adı olan ve loga düşen bir satır olur.
Örnekteki sınır kapısında anahtarı kapatmak, duvarın içindeki şeritler arasına kayıtsız bir geçit açmaktır: geçen araçlar ne talimat listesinde görünür ne de tutanağa yazılır.
FortiGate’te DMZ: Rol ve Yön
DMZ’nin neden ayrı bir bölge olduğunu firewall nedir yazımızın DMZ bölümünde anlattık. Lab’da DMZ, dmz adlı VLAN 80 arayüzü; Role satırında DMZ seçili:
Rolün değiştirdiği şey arayüz formu oldu. LAN rolündeki depo’nun formunda DHCP Server, Security mode ve Auto-managed by IPAM vardı; DMZ rolündeki dmz’nin formunda üçü de yoktu. Güvenlik ayrımını rol yapmıyor; onu, bölgeler arasında hangi yöne kural yazıldığı yapıyor.
DMZ’de bir web sunucusu (10.34.80.10) duruyor. İç bölümlerden ona yalnız HTTP açık ve kuralın hedefi DMZ’nin tamamı değil, sunucunun kendisi. Önce sunucu için bir adres nesnesi açılır (Policy & Objects → Addresses → Create New → Address, h-dmz-web, 10.34.80.10/32), sonra kural (Firewall Policy → Create New):
- Incoming Interface:
ic-bolumler, Outgoing Interface:dmz. - Destination:
h-dmz-web. DMZ’nin bütün ağı değil, yalnız bu sunucu. - Service: yalnız
HTTP. - NAT: kapalı. İç bölümler DMZ’ye kendi adresleriyle gider, sunucunun logu isteği yapan makineyi gösterir.
Nesnenin ve kuralın komut satırındaki karşılığı:
config firewall address
edit "h-dmz-web"
set comment "DMZ web sunucusu"
set subnet 10.34.80.10 255.255.255.255
next
end
config firewall policy
edit 6
set name "Ic bolumlerden DMZ web"
set srcintf "ic-bolumler"
set dstintf "dmz"
set action accept
set srcaddr "all"
set dstaddr "h-dmz-web"
set schedule "always"
set service "HTTP"
next
endHedef önceden all idi; DMZ’ye ileride konacak her sunucuya HTTP’yi açık bırakıyordu. Adres nesnelerinin adlandırılmasını adres nesneleri yazımızda anlattık. İki yönü denedim:
... func=print_pkt_detail line=5845 msg="vd-root:0 received a packet(proto=6, 10.34.70.10:38152->10.34.80.10:80) tun_id=0.0.0.0 from muhasebe. flag [S], seq 1905055268, ack 0, win 64240"
... func=fw_forward_handler line=881 msg="Allowed by Policy-6:"
...
... func=print_pkt_detail line=5845 msg="vd-root:0 received a packet(proto=6, 10.34.80.10:44520->10.34.70.10:80) tun_id=0.0.0.0 from dmz. flag [S], seq 1518329069, ack 0, win 64240"
... func=fw_forward_handler line=719 msg="Denied by forward policy check (policy 0)"muhasebe’den DMZ’deki sunucuya istek kural 6’yla geçti ve sunucu 200 döndü. DMZ’deki sunucudan muhasebe’deki bir bilgisayara başlatılan bağlantı ise zaman aşımına düştü; trafik logunda aynı bağlantının dört denemesi de reddedilmiş olarak duruyor. İlki:
1: date=2026-10-01 time=14:24:08 ... srcip=10.34.80.10 srcport=44520 srcintf="dmz" srcintfrole="dmz" dstip=10.34.70.10 dstport=80 dstintf="muhasebe" dstintfrole="lan" ... action="deny" policyid=0 policytype="policy" ...DMZ’nin koruması budur: sunucu ele geçirilse bile iç ağa başlatacağı bağlantı için bir kural yoktur ve her deneme logda iz bırakır. Bu yön için kural yazılmaz. DMZ’deki sunucuyu internete açmak ise ayrı bir iştir; dışarıdan gelen isteği sunucuya ulaştıran Virtual IP’yi FortiGate kullanım rehberimizde anlattık.
Örnekteki sınır kapısında DMZ, kapının dışındaki gümrük antreposudur: içeriden antrepoya gidilebilir, antrepodan içeriye talimatsız kimse giremez.
Doğrulama: FortiGate’in Bölge Düzeni Doğru mu?
Ayar bittiğinde beş şey kontrol edilir; her biri yukarıda lab’da ölçüldü:
- Zone’daki arayüzler aynı güven düzeyinde.
show full-configuration system zoneçıktısında misafir gibi farklı bir bölüm yoktur. - Zone içi kapalı. Aynı çıktıda
set intrazone denygörünür. Zone’daki iki arayüz arasındaki pingpolicy 0ile düşer. - Zone’a giren arayüz kuralı devralıyor. Zone’a yeni eklenen arayüzün trafiği
debug flowçıktısında zone’un kural numarasıyla geçer. - Misafirin kendi kuralı var. Misafirden DMZ’ye ve iç bölümlere giden istek
policy 0ile düşer, internete giden istek kendi kuralıyla geçer. - DMZ’den içeri kapalı. DMZ’deki sunucudan iç ağa başlatılan bağlantı
policy 0ile düşer ve logda ret olarak görünür.
Sonuç: FortiGate’te Zone Kuralı Sadeleştirir, Arayüz Seçimi Dikkat İster
Zone, arayüzleri tek bir ad altında toplar ve kuralı gruba yazdırır: zone’a giren VLAN, kurala dokunmadan zone’un kurallarını devralır. Doğru düzende zone’a yalnız aynı güven düzeyindeki bölümler girer, zone içi kapalı kalır, bölgeler arasında yalnız gereken servisler açılır ve DMZ’den içeri kural yazılmaz. Lab’da dört şey beklenenden farklı çıktı:
- Yanlış zone’a eklenen misafir DMZ’ye ulaştı. İç bölümler için yazılmış kural 6, aynı zone’daki misafire de uygulandı.
- Kurallarda kullanılan arayüzler zone formunda görünmedi. Kuralı başka arayüze taşınan port ise listeye girdi.
set interfacebir arayüzü sessizce düşürdü. Düşendepointernete çıkamadı;appendile geri eklenince kurala dokunmadan çıktı.- Zone içi anahtar kapanınca görünmeyen bir kural devreye girdi. 4294967295 numaralı kuralla geçen trafik logda hiç görünmedi.
Örnekteki sınır kapısında duvarın içindeki şeritler tek çıkışı ve tek talimatı paylaşır; bu yüzden duvarın içine yalnız aynı talimata uyması gereken şeritler alınır, aralarına da kayıtsız geçit açılmaz. Sıradaki adım, FortiGate’in bu bölgeler arasında paketleri nereye göndereceğini bilmesi, yani rehberin 12. adımı; açılış listesinin kalanı 20 adımlık kontrol listesinde duruyor.
FortiGate Firewall Zone ve DMZ Hakkında Sık Sorulan Sorular
BT Danışmanı | Ağ, Sistem ve Güvenlik Yönetimi
İlker Pehlivan, karmaşık BT altyapılarını ölçeklenebilir ve güvenli sistemlere dönüştürür. Buradaki rehberleri kendi laboratuvarında kurup ölçerek yazar.
LinkedInBenzer Makaleler
FortiGate Firewall Yapılandırma Rehberi: Kontrol Listesi
FortiGate Firewall yapılandırma rehberi: yeni bir cihazı konsoldan sıkılaştırmaya kadar 20 adımda canlıya almak; her adımın sırası, kimde gerektiği ve nedeni.
Kurumsal Firewall Kurulumu, Yönetimi ve Danışmanlığı
Kurumsal firewall kurulumu, yönetimi ve danışmanlığı: Fortinet, Palo Alto ve pfSense ile kural yönetimi, IPS/IDS, VPN ve sürekli izleme hizmeti sunuyoruz.
FortiGate Firewall Admin Hesabı: Yetki Profilleri
FortiGate Firewall admin hesabı: AD'den LDAPS ile yönetici girişi, tek yerel acil durum hesabı, prof_admin farkı ve salt okunur profil; NSA ve NIST ile.
FortiGate Firewall Firmware Güncelleme: Yükseltme Yolu
FortiGate Firewall firmware güncelleme: neden ve ne zaman yükseltilir, yükseltme yolu, yedek ve geri dönüş, HA kümesi. Cihazın 'up to date' demesi neden yetmez?
FortiGate Firewall Şifre Sıfırlama ve Fabrika Ayarları
FortiGate Firewall şifre sıfırlama lab'da: maintainer hesabı, factoryreset ile factoryreset2 farkı ve 7.2.4 sonrası parolası silinmiş yedekle kurtarma.
FortiGate Firewall Sıkılaştırma: Güvenlik Kontrol Listesi
FortiGate Firewall sıkılaştırma: Fortinet ve NSA'ya göre kontrol listesi; password policy, boşta kalma, SSH şifrelemesi, USB kurulum, maintainer hesabı.
Kurumsal Network Kurulumu altındaki diğer 114 makale
- FortiGate Firewall Sorun Giderme: Debug Flow ve Sniffer
- FortiGate Firewall Yedek Alma ve Geri Yükleme
- FortiGate Firewall Adres Nesneleri ve Adlandırma Standardı
- FortiGate Firewall DHCP Sunucusu: Kapsam ve Rezervasyon
- FortiGate Firewall DNS Ayarı: Ad Çözümleme ve DNS Sunucusu
- FortiGate Firewall İlk Kurulum: Konsol ve İlk Giriş
- FortiGate Firewall Log Ayarları: Disk, Syslog ve 5651
- FortiGate Firewall NAT Ayarı: IP Pool ve Central NAT
- FortiGate Firewall NTP Ayarı: Saat Dilimi ve Zaman Sunucusu
- FortiGate Firewall Policy Yapılandırması: Kural Seti
- FortiGate Firewall SNMP Ayarı: İzleme Sistemine Bağlamak
- FortiGate Firewall Statik Rota Yapılandırması
- FortiGate Firewall VLAN Yapılandırması: Alt Arayüz ve Trunk
- FortiGate Firewall WAN Ayarı: Statik IP, DHCP ve PPPoE
- FortiGate Firewall Yönetim Erişimi: HTTPS ve Trusted Host
- Alan Adı Güvenliği: Transfer Kilidi, Yenileme ve WHOIS
- DNS Önbelleği Temizleme: flushdns, Chrome ve DNS Sunucusu
- Mail Başlığı Nasıl Okunur? From, Return-Path ve Received
- SPF, DKIM ve DMARC Nedir? Mail Kimliği Nasıl Doğrulanır?
- FortiGate Firewall Active Directory Entegrasyonu: LDAP
- FortiGate Firewall Antivirüs Profili: Flow ve Proxy Farkı
- FortiGate Firewall Bant Genişliği Sınırlama: Traffic Shaping
- FortiGate Firewall BGP Yapılandırması: Komşuluk ve Duyuru
- FortiGate Firewall HA Yapılandırması: FGCP ile İki Cihaz
- FortiGate Firewall IPS Yapılandırması: Sensör ve İmzalar
- FortiGate Firewall IPsec VPN: Şubeler Arası Tünel
- FortiGate Firewall İleri Seviye Rehberi: VPN, SD-WAN ve BGP
- FortiGate Firewall RADIUS: Merkezi Yönetici Girişi
- FortiGate Firewall SD-WAN: Yedek Hat ve Performans SLA
- FortiGate Firewall SSL Inspection: Derin Denetim ve Muafiyet
- FortiGate Firewall Uygulama Kontrolü: Uygulama Engelleme
- FortiGate Firewall Uzaktan Erişim VPN: IPsec ve FortiClient
- FortiGate Firewall Web Filtre: Kategori ve Güvenli Arama
- PPPoE Nedir? Modem Köprü Modu ve Çift NAT
- Yönlendirme Tablosu Nedir? Statik ve Varsayılan Rota
- Firewall Nedir? Güvenlik Duvarı Nasıl Çalışır?
- FortiGate Firewall Nasıl Kullanılır? Günlük Yönetim Rehberi
- Ethernet Nedir? Çerçeve Yapısı, Hızlar ve Kablo Çiftleri
- Full Duplex ve Half Duplex Nedir? Tam ve Yarım Çift Yön
- Switch 802.1X Yapılandırması: MAB ve İzleme Kipi
- Switch DHCP Snooping Yapılandırması: Trust ve Hız Sınırı
- Switch Port Teşhisi: Duplex Uyuşmazlığı ve Kablo Testi
- LACP Nedir? Link Aggregation ve Port Channel Farkı
- Layer 3 Switch Nedir? SVI ve VLAN'lar Arası Yönlendirme
- LLDP Nedir? Komşu Keşfi, LLDP-MED ve CDP Farkı
- Switch LACP Yapılandırması: Port Channel Nasıl Kurulur?
- Switch LLDP Yapılandırması: Port Tespiti ve Güvenlik
- Switch SNMP Yapılandırması: SNMPv3, Trap ve Inform
- Switch Syslog Ayarı: Log Sunucusu, Seviye ve Komut Kaydı
- Switch VLAN Yapılandırması: VLAN Oluşturma ve Port Atama
- Switch'te VLAN'lar Arası Yönlendirme: SVI Yapılandırması
- Ağ Segmentasyonu Nedir? VLAN Planı Nasıl Yapılır?
- BPDU Guard Nedir? PortFast, Root Guard ve Storm Control
- Spanning Tree (STP) Nedir? RSTP, BPDU ve Ağ Döngüsü
- Switch ACL Yapılandırması: Yönetim Erişimini Daraltmak
- Switch Nedir, Ne İşe Yarar? Çeşitleri ve Router Farkı
- Switch Sıkılaştırma: Yönetim, Kontrol ve Veri Düzlemi
- Switch Yapılandırma Yedeği: Elle ve Otomatik Yedekleme
- Switch RADIUS Yapılandırması: NPS ile Yönetici Girişi
- Switch DNS Server Ayarı: Name Server ve Alan Adı
- Switch SSH Yapılandırması: Telnet ve HTTP'yi Kapatmak
- Management VLAN Nedir? Yönetim Ağını Kullanıcıdan Ayırmak
- Switch TACACS+ Yapılandırması: Giriş, Komut Yetkisi ve Kayıt
- Switch NTP Server Ayarı: Saati İç NTP Sunucusuna Bağlamak
- Switch Yapılandırma Rehberi: Adım Adım Kontrol Listesi
- Switch'e Konsoldan Bağlanmak: Konsol Kablosu ve PuTTY
- Switch'te Yerel Yönetici Hesabı: Kullanıcı, Yetki ve Parola
- TACACS+ Nedir? RADIUS Farkı ve Linux'ta TACACS+ Sunucusu
- VPN Nedir? Site-to-Site, Uzaktan Erişim ve IPsec
- VRRP Nedir? Sanal IP ile Varsayılan Ağ Geçidini Yedeklemek
- Yönetilebilir Switch Ayarları: Ad, IP ve VLAN Planı
- Bulut Santral: Özellik Seçimi, Devreye Alma ve Geçiş
- IP Santral Kurulumu: Dahili Planı, Çağrı Akışı ve Ağ
- Kartlı Geçiş Sistemi Kurulumu: PDKS, Turnike ve Dizin
- Kurumsal İnternet Hattı: Tarife, Statik IP ve Yedek Hat
- SIP Trunk ve İş Telefon Hattı: Numara Taşıma
- IP Kamera Sistemi Kurulumu: Ağ, Kayıt ve KVKK
- Ağ Erişim Kontrolü: 802.1X, NAC ve Çok Faktörlü Doğrulama
- Fiber Optik Kablolama: Çekim, Sonlandırma ve Ölçüm Raporu
- Sistem Odası Kurulumu: Kabinet Düzeni, Güç ve Soğutma
- Misafir Wi-Fi ve Hotspot Kurulumu: Captive Portal ve 5651
- Network Danışmanlığı: Ağ Analizi, Optimizasyon ve QoS
- Şubeler Arası Bağlantı: SD-WAN, Metro Ethernet, Yedekli Hat
- Kurumsal Wi-Fi Kurulumu: Isı Haritası, Access Point ve Test
- Yapısal Kablolama Hizmeti: Keşif, Montaj ve Test Raporu
- Yapısal Kablolama ve Zayıf Akım: Kurumsal Bina Altyapısı
- IMAP Nedir, POP3 Nedir? Aralarındaki Fark
- SMTP Nedir? Mail Nasıl Gönderilir ve Neden Gitmez?
- TLS Nedir? SSL ile Farkı, Sürüm Pazarlığı ve Ölçümü
- FTP, FTPS ve SFTP Nedir? Aralarındaki Fark
- Syslog Nedir? Facility, Severity ve 514 Portu
- TFTP Nedir? Port 69, Switch Yedeği ve PXE
- NAT Nedir? Ağ Adresi Çevirisi Nasıl Çalışır?
- RDP Nedir? Uzak Masaüstü Protokolü ve Güvenliği
- SNMP Nedir? MIB, OID ve Trap Mekanizması
- ICMP Nedir? Ping, TTL ve Tracert Komutu
- VLAN Nedir? 802.1Q Etiketi, Access ve Trunk Farkı
- ARP Nedir? MAC Adresi, ARP Tablosu ve Spoofing
- IP Adresi Nedir? Subnet Maskesi, CIDR ve IPv6
- Port Nedir? TCP ve UDP Farkı, Bağlantı Arızası Tespiti
- SSH Nedir? Şifreli Yönetim ve Anahtar Tabanlı Giriş
- Telnet Nedir? Şifresiz Yönetim Protokolü ve Riskleri
- NFS Nedir? NAS ve Sanallaştırmada Dosya Paylaşımı
- HTTP ve HTTPS Nedir? Aradaki Fark ve Şifreleme
- RADIUS Sunucusu Nedir? 802.1X ile Ağ Kimlik Doğrulama
- LDAP ve LDAPS Nedir? Dizin Sorgulama ve 636 Portu
- SMB Nedir? Port 445, Dosya Paylaşımı ve SYSVOL
- Kerberos Nedir? Kimlik Doğrulama ve Bilet Mantığı
- DNS Nedir, Nasıl Çalışır? Kayıt Türleri ve TTL
- DHCP Nedir? Ağda IP Adresi Nasıl Dağıtılır?
- Kurumsal Ağ Protokolleri: DHCP'den LDAP'a
- NTP Nedir? Kurumsal Ağda Saat Senkronizasyonu
- Kurumsal Kablosuz Ağ Tasarımı: Survey'den Kuruluma
- Switch Kurulumu, VLAN ve Yönlendirici Yapılandırma Hizmeti
Ücretsiz Değerlendirme
Zone'larınıza giren bir VLAN, hiç yazmadığınız kuralları devralıyor mu? Birlikte bakalım.
İçindekiler
Ana Hizmet
Kurumsal Network Kurulumu