260 likes | 511 Views
FreeBSD IPFireWall Ve netUstad Yazılımı. Özkan KIRIK. EnderUNIX Yazılım Geliştirme Takımı Dönem Lideri – Yazılım Geliştiricisi ozkan@enderunix.org http://www.enderunix.org/~ozkan/. Güvenlik Duvarı (Firewall) Nedir?.
E N D
FreeBSD IPFireWall Ve netUstad Yazılımı Özkan KIRIK EnderUNIX Yazılım Geliştirme TakımıDönem Lideri – Yazılım Geliştiricisiozkan@enderunix.orghttp://www.enderunix.org/~ozkan/
Güvenlik Duvarı (Firewall) Nedir? Bir sistemin özel kısımlarını, genel kullanıma açık kısımlarından ayırt eden, kullanıcıların kendilerine tanınan haklardan daha fazlasını almalarını engelleyen ve belirlenen güvenlik politikalarını uygulayan yapılardır.
Güvenlik Duvarının Ağ Üzerindeki Yeri İnternet Yerel Ağ FireWall Filtrelenmiş Veri Filtrelenmemiş Veri Güvenlik Duvarı, Internet ile yerel ağ arasındaki tek geçiş noktası olmalıdır.
IPFireWall’un Özellikleri • Statik Paket Filtreleme • Statefull Paket Filtreleme • Layer II, Layer III Seviyelerinde Kural Yazabilme • Paket Trafiği Düzenleme (Bant Genişliği ve Queue) • IPSTEALTH Paket İletme • Lookup Table • Kural Takımları (Rule Set) • Kural dosyaları için PreProcessor desteği • Jail’lerin trafiğini yönetebilme • Arayüzler için Antispoof desteği
IPFireWall’u Aktif Hale Getirmek • IPFirewall’u kullanabilmek için 2 farkı yöntem: • Çekirdeğe statik olarak ekleyebiliriz • Çekirdek modülü olarak yükleyebiliriz
IPFireWall’u Çekirdeğe Statik Olarak Eklemek • Çekirdek konfigürasyon dosyasına • options IPFIREWALL • # Firewall Aktif • options IPFIREWALL_VERBOSE • # Log Tutma (syslogd) • options IPFIREWALL_FORWARD • # Paket İletme (FreeBSD 5.x ve sonrasında kaldırıldı) • options IPDIVERT • # Port Yönlendirme • options DUMMYNET • # Bant genişliği ve Trafik Düzenleme • options IPSTEALTH • # Traceroute araçlarından gizlenme • Parametrelerini ekleyip, çekirdeği tekrar derlemeliyiz.
IPFireWall’u Modül Olarak Yüklemek • Eğer sunucunuzun başında iseniz • # kldload ipfw • komutu ile ipfw modülünü yükleyebilirsiniz. • Ancak standart kural “tüm paketleri engelle” • olduğu için tüm ağ bağlantılarınız kesilecektir. • Eğer sunucunuza ağ üzerinde bağlı iseniz • # kldload ipfw && \ • ipfw add 65000 allow all from any to any • komutu ile ağ bağlantılarınız kesilmeden ipfw modülünü yükleyebilirsiniz.
IPFireWall Kullanımı • IPFireWall’un söz dizimi: • ipfw add [rule_no] [set set_no] <action> [log] <rule_body> • ipfw {list|show} [rule_no | range] • ipfw set [disable set_no] [enable set_no] • ipfw table table_no {add|delete|list} <parametreler> • ipfw {pipe | queue} number config config-options • ipfw [–p preproc [preproc-flags]] filename • Örnekler: • ipfw add 10 set 1 allow log tcp from any to any 22 • ipfw show 100-500 • ipfw set disable 1 • ipfw table 1 add 10.0.0.1 • ipfw pipe 1 config bw 100Kbit/s • ipfw –p cpp /etc/ipfw.rules
IPFireWall Kural İşlemleri (Actions) • Paketlere uygulanabilecek başlıca işlemler, • allow | accept | pass | permit • deny | drop • divert port • forward | fwd ipaddr[,port] • pipe, queue • reset • skipto number • unreach code
IPFireWall ve Network Address Translation (natd) • IPFireWall, nat işlemini doğrudan kendisi yapmıyor. • Bu nedenle bu işi yapabilecek bir yazılım (natd) kullanıyor. • natd, kullanıcı tarafında bir deamon olarak hizmet veriyor. • ipfw ile nat işlemine tabii tutmak istediğimiz paketleri belirleyip divert işlemine tabii tutarak nat daemon’a göndeririz. • natd, gelen pakete gerekli işlemleri uyguladıktan sonra paketi firewall’a gönderir. (allow, pipe) ipfw NAT yapılacak Paket (divert) NAT yapılmış paket natd
IPFireWall ve Network Address Translation (natd) • Yapılması gereken düzenlemeler; • /etc/rc.confdosyası • natd_enable=“YES” • natd_flags=“-f /etc/natd.conf” • /etc/natd.confdosyası • same_ports yes • redirect_address <local_ip> <static_ip> • redirect_port <local_ip>:<port> <global_port> • alias_address <dnat_ip> • ipfwkuralları • ipfw add divert natd all from any to any
IPFireWall ile Trafik Düzenleme • Statik Bant Genişliği Düzenleme: • ipfw pipe 1 config bw 256Kbit/s • ipfw pipe 2 config bw 64Kbit/s • ipfw add pipe 1 all from any to 10.0.1.0/24 in • ipfw add pipe 2 all from 10.0.1.0/24 to any out
IPFireWall ile Trafik Düzenleme • Dinamik Bant Genişliği Düzenleme: • Belirli bir hızı düzenli paylaştırma, • ipfw pipe 3 config bw 2Mbit/s • ipfw queue 1 config weight 5 pipe 3 • ipfw queue 2 config weight 2 pipe 3 • ipfw queue 3 config weight 1 pipe 3 • ipfw add queue 1 all from 10.0.1.1 to any keep-state • ipfw add queue 2 all from 10.0.1.2 to any keep-state • ipfw add queue 3 all from 10.0.1.0/24 to any keep-state
IPFireWall ile Trafik Düzenleme • Dinamik Bant Genişliği Düzenleme: • Tüm kullanıcıların hızını sabit değerle sınırlama, • ipfw pipe 4 config bw 56Kbit/s mask src-ip 0xffffff • ipfw pipe 5 config bw 56Kbit/s mask dst-ip 0xffffff • ipfw add pipe 4 all from 10.0.1.0/24 to any • ipfw add pipe 5 all from any to 10.0.1.0/24
netUstad – Network Üstadı IBM Linux Başarı Ödülleri 2004 Finalisti olan netUstad; • Ağ Yönetimini Kolaylaştırmak • Kullanıcıdan kaynaklanabilecek yazım hatalarını en aza indirgemek • Ağ servislerini birarada yönetmek Amacıyla geliştirilmiş ve geliştirilmeye devam eden bir yazılımdır. Proje Sayfası: http://www.enderunix.org/netustad Yazar: Özkan KIRIK EnderUNIX Yazılım Geliştirme Takımı Dönem Lideri – Yazılım Geliştiricisi
netUstad – Network Üstadı netUstad’ın Özellikleri; • FreeBSD ve Linux Platformlarında Çalışabilir • Kendi HTTP/HTTPS Sunucusunu Barındırıyor • FreeBSD’de ipfw ve natd Yönetimi • Linux’ta iptablesYönetimi • Routing Tablosu Yönetimi • Ağ Arayüzleri Yönetimi • Kullanıcı Arayüzü için SSL desteği • Çoklu Dil Desteği (NLS – Gettext)
EnderUNIX Yazılım Geliştirme Takımı • Yazılım geliştirme konusunda dünyaca kabul görmüş yerli bilgi ve yerli ürün üretmek misyonuyla kurulmuştur. • Türkiye’de kurulan ilk açık kod yazılım geliştirme takımıdır. Kurulduğu günden beri aktif olarak proje ve bilgi üreten ve üretmeye devam eden bir oluşumdur. • İç tüzüğü ve çalışma prensipleri tanımlanmış yarı sanal yarı gerçek bir organizasyondur. • Şu ana kadar tüm dünyada kullanılan, değişik işletim sistemlerine port edilen 12 adet yazılım çıkarmıştır.
EnderUNIX Yazılım Geliştirme TakımıOrganizasyon Yapısı Destekleyenler Kullanıcılar • Çekirdek Takım: • İsmail YENİGÜL • Murat BALABAN • Ömer Faruk ŞEN • Barış ŞİMŞEK • Yazılım Geliştirme Takımı • Halil DEMİREZEN • Atılım BOY • Necati Ersen ŞİŞECİ • Özkan KIRIK Yazılım Geliştirme Takımı Çekirdek Takım • Destekleyenler • Özgür ÖZDEMİRCİLİ • Huzeyfe ÖNAL • Marmara Üniversitesi • 9 Eylül Üniversitesi
EnderUNIX Yazılım Geliştirme TakımıProjelerimiz • Isoqlog: Sendmail, qmail, postfix ve exim destekleyen Mail Sunucu log analiz programı. • Vpwd2SQL: /etc/[shadow|master.passwd] dosyalarını vpopmail kullanıcılarına dönüştürür • QLDAPAdmin: qmail kullanıcılarının bilgilerinin tutulduğu LDAP dizinlerini yönetim uygulamasıdır • spamGuard: Sendmail, postfix ve qmail destekleyen spam önleyici uygulama • Aget: Multithreaded download programı • Hafiye: POSIX uyumlu, kişiselleştirilebilir bir TCP/IP ağ paket dinleyicisi
EnderUNIX Yazılım Geliştirme TakımıProjelerimiz • Knowlan: ARP protokolü bazlı, yerel ağdaki bilgisayarların IP ve network kartı ARP bilgisini listeler. • Zabit: Zabit, qmail için yazılmış bir içerik ve eklenti filtreleyicidir. • netUstad: Network servislerini kolayca webden yönetebilmek için bir arabirim • qSheff: qmail Antivirüs & İçerik Filitreleme Aracı Program • VoIPong: Voice Over IP Sniffer • CheckDNS: DNS Sunucu analizi yapan ve raporu HTML olarak üreten bir program.
-- Teşekkürler -- Sorular Özkan KIRIK EnderUNIX Yazılım Geliştirme TakımıDönem Lideri – Yazılım Geliştiricisiozkan@enderunix.orghttp://www.enderunix.org/~ozkan/