İçeriğe geç
NetDevOps
5 dk okuma Güvenlik

OPNsense Firewall Kurulumu ve Güvenlik Duvarı Yapılandırm

OPNsense, Hollandalı Deciso firmasının geliştirdiği, FreeBSD tabanlı açık kaynak bir güvenlik duvarı ve yönlendirici dağıtımı. pfSense projesinden ayrılan bir fork olarak yola çıktı; uzun yıllar HardenedBSD tabanını kullandı, 22.1 sürümünden itibaren düz FreeBSD üzerine kurulu. Paket filtresi olarak FreeBSD dünyasının bilinen pf mekanizmasını kullanıyor ve tüm yönetim tarayıcı üzerinden HTTPS ile yapılıyor. Ev laboratuvarından küçük işletme ortamlarına kadar ölçeklenen bir kullanım alanı var.

Donanım ve ön hazırlık

Aygıt seçiminde kritik nokta ağ kartı sayısı: en az iki adet Ethernet arayüzü istenir, biri WAN diğeri LAN için. RAM tarafında güncel dokümantasyon 3 GB alt sınır veriyor; IDS/IPS gibi servisler de çalışacaksa buna baştan pay bırakmak doğru olur. Kurulumdan önce hangi kartın WAN hangi kartın LAN olacağına karar vermek, konsol ekranındaki adımları hızlandırır.

Kurulum medyası

opnsense.org adresinden güncel ISO imajı indirilir ve USB belleğe yazılır. Bellek hazır olduktan sonra cihaz bu medyadan açılır. Karşılaşılan konsol tabanlı kurulum programı bsdinstall üzerine kuruludur; klavye seçiminin ardından dosya sistemi adımı gelir. Burada ZFS ya da UFS tercih edilir. ZFS seçilirse tek disk üzerinde basit yapı kurulabildiği gibi ikinci bir diskle ayna kurgusu da mümkündür. Diskteki verilerin silineceği konusunda gelen uyarı onaylandığında kurulum kısa sürer ve sistem yeniden başlatılır.

Konsol menüsü ve arayüz atama

Açılış sonrası metin tabanlı bir menü karşılar. Buradan arayüz atama işlemi yapılır; kartlar FreeBSD sürücü adlarıyla listelenir, em0 veya igb0 gibi. KVM ya da VMware altına kurulum yapıldıysa virtio sürücüsüne denk gelen vtnet0 adı görünür. WAN arayüzüne modemin dağıttığı adresi alması için DHCP bırakılır, LAN tarafına ise kurulumla gelen varsayılan değer atanır: 192.168.1.1/24.

İlk giriş ve sihirbaz

Yönetim arayüzü tarayıcıdan LAN tarafından açılır.

https://192.168.1.1
kullanici: root
parola: opnsense

İlk girişte ana makine adı, alan adı, WAN ve LAN ayarları ile parola bir ilk kurulum akışıyla tamamlanır; sürümden sürüme bu akış değişti, güncel sürümlerde klasik sihirbazın yerini farklı bir karşılama ekranı aldı. Varsayılan parola ilk iş olarak değiştirilmelidir. HTTPS zaten açık gelir, arayüz sertifikası self-signed olduğu için tarayıcı uyarı vermesi normaldir.

Kural mantığı: yukarıdan aşağıya ilk eşleşme

pf durum bilgisi taşıyan bir filtre; izin verilen her bağlantı için durum tablosunda kayıt oluşur ve dönüş trafiği ayrı kural istemez. Kurallar listenin en üstünden değerlendirilir, eşleşen ilk kural uygulanır, gerisi okunmaz. Her arayüzün kural setinin sonunda örtük bir engel vardır.

Yeni kurulumda LAN tarafında her hedefe izin veren bir varsayılan kural gelirken WAN tarafında boştur; yani dışarıdan içeri doğru trafik hiçbir şey yapılmadıkça geçmez. Kilitlenmeyi önleyen anti lockout kuralı da LAN üzerinde yönetim erişimini korur. Yanlışlıkla bu kural devre dışı kalırsa konsol menüsünden arayüz sıfırlamak kurtarıcı olur.

Alias disiplini

Firewall menüsündeki Aliases bölümünde sunucu, ağ ve port listeleri tanımlanır. Kurallarda IP yazmak yerine bu isimleri kullanmak, bir adres değiştiğinde tek noktadan düzeltme imkanı verir. Aynı yaklaşım NAT tarafında da geçerlidir; port yönlendirme kurallarında dış port ile iç sunucu adresi alias ile tutulursa bakım ciddi ölçüde kolaylaşır. Giden NAT için Automatic, Hybrid ve Manual modları bulunur; özel senaryolar olmadıkça otomatik mod yeterlidir.

DNS ve eklenti ekosistemi

Dağıtım öntanımlı olarak Unbound çözümleyicisini kullanır; kök sunuculardan başlayarak özyinelemeli sorgu yapar, ISP DNS yerine kendi altyapınızı kullanmanızı sağlar. LAN üzerinde yerleşik DHCP sunucusu dağıtımı üstlenir. Ek ihtiyaçlar eklenti sisteminden karşılanır; paket adları os- önekiyle başlar ve web arayüzünden kurulur. ACME tabanlı sertifika yönetimi ya da trafik akış analizi gibi yetenekler bu yolla gelir. Suricata tabanlı IDS/IPS da arayüz içinde hazır gelir; etkinleştirildiğinde kural setleri indirilip dinleme arayüzü seçilerek çalışmaya başlar.

Güncelleme ve yedek

System menüsündeki Firmware sayfasından güncellemeler takip edilir; komut satırından opnsense-update aracı aynı işi görür. Büyük sürüm geçişleri ayrı bir adım olarak sunulur ve öncesinde yedek alınması gerekir. Yapılandırmanın tamamı /conf/config.xml dosyasında durur; System menüsündeki Configuration bölümünden elle yedek indirilebilir.

Kurallar uygulanmadan önce lab ortamında test edilmeli, her kurala kısa bir açıklama girilmeli. Yükseltmeden önce config yedeği almak alışkanlık haline geldiğinde OPNsense tarafında geri dönülmez sürprizler pek yaşanmıyor.

wireguard-server-panel

WireGuard VPN sunucu paneli - İstemci yönetimi, QR kodları ve trafik istatistikleri için kendi sunucunuzda barındırılan web kullanıcı arayüzü (fork, aktif olarak geliştirilmekte)

Go

Laravel-NDFirewall

Rota Kapsamlı Laravel WAF - RCE, SQLi, XSS ve SSRF algılama özelliklerine sahip hafif bir Web Uygulaması Güvenlik Duvarı

PHP

Trustsslroot

Tek komutla çalışan özel PKI oluşturucu - Kendi kendine imzalanmış kök CA ve sertifikaları anında oluşturun

Go

node_exporter

Hafif sistem metrikleri aktarıcısı - Güvenli erişim kontrolüne sahip, Linux için durum bilgisi barındırmayan tek dosya tabanlı izleme hizmeti

Rust

ipReconary

IP keşif ve alt ağ analiz aracı - Hızlı ağ taraması ve IP istihbarat toplama

Rust

Cloudfiltred

Cloudflare IP beyaz liste güvenlik duvarı - 80/443 numaralı bağlantı noktalarını yalnızca Cloudflare IP'leriyle sınırlayarak kaynak sunucunuzu doğrudan saldırılara karşı koruyun

Rust

LoadAlertTracker

Hafif sistem yükü izleme arka plan programı - Eşik değerleri aşıldığında Telegram, Discord ve Mattermost üzerinden gerçek zamanlı uyarılar

Rust

ctCertWatch

Sertifika Şeffaflığı günlüğü izleyicisi - Kimlik avı alan adlarını, marka taklitçiliğini ve yetkisiz SSL sertifikalarını gerçek zamanlı olarak tespit edin

Rust

DDNS-FW

Dinamik DNS Güvenlik Duvarı - DDNS aracılığıyla değişen IP adreslerini takip edin ve güvenli erişim kontrolü için güvenlik duvarı kurallarını otomatik olarak güncelleyin

Rust