MikroTik Router Güvenliğini Sağlamlaştırma: Sahadan Gelen Pratik Rehber

MikroTik Router Güvenliğini Sağlamlaştırma: Sahadan Gelen Pratik Rehber
Photo by KeepCoding / Unsplash

Ağ güvenliği denildiğinde akla ilk gelen şey genellikle firewall kuralları olsa da, gerçek güvenlik çok daha derinlerde başlıyor. MikroTik cihazlarınız dünya çapında milyonlarca kullanıcının tercih ettiği güçlü router'lar, ancak varsayılan yapılandırmalarıyla tehdit aktörleri için cazip hedefler haline gelebiliyorlar. Bu rehberde, RouterOS'u sıfırdan sağlamlaştırmak için gerçek dünya deneyimlerinden yola çıkan, uygulanabilir adımları bulacaksınız.

Temeli Sağlam Tutun: RouterOS Güncellemeleri

Güvenliğin ilk kuralı basit: Güncel kalın. Eski RouterOS sürümleri bilinen zafiyetler içerebilir ve bu zaafiyetlerin birçoğu düzeltilmiş durumda. WinBox veya WebFig üzerinden "check for updates" butonuna basarak cihazınızı güncelleyin.

Ancak burada dikkatli olun. Her güncelleme hemen uygulanmamalı. Yeni bir sürüm çıktığında birkaç hafta bekleyin, topluluğun geri bildirimlerini izleyin. MikroTik'in [güvenlik duyuru blogu](https://blog.mikrotik.com) kritik açıklamalar için takip etmeniz gereken ilk kaynak olmalı. Güncelleme yapmadan önce mutlaka yedek alın - bunu ileride detaylandıracağız.

# Güncelleme kontrolü
/system package update check-for-updates

Eski bir zafiyet olan CVE-2018-14847, hala internette savunmasız cihazlarla karşılaşılabildiğini gösteriyor. Bu zafiyet 6.42 sürümüne kadar olan tüm versiyonları etkiliyor ve Winbox portu (8291) üzerinden yetkisiz dosya erişimine izin veriyor. 6.42'nin üzerinde bir sürüme geçtiğinizde bu sorun ortadan kalkıyor.

Kale Kapısı: Erişim Kontrolü

Varsayılan Kullanıcı Adı: İlk Savunma Hattı

Cihazınıza fiziksel erişimi olan herkesin bildiği bir şey var: varsayılan kullanıcı adı `admin`. Bu bilgiyi değiştirmek, savunmanızın ilk katmanı. Yeni bir kullanıcı oluşturun, ona tam yetki verin ve ardından admin hesabını devre dışı bırakın.

/user add name=myname password=mypassword group=full
/user disable admin

Şifre: Zincirin En Zayıf Halkası

Şifre güvenliği söz konusu olduğunda orta yol yok. Minimum 12 karakter, sayılar, semboller, büyük-küçük harfler içeren bir şifre kullanmalısınız. Sözlük kelimelerinden uzak durun. Bir şifre oluşturucu aracı kullanmak en mantıklı yaklaşım.

/user set myname password="!={Ba3N!40TуX+GvKBz?jTLIUcx/,"

Şifrenizde tırnak işareti kullanıyorsanız, escape karakteri eklemeyi unutmayın. RouterOS bu konuda oldukça titiz.

SSH: Şifrelerden Öteye

SSH erişimini kullanıyorsanız, güçlü kripto ayarlarını etkinleştirin. Bu, AES-128-CTR şifrelemesini aktif eder ve zayıf SHA-1 tabanlı HMAC'leri ve grupları devre dışı bırakır.

/ip ssh set strong-crypto=yes

Eğer SSH anahtar girişi yapılandırdıysanız, şifre ile girişi tamamen kapatabilirsiniz. Bu, brute-force saldırılarına karşı en etkili savunma.

/ip ssh set always-allow-password-login=no

Uzaktan Erişim: VPN Yolu

Cihazınızı internete açmak istiyorsanız, doğrudan port forwarding yerine WireGuard VPN kullanın. WireGuard modern, hızlı ve güvenli bir protokol. Port forwarding, port tarayıcıların kolayca tespit edebileceği açık kapılar bırakıyor. Bir cihaz ele geçirildiğinde, saldırgan doğrudan iç ağınıza sızabilir.

WireGuard kurulumu ile ilgili MikroTik'in resmi dökümanlarını inceleyin. VPN üzerinden yönetim erişimi, güvenlik ve esneklik arasında mükemmel bir denge sunuyor.

Gereksiz Servisleri Kapat: Saldırı Yüzeyini Minimize Et

RouterOS varsayılan olarak birçok servisi aktif tutar. Kullanmadığınız her servis, potansiyel bir giriş noktası demek.

MAC-Server Servisleri

MikroTik'in kendine özgü bir özelliği olan MAC-server servisleri, cihaza IP adresi olmadan Layer 2 üzerinden erişim sağlıyor. Bu, ilk yapılandırma için faydalı olsa da, üretim ortamında gereksiz bir risk.

/tool mac-server set allowed-interface-list=none
/tool mac-server mac-winbox set allowed-interface-list=none
/tool mac-server ping set enabled=no

Eğer MAC-Winbox erişimine ihtiyacınız varsa, sadece güvenli LAN arayüzlerinde aktif edin. Hiçbir zaman WAN tarafında bu servisleri açık bırakmayın.

/tool mac-server mac-winbox set allowed-interface-list=LAN

Neighbor Discovery: Görünmez Olmak

MikroTik komşu keşif protokolü, ağdaki diğer MikroTik cihazlarını gösteriyor. Bu bilgi, bir saldırgan için ağ topografyasını anlamada kritik olabilir. Tüm arayüzlerde devre dışı bırakın.

/ip neighbor discovery-settings set discover-interface-list=none

VoIP uygulamalarında Discovery protokollerinin gerekli olabileceğini unutmayın. Altyapınıza göre sadece gerekli arayüzlerde aktif edin.

Bandwidth Server: Gereksiz Yük

Bandwidth server, iki MikroTik cihaz arasında hız testi yapmak için kullanılıyor. Aktif olduğunda, yetkisiz kullanıcılar yoğun bant genişliği testleri çalıştırarak ağınızı yavaşlatabilir veya DoS saldırısı düzenleyebilir.

/tool bandwidth-server set enabled=no

DNS Cache: Dikkatli Kullanın

DNS cache, istemci sorgularının çözüm süresini azaltıyor. Ancak router'ınız DNS sunucusu olarak kullanılmıyorsa veya bu görevi başka bir cihaz üstlendiyse, kapalı tutun.

/ip dns set allow-remote-requests=no

DNS portlarının (TCP/UDP 53) internet tarafında açık olmadığından emin olun. DNS üzerinden DDoS saldırıları oldukça yaygın. Birçok cihazda "Allow Remote Requests" seçeneği işaretli geliyor ve bu, router'ınızı istemeden DNS sunucusu haline getiriyor.

Diğer Gereksiz Servisler

/ip proxy set enabled=no
/ip socks set enabled=no
/ip upnp set enabled=no
/ip cloud set ddns-enabled=no update-time=no

UPnP özellikle riskli. Otomatik port açma özelliği kulağa hoş gelse de, kimlik doğrulama mekanizması içermiyor. Cihazlar yetkilendirme olmadan portları açabiliyor ve bu durum özellikle Rapid7'nin araştırmalarıyla vurgulandı. Manuel port yapılandırması her zaman daha güvenli.

RouterOS Servis Yönetimi: Sadece Gerekeni Açık Tutun

RouterOS birçok yönetim protokolü sunuyor: API, Winbox, Telnet, WebFig, SSH, FTP, HTTP/HTTPS. Her biri farklı bir giriş noktası.

/ip service set telnet disabled=yes
/ip service set ftp disabled=yes
/ip service set www disabled=yes
/ip service set www-ssl disabled=yes
/ip service set api disabled=yes
/ip service set api-ssl disabled=yes

Kullandığınız servislerde, alt ağ filtreleme uygulamak kritik. Sadece yönetim ağınızdan erişime izin verin.

/ip service set address=192.168.100.0/24 ssh
/ip service set address=192.168.100.0/24 winbox

Port numaralarını değiştirmek de ek bir katman sunabilir. Bu, tam bir güvenlik önlemi olmasa da brute-force botlarının standart portları taramasını zorlaştırıyor.

Fiziksel Güvenlik: LCD ve Kullanılmayan Arayüzler

LCD Ekran

Bazı RouterBOARD'larda LCD ekranlar bulunuyor. Fiziksel erişimi olan biri bu ekrandan IP adresleri, bağlantı durumları gibi hassas bilgileri görebilir. Eğer cihaz herkese açık bir yerdeyse, LCD'yi devre dışı bırakın veya PIN koruması ekleyin.

/lcd set enabled=no

veya

/lcd/pin set pin-number=3659 hide-pin-number=yes

Kullanılmayan Arayüzler

Her aktif arayüz potansiyel bir giriş noktası. Kullanmadığınız Ethernet veya SFP portlarını kapatın.

/interface print
/interface set X disabled=yes

Burada X, kullanılmayan arayüzün numarası.

İSS'niz ağın ucundaki cihazın MAC adresini görebilir ve böylece MikroTik ekipmanı kullandığınızı bilebilir. Daha fazla gizlilik istiyorsanız uplink arayüzünün MAC adresini değiştirin.

/interface ethernet set ether1 mac-address=DF:20:B2:02:FC:B4

Yedekleme: En Kötü Senaryoya Hazırlıklı Olun

Şifreli Yedeklemeler

RouterOS, AES-SHA256 şifreleme ile yedekleme yapabilmenizi sağlıyor. Ancak bu yedekleri cihazda saklamak yeterli değil. Fiziksel erişim veya bir güvenlik ihlali durumunda yedekleriniz de tehlikeye girebilir.

/system backup save name="backup-2025-01" password="güçlü-şifre" encryption=aes-sha256

Yedekleri uzak ve güvenli bir lokasyonda saklayın. Bulut depolama, NAS veya harici diskler iyi seçenekler. Düzenli yedekleme rutini oluşturun - ayda en az bir kez.

Firewall: Ağınızın Akıllı Bekçisi

Firewall yapılandırması, RouterOS güvenliğinin kalbi. Doğru yapılandırılmış bir firewall, hem cihazınızı hem de arkasındaki istemcileri korur.

İnterface Listeleri: Yönetimi Kolaylaştırın

İki temel liste oluşturun: WAN ve LAN. Bu yaklaşım, gelecekteki değişiklikleri çok daha kolay hale getirir.

/interface list add name=WAN
/interface list add name=LAN

/interface list member add interface=bridge list=LAN
/interface list member add interface=ether1 list=WAN

Cihazı Koruyun: Input Chain

Router'a sadece LAN tarafından erişime izin verin. Geri kalan her şeyi engelleyin.

# ICMP'yi RAW kurallarından sonra kabul et
/ip firewall filter add chain=input action=accept protocol=icmp comment="defconf: accept ICMP after RAW"

# Kurulmuş, ilişkili ve izlenmeyen bağlantıları kabul et
/ip firewall filter add chain=input action=accept connection-state=established,related,untracked comment="defconf: accept established,related,untracked"

# LAN dışından gelen her şeyi engelle
/ip firewall filter add chain=input action=drop in-interface-list=!LAN comment="defconf: drop all not coming from LAN"

İstemcileri Koruyun: Forward Chain

Forward chain biraz daha karmaşık. Kurulmuş bağlantıları hızlandırmak, geçersiz bağlantıları engellemek ve bogon IP'leri durdurmak gerekiyor.

Önce engellenecek IP adres listelerini oluşturun:

# Yönlendirilemeyen IPv4 adresleri
/ip firewall address-list add address=0.0.0.0/8 list=no_forward_ipv4 comment="defconf: RFC6890"
/ip firewall address-list add address=169.254.0.0/16 list=no_forward_ipv4 comment="defconf: RFC6890"
/ip firewall address-list add address=224.0.0.0/4 list=no_forward_ipv4 comment="defconf: multicast"
/ip firewall address-list add address=255.255.255.255/32 list=no_forward_ipv4 comment="defconf: RFC6890"

Ardından forward kurallarını ekleyin:

# FastTrack ile performans artışı
/ip firewall filter add chain=forward action=fasttrack-connection connection-state=established,related comment="defconf: fasttrack"

# Kurulmuş bağlantıları kabul et
/ip firewall filter add chain=forward action=accept connection-state=established,related,untracked comment="defconf: accept established,related,untracked"

# Geçersiz bağlantıları engelle
/ip firewall filter add chain=forward action=drop connection-state=invalid comment="defconf: drop invalid"

# WAN'dan gelen ve DSTNAT edilmeyen bağlantıları engelle
/ip firewall filter add chain=forward action=drop connection-nat-state=!dstnat connection-state=new in-interface-list=WAN comment="defconf: drop all from WAN not DSTNATed"

# Kötü IP'leri engelle
/ip firewall filter add chain=forward action=drop src-address-list=no_forward_ipv4 comment="defconf: drop bad forward IPs"
/ip firewall filter add chain=forward action=drop dst-address-list=no_forward_ipv4 comment="defconf: drop bad forward IPs"

NAT: Yerel Ağı Maskele

İç ağınızdaki cihazların internete çıkabilmesi için masquerade kuralı gerekiyor.

/ip firewall nat add chain=srcnat action=masquerade out-interface-list=WAN comment="defconf: masquerade"

Dinamik WAN adresi kullanıyorsanız masquerade tek seçenek. Statik IP'niz varsa `src-nat` kullanmak performans açısından daha verimli.

RAW Firewall: İlk Savunma Hattı

RAW tablosu, connection tracking'den önce devreye giriyor. Bu, performans ve güvenlik için kritik. Şüpheli paketler connection tracking tablolarına bile girmeden engelleniyor.

IPv4 Adres Listeleri

# Asla kullanılmaması gereken IPv4 adresleri
/ip firewall address-list add address=127.0.0.0/8 list=bad_ipv4 comment="defconf: RFC6890"
/ip firewall address-list add address=192.0.0.0/24 list=bad_ipv4 comment="defconf: RFC6890"
/ip firewall address-list add address=240.0.0.0/4 list=bad_ipv4 comment="defconf: RFC6890 reserved"

# Global olarak yönlendirilemeyen adresler
/ip firewall address-list add address=10.0.0.0/8 list=not_global_ipv4 comment="defconf: RFC6890"
/ip firewall address-list add address=172.16.0.0/12 list=not_global_ipv4 comment="defconf: RFC6890"
/ip firewall address-list add address=192.168.0.0/16 list=not_global_ipv4 comment="defconf: RFC6890"

# Geçersiz kaynak adresleri
/ip firewall address-list add address=224.0.0.0/4 list=bad_src_ipv4 comment="defconf: multicast"
/ip firewall address-list add address=255.255.255.255/32 list=bad_src_ipv4 comment="defconf: RFC6890"

# Geçersiz hedef adresleri
/ip firewall address-list add address=0.0.0.0/8 list=bad_dst_ipv4 comment="defconf: RFC6890"
/ip firewall address-list add address=224.0.0.0/4 list=bad_dst_ipv4 comment="defconf: RFC6890"

IPv4 RAW Kuralları

# DHCP discovery'yi kabul et
/ip firewall raw add chain=prerouting action=accept dst-address=255.255.255.255 dst-port=67 in-interface-list=LAN protocol=udp src-address=0.0.0.0 src-port=68 comment="defconf: accept DHCP discover"

# Bogon IP'leri engelle
/ip firewall raw add chain=prerouting action=drop src-address-list=bad_ipv4 comment="defconf: drop bogon IPs"
/ip firewall raw add chain=prerouting action=drop dst-address-list=bad_ipv4 comment="defconf: drop bogon IPs"
/ip firewall raw add chain=prerouting action=drop src-address-list=bad_src_ipv4 comment="defconf: drop bogon IPs"
/ip firewall raw add chain=prerouting action=drop dst-address-list=bad_dst_ipv4 comment="defconf: drop bogon IPs"

# WAN'dan global olmayan IP'leri engelle
/ip firewall raw add chain=prerouting action=drop src-address-list=not_global_ipv4 in-interface-list=WAN comment="defconf: drop non global from WAN"

# LAN'dan varsayılan IP aralığı dışındaki trafiği engelle
/ip firewall raw add chain=prerouting action=drop in-interface-list=LAN src-address=!192.168.88.0/24 comment="defconf: drop local if not from default IP range"

# Kötü UDP'yi engelle
/ip firewall raw add chain=prerouting action=drop port=0 protocol=udp comment="defconf: drop bad UDP"

# ICMP ve TCP zincirlerine atla
/ip firewall raw add chain=prerouting action=jump jump-target=icmp4 protocol=icmp comment="defconf: jump to ICMP chain"
/ip firewall raw add chain=prerouting action=jump jump-target=bad_tcp protocol=tcp comment="defconf: jump to TCP chain"

# LAN ve WAN'dan geri kalanı kabul et
/ip firewall raw add chain=prerouting action=accept in-interface-list=LAN comment="defconf: accept everything else from LAN"
/ip firewall raw add chain=prerouting action=accept in-interface-list=WAN comment="defconf: accept everything else from WAN"

# Router arayüzleri arasındaki trafiği kabul et
/ip firewall raw add chain=prerouting action=accept src-address-type=local comment="defconf: accept local traffic between router interfaces"

# Geri kalan her şeyi engelle
/ip firewall raw add chain=prerouting action=drop comment="defconf: drop the rest"

TCP Flag Filtreleme

Kötü TCP paketlerini engellemek için özel bir chain oluşturun:

/ip firewall raw add chain=bad_tcp action=drop protocol=tcp tcp-flags=!fin,!syn,!rst,!ack comment="defconf: TCP flag filter"
/ip firewall raw add chain=bad_tcp action=drop protocol=tcp tcp-flags=fin,syn comment="defconf"
/ip firewall raw add chain=bad_tcp action=drop protocol=tcp tcp-flags=fin,rst comment="defconf"
/ip firewall raw add chain=bad_tcp action=drop protocol=tcp tcp-flags=fin,!ack comment="defconf"
/ip firewall raw add chain=bad_tcp action=drop protocol=tcp tcp-flags=fin,urg comment="defconf"
/ip firewall raw add chain=bad_tcp action=drop protocol=tcp tcp-flags=syn,rst comment="defconf"
/ip firewall raw add chain=bad_tcp action=drop protocol=tcp tcp-flags=rst,urg comment="defconf"
/ip firewall raw add chain=bad_tcp action=drop port=0 protocol=tcp comment="defconf: TCP port 0 drop"

ICMP Filtreleme

ICMP'yi tamamen engellemek doğru değil. PMTUD (Path MTU Discovery) için ICMP Type 3 gerekli. Aksi takdirde aşırı fragmentasyon yaşarsınız.

/ip firewall raw add chain=icmp4 action=accept icmp-options=0:0 limit=5,10:packet protocol=icmp comment="defconf: echo reply"
/ip firewall raw add chain=icmp4 action=accept icmp-options=3:0 protocol=icmp comment="defconf: net unreachable"
/ip firewall raw add chain=icmp4 action=accept icmp-options=3:1 protocol=icmp comment="defconf: host unreachable"
/ip firewall raw add chain=icmp4 action=accept icmp-options=3:4 protocol=icmp comment="defconf: fragmentation needed"
/ip firewall raw add chain=icmp4 action=accept icmp-options=8:0 limit=5,10:packet protocol=icmp comment="defconf: echo"
/ip firewall raw add chain=icmp4 action=accept icmp-options=11:0-255 protocol=icmp comment="defconf: time exceeded"
/ip firewall raw add chain=icmp4 action=drop protocol=icmp comment="defconf: drop other icmp"

Rate limiting (5 paket, 10 paket burst) DDoS koruması sağlar ancak Linux çekirdeği zaten ICMP'yi 100pps ile sınırlıyor.

Firewall Son Kuralı: Drop All

En kritik kural budur. Bu olmadan diğer tüm ayarlarınız anlamsız.

/ip firewall filter add chain=input action=drop in-interface=ether1 comment="Drop all other incoming"

Altyapınıza göre ihtiyacınız olan protokolleri ve portları bu kuralın üstünde önceden açın.

TTL Shifting ile Router'ı Gizleme

İç ağ tarafında cihazı gizlemek istiyorsanız TTL değerini +1 artırabilirsiniz:

/ip firewall mangle add chain=prerouting action=change-ttl new-ttl=increment:1 passthrough=yes in-interface=bridge

Bu teknik, traceroute gibi araçların router'ı hop olarak görmesini engeller.

Gelişmiş Koruma Mekanizmaları

DHCP Snooping: MITM Saldırılarını Önle

DHCP Snooping, içerideki sahte DHCP sunucularını engelliyor. Bir saldırgan, sahte bir DHCP sunucusu kaldırarak MITM (Man-in-the-Middle) saldırısı düzenleyebilir. Güvenilir ve güvenilmez portlar prensibiyle çalışıyor.

# Bridge'de DHCP Snooping'i aktif et
/interface bridge set dhcp-snooping=yes bridge

# Güvenilir port ata (switchler ve router'lar arası bağlantılar)
/interface bridge port set trusted=yes interface=ether1 bridge=bridge

Güvenilmeyen portlarda (kullanıcı bilgisayarları, yazıcılar, AP'ler) DHCPOFFER, DHCPACK gibi sunucu mesajları engellenecek. Yapılandırma yaparken dikkatli olun, yanlış ayar istemeden DoS'a neden olabilir.

DAI Sorunu

RouterOS/SwitchOS şu an Dynamic ARP Inspection'ı desteklemiyor. Statik ARP tablosu kullanabilirsiniz ancak büyük ağlarda bu yönetimi zorlaştırıyor.

STP ve BPDU Guard

Spanning Tree Protocol (STP), Ethernet ağlarında döngüleri önlüyor. Ancak BPDU spoofing ile bir saldırgan root switch rolünü çalabilir ve MITM saldırısı düzenleyebilir.

BPDU Guard, BPDU frame'i alan portları otomatik olarak bloke ediyor:

/interface bridge port set bpdu-guard=yes interface=ether2 bridge=bridge

Bu ayarı kullanıcı portlarına uygulayın, switch'ler arası bağlantılara değil.

Wi-Fi Güvenliği

PMKID ve WPS

Wi-Fi Wave 2 kullanan cihazlarda PMKID ve WPS varsayılan olarak aktif gelebilir. PMKID, brute-force saldırılarında kullanılabilecek hassas bir tanımlayıcı.

/interface wifiwave2 set wif1 security.disable-pmkid=yes
/interface wifiwave2 set wif1 security.wps=disable

WPA-Enterprise

Mümkünse WPA-Personal yerine WPA-Enterprise kullanın. IEEE 802.1X standardı ile RADIUS sunucu üzerinden merkezi kimlik doğrulama sağlar. Kullanıcı bazlı erişim kontrolü, kurumsal ağlar için vazgeçilmez.

Dinamik Routing Güvenliği

OSPF: Pasif Arayüzler ve Kimlik Doğrulama

OSPF gibi dinamik routing protokolleri kullanıyorsanız, pasif arayüzler yapılandırın. Varsayılan olarak tüm arayüzlere duyuru gönderilmesi büyük güvenlik riski.

/routing ospf interface-template add interfaces=bridge passive area=backbone

Kimlik doğrulama kullanın, ancak MD5/SHA-1'in trafikten yakalanıp brute-force edilebileceğini unutmayın. SHA-384 daha güvenli:

/routing ospf interface-template set auth=sha384 auth-key=güçlü-anahtar auth-id=1 numbers=0

VRRP: Pseudo-Balancing ve Kimlik Doğrulama

VRRP, RouterOS'ta yük dengeleme mekanizması sunmuyor. Ancak VLAN'ları farklı router'lara dağıtarak pseudo-balancing yapabilirsiniz.

VRRPv2 için AH (IPSec) ile kimlik doğrulama:

/interface vrrp add interface=vlan100 priority=254 version=2 vrid=100 authentication=ah password=güçlü-şifre

VRRPv3 kimlik doğrulamasını desteklemiyor. Ancak Mangle ve Raw tabloları ile ACL benzeri bir koruma sağlayabilirsiniz:

# Meşru VRRP hoplarından gelen trafiği kabul et
/ip firewall mangle add chain=prerouting action=accept protocol=vrrp src-address=192.168.1.1 in-interface=bridge

/ip firewall mangle add chain=prerouting action=accept protocol=vrrp src-address=192.168.1.2 in-interface=bridge

# Diğer tüm VRRP trafiğini engelle
/ip firewall raw add chain=prerouting action=drop protocol=vrrp in-interface=bridge

Bu yaklaşım CPU üzerinde minimum yük oluşturur ve saldırganın VRRP domain'ine sızmasını engeller.

Pseudo-Balancing Örneği:

Router 1:

/interface vrrp add interface=vlan140 name=vrrp140 priority=254 vrid=140
/interface vrrp add interface=vlan200 name=vrrp200 priority=254 vrid=200
/interface vrrp add interface=vlan120 name=vrrp120 preemption-mode=no priority=90 vrid=120
/interface vrrp add interface=vlan280 name=vrrp280 preemption-mode=no priority=90 vrid=280

Router 2 (ayna yapılandırma):

/interface vrrp add interface=vlan120 name=vrrp120 priority=254 vrid=120
/interface vrrp add interface=vlan280 name=vrrp280 priority=254 vrid=280
/interface vrrp add interface=vlan140 name=vrrp140 preemption-mode=no priority=90 vrid=140
/interface vrrp add interface=vlan200 name=vrrp200 preemption-mode=no priority=90 vrid=200

Bu sayede her iki router da aktif olarak farklı VLAN'lara hizmet veriyor. Backup router'larda preemption-mode kapalı tutarak gereksiz rol değişimlerini önlüyorsunuz.

IPv6 Güvenliği

IPv6 aktifse, güvenlik yapılandırmasını unutmayın. IPv4 ile aynı prensipleri uygulayın.

Neighbor Discovery'yi Kapat

/ipv6 nd set [find] disabled=yes

IPv6 Address Lists

# Asla kullanılmaması gereken IPv6 adresleri
/ipv6 firewall address-list add address=::1/128 list=bad_ipv6 comment="defconf: RFC6890 lo"
/ipv6 firewall address-list add address=::ffff:0:0/96 list=bad_ipv6 comment="defconf: RFC6890 IPv4 mapped"
/ipv6 firewall address-list add address=2001:db8::/32 list=bad_ipv6 comment="defconf: RFC6890 documentation"

# Global olarak yönlendirilemeyen adresler
/ipv6 firewall address-list add address=fc00::/7 list=not_global_ipv6 comment="defconf: RFC6890 Unique-Local"
/ipv6 firewall address-list add address=fe80::/10 list=not_global_ipv6 comment="defconf: link-local"

IPv6 Filter Rules

# ICMPv6'yı RAW'dan sonra kabul et
/ipv6 firewall filter add chain=input action=accept protocol=icmpv6 comment="defconf: accept ICMPv6 after RAW"

# Kurulmuş bağlantıları kabul et
/ipv6 firewall filter add chain=input action=accept connection-state=established,related,untracked comment="defconf: accept established,related,untracked"

# UDP traceroute
/ipv6 firewall filter add chain=input action=accept dst-port=33434-33534 protocol=udp comment="defconf: accept UDP traceroute"

# DHCPv6 Client
/ipv6 firewall filter add chain=input action=accept dst-port=546 protocol=udp src-address=fe80::/10 comment="defconf: accept DHCPv6-Client prefix delegation"

# IPSec
/ipv6 firewall filter add chain=input action=accept dst-port=500,4500 protocol=udp comment="defconf: accept IKE"
/ipv6 firewall filter add chain=input action=accept protocol=ipsec-ah comment="defconf: accept IPSec AH"
/ipv6 firewall filter add chain=input action=accept protocol=ipsec-esp comment="defconf: accept IPSec ESP"

# LAN dışından gelen her şeyi engelle
/ipv6 firewall filter add chain=input action=drop in-interface-list=!LAN comment="defconf: drop all not coming from LAN"

IPv6 RAW Rules

# RFC4291 özel durum
/ipv6 firewall raw add chain=prerouting action=accept src-address=::/128 dst-address=ff02:0:0:0:0:1:ff00::/104 icmp-options=135 protocol=icmpv6 comment="defconf: RFC4291, section 2.7.1"

# Bogon IP'leri engelle
/ipv6 firewall raw add chain=prerouting action=drop src-address-list=bad_ipv6 comment="defconf: drop bogon IPs"
/ipv6 firewall raw add chain=prerouting action=drop dst-address-list=bad_ipv6 comment="defconf: drop bogon IPs"

# WAN'dan global olmayan IP'leri engelle
/ipv6 firewall raw add chain=prerouting action=drop src-address-list=not_global_ipv6 in-interface-list=WAN comment="defconf: drop non global from WAN"

# ICMPv6 chain'ine atla
/ipv6 firewall raw add chain=prerouting action=jump jump-target=icmp6 protocol=icmpv6 comment="defconf: jump to ICMPv6 chain"

# Local multicast scope
/ipv6 firewall raw add chain=prerouting action=accept dst-address=ff02::/16 comment="defconf: accept local multicast scope"

# Diğer multicast hedefleri engelle
/ipv6 firewall raw add chain=prerouting action=drop dst-address=ff00::/8 comment="defconf: drop other multicast destinations"

# WAN ve LAN'dan geri kalanı kabul et
/ipv6 firewall raw add chain=prerouting action=accept in-interface-list=WAN comment="defconf: accept everything else from WAN"
/ipv6 firewall raw add chain=prerouting action=accept in-interface-list=LAN comment="defconf: accept everything else from LAN"

# Geri kalanı engelle
/ipv6 firewall raw add chain=prerouting action=drop comment="defconf: drop the rest"

Connection Tracking Optimizasyonu

Eğer cihazınız sadece transit trafik yönlendiriyorsa ve NAT veya stateful firewall kullanmıyorsanız, Connection Tracking'i tamamen kapatabilirsiniz. Bu, özellikle yüksek trafikli ortamlarda CPU kullanımını önemli ölçüde azaltır.

/ip firewall connection tracking set enabled=no

Ancak dikkatli olun: Connection Tracking kapatıldığında stateful firewall kuralları (established, related) çalışmaz. Sadece stateless filtreleme yapabilirsiniz.

Brute-Force Koruması: Mangle ile Akıllı Savunma

Yönetim servislerine yönelik brute-force saldırılarını Mangle tablosunda engelleyebilirsiniz. Prerouting chain'i, paketler işlenmeden önce devreye girdiği için ideal bir savunma noktası.

# SSH brute-force koruması
/ip firewall mangle add chain=prerouting protocol=tcp dst-port=22 src-address-list=ssh_blacklist action=drop comment="Drop SSH brute-force"

/ip firewall mangle add chain=prerouting protocol=tcp dst-port=22 connection-state=new src-address-list=ssh_stage3 action=add-src-to-address-list address-list=ssh_blacklist address-list-timeout=1d comment="SSH blacklist"

/ip firewall mangle add chain=prerouting protocol=tcp dst-port=22 connection-state=new src-address-list=ssh_stage2 action=add-src-to-address-list address-list=ssh_stage3 address-list-timeout=1m

/ip firewall mangle add chain=prerouting protocol=tcp dst-port=22 connection-state=new src-address-list=ssh_stage1 action=add-src-to-address-list address-list=ssh_stage2 address-list-timeout=1m

/ip firewall mangle add chain=prerouting protocol=tcp dst-port=22 connection-state=new action=add-src-to-address-list address-list=ssh_stage1 address-list-timeout=1m

Bu yapılandırma aşamalı bir sistem kullanıyor. Kısa sürede çok sayıda bağlantı denemesi yapan IP'ler otomatik olarak kara listeye alınıyor.

RBAC: En Az Ayrıcalık Prensibi

Her mühendise tam yetki vermek yerine, rol tabanlı erişim kontrolü (RBAC) uygulayın. RouterOS'ta varsayılan gruplar var: read, write, full. Kendi özel gruplarınızı da oluşturabilirsiniz.

# Mevcut kullanıcıları listele
/user print

# Yeni grup oluştur (sadece okuma ve yazma yetkisi)
/user group add name=support policy=read,write,test,web,api,ssh,telnet

# Bu gruba kullanıcı ekle
/user add name=engineer1 password=güçlü-şifre group=support

Daha iyi bir yaklaşım, merkezi bir AAA (Authentication, Authorization, Accounting) sunucusu kullanmak. RADIUS entegrasyonu ile hesapları merkezi olarak yönetebilir, her router'da ayrı kullanıcı tanımlamaktan kurtulabilirsiniz.

İzleme ve Loglama

Güvenlik, sadece önlem almak değil, aynı zamanda neler olduğunu görmek demek.

Kritik Olayları Logla

Firewall kurallarına logging ekleyerek şüpheli aktiviteleri takip edebilirsiniz:

/ip firewall filter add chain=input action=drop in-interface-list=WAN log=yes log-prefix="WAN-DROP"

Ancak aşırı loglama CPU'yu yorar. Sadece kritik kuralları loglayın.

Remote Logging

Logları router'da tutmak yerine uzak bir syslog sunucusuna göndermek daha güvenli:

/system logging action add name=remote target=remote remote=192.168.100.10 remote-port=514

/system logging add topics=firewall action=remote
/system logging add topics=critical action=remote

Bu sayede cihaz ele geçirilse bile loglar güvende kalır.

Fiziksel Güvenlik ve Ortam

Teknoloji ne kadar gelişmiş olursa olsun, fiziksel erişim her şeyi değiştirir. Router'larınızı kilitli dolaplarda veya raflarda tutun. Konsol portuna erişimi sınırlayın.

Veri merkezlerinde veya sunucu odalarında kamera sistemleri, giriş kontrol sistemleri kritik. Bir saldırgan fiziksel erişim elde ettiğinde, console üzerinden RouterOS'u resetleyebilir veya yedeklemeden geri yükleyebilir.

Periyodik Güvenlik Denetimleri

Güvenlik bir kez yapıp unutulan şey değil. Düzenli kontroller yapın:

Aylık Kontrol Listesi

  1. RouterOS güncellemelerini kontrol edin
  2. Kullanıcı hesaplarını gözden geçirin - Artık çalışmayan personelin hesapları hala aktif mi?
  3. Firewall loglarını inceleyin - Olağandışı aktivite var mı?
  4. Yedekleri test edin - Gerçekten geri yüklenebiliyorlar mı?
  5. Servis portlarını tarayın - Hangi portlar açık?

Yılda Bir Kez

  1. Kapsamlı penetrasyon testi
  2. Yapılandırma güvenlik denetimi
  3. Fiziksel güvenlik değerlendirmesi
  4. Şifreleri değiştirin - Özellikle VRRP, OSPF gibi protokollerdeki paylaşımlı şifreler

Olağanüstü Durum Planı

Her şey başarısız olursa ne yapacaksınız? Bir güvenlik ihlali planınız olmalı:

İhlal Senaryosu Adımları

  1. İzole edin - Etkilenen cihazı ağdan ayırın
  2. Analiz edin - Logları inceleyin, ne olduğunu anlamaya çalışın
  3. Temizleyin - Fabrika ayarlarına dönün, yeni firmware yükleyin
  4. Geri yükleyin - Temiz yedekten yapılandırma
  5. İzleyin - Bir süre yakından takip edin
  6. Öğrenin - Neler ters gitti? Nasıl önlenebilirdi?

Yedek Donanım

Kritik konumlarda yedek router bulundurun. Cihaz arızalandığında veya ele geçirildiğinde hızlıca değiştirebilmelisiniz.

Ortak Hatalar ve Yanılgılar

"Firewall yeterlidir"

Firewall önemli ama yeterli değil. Zayıf şifreler, güncel olmayan firmware, gereksiz açık servisler - bunların hepsi firewall'u atlatabiliyor.

"Küçük ağım için abartı"

Saldırganlar büyük-küçük ayrımı yapmıyor. Botnetler tüm IP aralıklarını otomatik tarıyor. Küçük işletmeler genellikle daha az korumalı oldukları için daha cazip hedefler.

"MAC filtreleme güvenli"

MAC adresleri kolayca sahtelenebilir. MAC filtreleme asla ana güvenlik mekanizması olmamalı, yalnızca ek bir katman olarak düşünülmeli.

"VPN varsa güvendeyim"

VPN sadece tüneldir. Zayıf VPN şifreleri, güncel olmayan VPN protokolleri, zayıf kimlik doğrulama - bunlar VPN'i anlamsız hale getirir.

"Varsayılan ayarlar yeterince iyi"

MikroTik'in varsayılan yapılandırması temel koruma sağlar ancak spesifik tehditlere karşı özelleştirilmemiş. Her ağın kendine özgü gereksinimleri var.

Topluluk ve Kaynaklar

MikroTik topluluğu oldukça aktif. Takıldığınızda yardım alabileceğiniz yerler:

  • MikroTik Forum - Resmi destek ve kullanıcı tartışmaları
  • Reddit r/mikrotik - Pratik sorular ve cevaplar
  • MikroTik Wiki - Kapsamlı dokümantasyon
  • YouTube kanalları - Görsel öğrenme için

Güvenlik konusunda güncel kalmak için:

  • MikroTik Security Blog - Resmi güvenlik duyuruları
  • CVE Veritabanları - Bilinen zafiyetler
  • CERT/CSIRT bildirimleri - Ulusal güvenlik uyarıları

Sonuç: Güvenlik Bir Yolculuk

MikroTik router'larınızı güvenli hale getirmek teknik bir konu olduğu kadar bir zihniyet meselesi. Her değişikliği planla, test et, dokümante et. Güvenlik sürekli gelişen bir alan - bugün güvenli olan yarın zafiyet olabilir.

Bu rehberde öğrendikleriniz sizi %80 oranında korur. Geri kalan %20, sizin spesifik ortamınıza, tehdit modelinize ve risklere bağlı. Her ağ farklı, her altyapı benzersiz. Buradaki prensipleri kendi durumunuza uyarlayın.

Unutmayın: Mükemmel güvenlik diye bir şey yok, ama yeterince iyi güvenlik var. Temel ilkeleri uygulayın, düzenli güncellemeleri ihmal etmeyin, logları izleyin ve en önemlisi - öğrenmeye devam edin.

RouterOS güçlü bir platform. Doğru yapılandırıldığında, kurumsal seviyede güvenlik sunabilir. Yanlış yapılandırıldığında ise bir zayıflık zincirinin ilk halkası. Seçim sizin.

Şimdi konsola gidin ve o ilk komutu yazın. Ağınızı güvenli hale getirme zamanı.