'*nix' Kategori'sine ait arşiv.
DjbDNS ile Caching DNS Server Kurulumu
Caching-only dns server olarak tabir edilen dns sunucular, üzerlerinde herhangi bir alan adına ait kayıt tutmaksızın, istemcilerden gelen sorguların cevaplarını ilgili name serverlardan alarak istemciye sunmak ve bu query sonuçlarını -dns kaydının TTL‘i süresince- belleklerinde tutmakla sorumlu sunuculardır. Bu şekilde daha önceden sorgulanarak belleğe alınmış alan adları için tekrar istek gelmesi durumunda, cache dns sunucusu yanıtı belleğinden verecektir. Böylece istemciler için sorgu süreleri ciddi oranda kısalmış olacaktır. Ayrıca, bant genişliğinden de tasarruf sağlanacaktır.
Örneğin e-marketing için kullanılan -yani yoğun gönderim yapan posta sunucuları- için networkte bir caching only dns server bulundurmak, posta sunucularının gönderimleri daha süratli yapabilmelerine olanak sağlayacaktır. Yazının devamında FreeBSD üzerinde djbdns ile cache only dns server kurulumundan bahsedeceğim.
MTR – My Traceroute
Mtr, traceroute ve ping araçlarının özelliklerini bir arada kullanan güzel bir network diagnostic aracıdır. Mtr, herhangi bir hedef adres için öncelikle yol üzerindeki tüm hop’ların adreslerini tespit eder ve bu cihazlara icmp echo requestler (ping) göndererek her birinin bağlantı durumlarını ekrana basar. Böylece yol üzerinde bulunan noktaların round-trip time ve packet loss değerlerini tespit ederek sorun saptama işini kolaylaştırabilirsiniz.
Mtr, RHEL, CentOS, Debian, Ubuntu, FreeBSD gibi sistemlerin paket depolarında bulunmaktadır. Dolayısıyla kullandığınız işletim sisteminin paket yöneticisi ile kurulum yapmanız mümkündür.
Yazının devamında mtr’nin kullanım şekilleri ile ilgili detay bulabilirsiniz.
Postal: Smtp Performance Benchmark
Postal, mail sunucuların performans testlerini yapmak üzere geliştirilmiş güzel ve küçük bir yazılımdır. Temel olarak postal ile belirlediğiniz adreslere (ya da adres listesine), belirlediğiniz bir süratte e-mail göndererek, mail sunucusunun gelen postaları işleme hızını tespit edebiliyorsunuz. Postal, gönderilecek maillerin ebatı, gönderimin kaç süreç ile yapılacağı, dakikada ne kadar mail atılacağı ve bağlantı başına gönderilecek mail adedine kadar bir çok test parametresini belirlemenize olanak sağlıyor. Aynı zamanda postal içerisinde gelen rabid aracı ile mail sunucunuzun pop3 servisi için de benzer testleri yapabiliyorsunuz.
Ben postal’ı marketing mailleri için kullandığım posta sunucularının gönderim hızlarını tespit etmek için kullanıyorum. Bu araçla, birden fazla posta sunucusuna round-robin gönderim yapabiliyor ve genel durumu da tespit edebiliyor ve test verilerinden hareketle sistemlerinizi iyileştirme şansına sahip oluyorsunuz.
Yazının devamında, postal’ın kaynak koddan kurulumu ve benchmark işlemlerinin yapılmasından bahsedeceğim. Siz de posta sunucularınızın performanslarını ölçmek istiyorsanız işinize yarayacaktır.
GreenSQL DB Firewall ile Sql Injection Önlemi
| GreenSQL, sql injection saldırıları için database’leri koruma altına almak üzere geliştirilmiş bir database firewall uygulamasıdır. MySQL ve PostgreSQL’ler için destek sunan GreenSQL temel olarak proxy olarak çalışarak gerçek database’in önünde durur ve web uygulamasından gelen sql bağlantı isteklerini karşılayarak SQL komutlarını inceler ve bir risk scoring matrix kullanarak ilgili sql cümlelerini analiz ederek aksiyon alır. | ![]() |
Bu şekilde, web uygulamanızda bir sql injection açığı bulunsa dahi GreenSQL sayesinde açıktan etkilenmemeniz mümkün olabilir. Detaylarına yazının devamında değineceğim GreenSQL temel olarak, default 3305 portunu dinler ve gelen sql istekleri için risk analizi yapar; güvenli olmaları durumunda komutları arkadaki sql sunucusuna iletir, eğer sql cümleleri güvenli değil ve daha önceden de Whitelist’e eklenmemişlerse blocklar ve uygulamaya boş bir cevap döndürür. GreenSQL’in IPS, IDS, Firewall ve Learning gibi modlarda çalıştırabilirsiniz. Özellikle learning modu false positive durumların önüne geçmek için çok kullanışlıdır. Ayrıca GreenSQL fiziksel olarak database sunucunuz ile aynı makinada çalışabilir ya da ayrı bir makina üzerine konumlandırabilirsiniz.
Yazının devamında, GreenSQL’in çalışma mantığından, kurulum ve yapılandırma işlemlerinden bahsedeceğim.
Ubuntu 9.10 Üzerine Nessus 4.2 Kurulumu
![]() |
Bildiğiniz gibi bir iki ay önce Nessus’un 4.2.0 sürümü çıktı. Daha önce Nessus kurulumu ile ilgili bir yazı yayınlamıştım ancak bu yeni sürümde özellikle kullanım ve yönetim ile ilgili konularda güzel değişiklikler olduğu için güncelleme niteliğindeki bu yazıyı yayınlamak istedim. Örnek olarak bu değişikliklerden birisi de built-in bir web interface sunulması. Bildiğiniz gibi eski sürüm bir Nessus servisini kullanabilmek için sisteme bir de client uygulaması kurmak icap ediyordu, ancak yeni Nessus sürümüde tüm işlemler web tarayıcısı üzerinden gerçekleştirilibiliyor. |
4.2.0 sürümü ile ilgili detaylı bilgiye http://www.nessus.org/news/ adresinden erişebilirsiniz; ben yazının devamında Ubuntu 9.10 üzerine Nessus 4.2 kurulumundan bahsedeceğim.
Lighttpd Virtual Hosting (vhost) Yapılandırması
| Daha önce güzel bir apache alternatifi olan Lighttpd’nin kurulum ve yapılandırılması ile alakalı bir iki yazı yayınlamıştım. Ancak o yazılarda vhosts denen virtual hosting (sanal konaklar) ile ilgili herhangi bir yapılandırma işlemine değinmemiştim. Ancak daha öncede değindiğim gibi Lighty artık bir çok web sitesinin yayınlanması için kullanılıyor. (güncel netcraft verilerine göre 840.654). Bu nedenle belki siz de lighttpd’yi birden fazla domain barındırmak üzere yapılandırıp test etmek istersiniz. Dolayısı ile bu yazıda, Lighttp’nin vhosts yapılandırmasından bahsecedeğim… | ![]() |
GNU/Linux Advanced Administration – Ücretsiz eKitap
![]() |
Free Technology Academy (FTA) tarafından, “GNU/Linux Advanced Administration” isminde çok güzel bir elektronik kitap yayınlandı. Toplam 11 bölüm içeren ve 545 (18.9MB) sayfalık bir pdf dökümanı olarak “GNU Free Documentation License, Creative Commons Attribute ShareAlike License” lisansı ile dağıtılan bu ücretsiz kitap özellikle sistem yönetimi üzerine yazılmış çok değerli bir kaynak teşkil ediyor. Bu açıdan http://ftacademy.org/materials/fsm/2 adresinden kitabın bir kopyasını edinmenizi ve arşivinizde bulunmasını önemle tavsiye ederim. |
CentOS üzerinde Fail2Ban ile Brute Force Önlemi
| Sunucunuzda, internet üzerinden direk erişilebilir ve güvenliği sadece şifre ile sağlanan servisleriniz varsa, log dosyalarınızda birilerinin şifre deneme yöntemi ile ilgili servis üzerinde yetki elde etme teşebbüslerini tespit edebilirsiniz. Örnek olarak sunucunuzdaki SSH servisi default (22.) porttan çalışıyor ve herhangi bir erişim kontrol mekanizması (firewall vs.) kullanmıyorsanız bu durumla bol bol karşılaşmanız kaçınılmazdır. (ve umarım güçlü bir şifre kullanıyorsunuzdur.) | ![]() |
Ancak sunucunuza herhangi bir nedenle erişim kontrolü uygulayamıyorsanız ve gerçekten de ilgili servislere (örneğin ssh) herhangi bir yerden erişilmesi gerekiyorsa en azından fail2ban kullanabilir ve sunucunuzun brut force attack ile ele geçirilme riskini minimize edebilirsiniz. Fail2ban, sunucunuzun log dosyalarını takip ederek, sizin belirlediginiz bir sayının üzerinde başarısız login girişimininde bulunan birinin IP adresini gene sizin belirlediğiniz bir süre boyunca reject etmeye yarayan güzel bir python uygulamasıdır.
Bu yazıda, Iptables ya da tcpwrapper (hosts.deny) kullanarak sshd, vsftpd, proftpd, apache, lighttpd gibi uygulamalar için başarısız login denemelerinde (ya da sizin belirlediğiniz herhangi bir aksiyonda) ilgili aktivitenin kaynak ip’sini belirli bir süre banlamak için kullanılan bu güzel uygulamanın kurulumu, yapılandırması ve özelleştirilmesinden bahsedeceğim.







