Debian Squeeze Nagios Monitoring

Nagios Nedir? NAGIOS sistem ve ağ denetleme uygulamasıdır.Belirtilen makine üzerinde çalışan servislerin durumunu kontrol eder ve uygulamalarda bir problem olduğunda belirtilen yöntemle kullanıcıya bildirir.Aynı segmentte ya da değil Nagios ile belirtilen makina,servisler kontrol edilebilir.

Nagios ile ne yapılabilir:

  • Network servisleri denetleneme (SMTP, POP3, HTTP, NNTP, PING, vs)
  • Makine kaynakları denetleneme (disk kullanımı vs )
  • Otomatik log döndürme (log rotation)
  • Belirtilen servisler yada makineler üzerinde belirtilen durumlarda kullanıcıya çeşitli yöntemlerle uyarı verme
  • Mail , SMS , Telefon , ICQ vb yöntemlerle uyarı verebilme
  • Web arayüzünden makinelerin , servislerin ,logların ayrıntılı takibi

olarak sıralanabilir. [1]

Nagios hakkında kısa bir bilgi verdikten sonra,Debian Squeeze üzerine Nagios kurulumunu ve diğer Debian Squeeze sunucuların nasıl monitor edileceği hakkında kısaca değineceğim.

İlk olarak Nagios'u monitoring yapacağımız makinaya kurulumunu yapalım ve daha sonra nagios client ile  izleyeceğimiz diğer sunuculara geçelim.Kısaca bir makinamız Nagios Server ve diğer izleyeceğimiz sunucu ise Nagios Client olarak anabiliriz.

Nagios Server Kurulumu :

Debian Squeeze depolarında nagios paketlerini bulunduğu için ,direk depodan kurulum yapacağım.Kaynak koddan kurulum yapmayacağım.Kaynak kodlardan kurulum için bu adrese bakabilirsiniz.

Depodan gerekli paketleri kuralım:

Nagios Server

# apt-get install nagios3 nagios-plugins nagios-nrpe-plugin

Bu kurulum aşamasında SAMBA sizden workgroup adı isteyecektir.Öntanımlı ayarları onaylayarak geçebilirsiniz.Ayrıca Nagiosadmin için sizden parola belirlemenizi isteyecektir.İsteğinize göre parola belirleyip devam edin.

Şimdi Nagios Client olan sunucumuza gerekli kurulumları yapabiliriz.

Nagios Client

# apt-get install nagios-nrpe-server nagios-plugins

Nagios Client sunucumuzda gerekli paketleri kurduktan sonra yapılandırmalara geçelim.Nagios Client sunucumuzda Nagios Server'ımızın ip adresini verelim.Bunun " /etc/nagios/nrpe.cfg " dosyasında gerekli değişiklikleri yapalım:

# vi /etc/nagios/nrpe.cfg

Dosyamızı açtıktan "allowed_hosts= " ile başlayan satırı bulun ve ;

allowed_hosts=127.0.0.1

yerine Nagios Server'ımızın ip'sini girelim.( Örnek olarak 192.168.1.45 Nagios Server'ımın ip'si)

allowed_hosts=192.168.1.45

Şeklinde değiştirin.Yapacağımız diğer bir ayar ise eğer disk kullanımını izlemek istiyorsak gerekli değişikliği yapmalıyız.

Bunun içinde Nagios Client makinamızdaki izleyeceğimiz disk ve partition'ı belirleyip,nagios'a bunu bildirmek.

İzleyeceğiniz disk ve partition'ı yine "/etc/nagios/nrpe.cfg" dosyasında belirtelim. (disklerimizi ve partitionlarınızı 'df -h' komutuyla görebilirsiniz.) Örnek olarak 'sda5' partition'ı izlemek için gerekli ayarlar:

# vi /etc/nagios/nrpe.cfg

Dosyamızı açtıktan sonra aşağıdaki satırı bulup gerekli değişiklikleri yapalım.

command[check_hda1]=/usr/lib/nagios/plugins/check_disk -w 20% -c 10% -p /dev/hda1

yerine

command[check_sda5]=/usr/lib/nagios/plugins/check_disk -w 20% -c 10% -p /dev/sda5

şeklinde değiştirin.

Nagios Client tarafında gerekli ayarlamaları yaptıktan sonra 'nagios-nrpe' servisini yeniden başlatın.

# /etc/init.d/nagios-nrpe-server restart

Şimdilik Nagios Client tarafındaki işlemlerimiz bitti.Artık Nagios Server tarafındaki ayarlamalara geçelim. İlk olarak Nagios Server'a izleyeceğimiz client'ı ve bu client üzerinde izleyeceğimiz servislerin ayarlarını yapalım. Biraz önce Client ayarlarını yaparken Nagios Server'ımızın ip adresini(192.168.1.45) vermiştik,şimdi de Nagios Server'a Client'ın ip'sini ve izleyeceğimiz servisleri verelim.(Client makinamın ip'si 192.168.1.91 ve izleyeceğim servisler HTTP servisi,disk durumu,load avarage,prossesler )

Nagios Server'a bunları belirtmek için her ayrı client'a özel "/etc/nagios3/conf.d/ " dizini altında bir konfigurasyon dosyası oluşturalım.

# touch /etc/nagios3/conf.d/client1_nagios.cfg

dosyamızı oluşturduktan sonra aşağıdaki ayarları dosyaya yazıp,kaydedelim.

define host{
        use             generic-host
        host_name       client1
        alias           client1
        address         192.168.1.91
}
define service{
        use                     generic-service
        host_name               client1
        service_description     HTTP-Server
        check_command           check_http
}
define service{
        use                     generic-service
        host_name               client1
        service_description     Current Load
        check_command           check_nrpe_1arg!check_load
}
define service{
        use                     generic-service
        host_name               client1
        service_description     Current Users
        check_command           check_nrpe_1arg!check_users
}
define service{
        use                     generic-service
        host_name               client1
        service_description     Disk Space
        check_command           check_nrpe_1arg!check_sda5
}
define service{
        use                     generic-service
        host_name               client1
        service_description     Total Processes
        check_command           check_nrpe_1arg!check_total_procs
}

Yukardaki gibi girildikten sonra Nagios servisini yeniden başlatalım.

# /etc/init.d/nagios3 restart

Artık bir client için gerekli ayarları yaptık.Şimdi ayarlarımızı ve çalışıp,çalışmadığını test edelim:

# cd /usr/lib/nagios/plugins/ # ./check_nrpe -H 192.168.1.91 -c check_users

Eğer düzgün çalışıyorsa aşağıdaki gibi bir sonuç alacaksınız :

USERS OK - 2 users currently logged in |users=2;5;10;0

Nagios kurulumunu burada tamamladık. Buarada anlatılanlardan daha fazla servis ve client ekleyebilirsiniz,hepsi size kalmış :)

Centos 5.5 MongoDB

Centos ve diğer RedHat tabanlı dağıtımlar üstünde MongoDB ihtiyacı duyuyorsanız, resmi depolarda olmadığı için güvenilir ve sürekli güncellenen bir depoya ihtiyacınız olabilir.MongoDB geliştiricileri bu noktada ihtiyacınız olan depoyu oluşturmuşlar.Depoyu ekleyip,sisteme hemen kurulum yapabilirsiniz.

MongoDB geliştiricilerinin oluşturduğu depoda 2 farklı platform(x86 , x86_64)  için 3 sürümü( stable , unstable, snapshot) bulunuyor.İstediğiniz sürümü depodan yükleyebilirsiniz.

İlk olarak depomuzu ekleyelim:

#  touch /etc/yum.repos.d/10gen-mongodb.repo

Oluşturduğumuz "10gen-mongodb.repo" dosyasına depo bilgilerini aşağıdaki gibi platformunuza göre ekleyin.

vi /etc/yum.repos.d/10gen-mongodb.repo

X86_64 için :

[10gen] name=10gen Repository baseurl=http://downloads-distro.mongodb.org/repo/redhat/os/x86_64 gpgcheck=0  X86 için :
[10gen] name=10gen Repository baseurl=http://downloads-distro.mongodb.org/repo/redhat/os/i686 gpgcheck=0   Depomuzu ekledikten sonra MongoDB Server ve Client paketlerini yükleyebiliriz: MongoDB Server ve Client Stable Sürüm : # yum install mongo-10gen mongo-10gen-server
MongoDB Server ve Client Unstable Sürüm :
# yum install mongo-10gen-unstable mongo-10gen-unstable-server
MongoDB için ayar yapmak için konfigurasyon dosyasından gerekli değişiklikleri yapabiliriz."/etc/mongodb.conf " dosyasında istediğiniz değişiklikleri yapabilirsiniz.
" /etc/mongodb.conf " için :
logpath = ' Bu kısıma mongodb için log tutulacak dosyanın yolunu yazın.'
port = ' Burada mongodb 'nin kullanacağı portu belirtin.'
dbpath = ' mongodb için kullanacağı dizin yolunu belirtin.'
Bu dosyada gerekli değişiklikleri yaparken dikkat etmeniz gereken öntanımlı ayarların en uygun ayarlar olduğunu göz önünde bulundurun.
Yukarda mongodb için "dbpath" belirtiyseniz herhangi bir sorun yaşanmaması için izinlerini vermeyi unutmayın.Bunun içinde :
# chown -R mongod.mongod 'dbpath_icin_yazdiginiz_yol'
Dikkat edilmesi diğer bir nokta ise yine " mongodb.conf " dosyasında belirtmiş olduğunuz portun firewall tarafından izin verilip,verilmediğini kontrol edin.
Artık MongoDB'yi başlatalım ve açılışa ekleyelim :
# /etc/init.d/mongod start
# chkconfig --levels 235 mongod on
Ve son olarak Mongo'nun çalışıp çalışmadığını test edin :
# mongo 

SunFire T2000

Kıyıda köşede uzun süredir yatan sparc işlemcili SunFire T2000 makinayı canlandırmaya karar verdim.Sparc portu olan tüm linux dağıtımlarını denememe rağmen "kernel'ini aşağıdaki gibi panic'liyordu".

[    0.000000] I7: <paging_init+0xa4c/0xe18> [    0.000000] Disabling lock debugging due to kernel taint [    0.000000] Caller[00000000008ab1cc]: paging_init+0xa4c/0xe18 [    0.000000] Caller[00000000008a6db4]: setup_arch+0x394/0x3a4 [    0.000000] Caller[00000000008a4554]: start_kernel+0x74/0x36c [    0.000000] Caller[0000000000723224]: tlb_fixup_done+0x80/0x88 [    0.000000] Caller[0000000000000000]: (null) [    0.000000] Instruction DUMP: 92100010  7fee366e  90100011 <d25a0000> 11001ee f  7ffa2a19  90122270  15001eef  90100011 [    0.000000] Kernel panic - not syncing: Attempted to kill the idle task! [    0.000000] Call Trace: [    0.000000]  [000000000045f360] do_exit+0x64/0x6ac [    0.000000]  [0000000000427c08] die_if_kernel+0x264/0x290 [    0.000000]  [0000000000736f10] unhandled_fault+0x90/0x9c [    0.000000]  [000000000073748c] do_sparc64_fault+0x570/0x650 [    0.000000]  [0000000000407900] sparc64_realfault_common+0x10/0x20 [    0.000000]  [00000000008a9714] sun4v_mdesc_init+0x1cc/0x2ac [    0.000000]  [00000000008ab1cc] paging_init+0xa4c/0xe18 [    0.000000]  [00000000008a6db4] setup_arch+0x394/0x3a4 [    0.000000]  [00000000008a4554] start_kernel+0x74/0x36c [    0.000000]  [0000000000723224] tlb_fixup_done+0x80/0x88 [    0.000000]  [0000000000000000] (null) [    0.000000] Press Stop-A (L1-A) to return to the boot prom

Uzun bir uğraştan sonra sadece 2.6.20-r4 kernelli Gentoo 2007 Universal Live Cd açıp,sapasağlam bir Gentoo kurulumu yaptım.Fakat bu haliyle makinayı hiçbir güncelleme yapılamayacaktı.Çünkü güncel bir kernelde panik yapıyordu.

Mail listelerinde bir araştırmadan sonra aynı hata ile karşılaşan bir kişinin firmware güncelleyerek linux kurulumunu başarıyla yaptığını okudum.Hemen firmware güncellemeye geçtik.Tabi sorun burada da bitmiyor ,bir de "sc" ye giriş yapmak için parolayı bilmiyorduk ve birde parola sıfırlamaya giriştik.

Parolayı sıfırlamak için;
1. İlk olarak güç bağlantısını çıkarın ve 5 sn bekleyin.Daha sonra tekrar bağlayın.

2.Alom boot etmeye başlayacaktır ve "Return to Boot Monitor for Handshake ESC keypress detected." yazısını gördüğünüz anda "ESC" tuşuna basın.

3. "ESC" tuşuna bastıktan sonra "ALOM boot escape menu" karşınıza gelecektir.

ALOM  Menu

 e - Erase ALOM NVRAM.
 m - Run POST Menu.
 R - Reset ALOM.
 r - Return to bootmon.
 Your selection:

4. Yukardaki gibi menu karşımıza çıktıktan sonra ilk NVRAM'i silip,daha sonra ALOM'u boot etmesine devam edelim.Bunun için ilk önce "e" ve daha sonra "r" yi tuşlayalım.

5.Bu adımlardan sonra "sc" ye doğrudan admin olarak giriş yapabileceksiniz.

Firmware Güncelleme :

SunFire T2000'in üstündeki firmware 6.1.10 ve bu firmware ile herhangi port edilmiş bir linux dağıtımını rahatlıkla kuramıyorsunuz.Bunun için firmware güncellemesi gerekli.Fakat dikkat edilecek nokta eğer  Oracle "CIS" numaranızı bilmiyorsanız "OpenSourceLab" ftp'sindeki 6.3.0 sürümünü indirip yükleyin.Aynı depoda 6.7.6 sürümü de mevcut fakat bu firmware geçersiz uyarısı alabilirsiniz."CIS" numaranız varsa zaten böyle bir sıkıntınız da olmayacaktır.

SunFire T2000 'de ya da herhangi Sun Sparc makina da "sc" ye düştükten sonra;

showhost

komutuyla firmware versiyonunuzu öğrenebilirsiniz.Güncellemek için ben ilk olarak firmware'i indirip local'deki bir ftp sunucuya koydum ve flashupdate komutuyla güncelledim.Tabi ftp'ye bağlanmak için "NET MGT" portuna bağlantıyı takmanız lazım.Eğer ağınız otomatik ip almıyorsa;

# setupsc

komutunu vererek ip atayabilirsiniz.

Firmware'i buradan indirip,bir public ftp'ye attıktan sonra aşağıdaki gibi güncelleyebilirsiniz:

# flashupdate -s [ftp_ip_adresi] -f /pub/Sun_System_Firmware-6_3_0-Sun_Fire_T2000.bin

Artık firmware'miz güncelledi."resetsc" komutunu verip yeniden başlatın ve "showhost" komutuyla güncellenip güncellenmediğini kontrol edin.

Debian Lenny'den Squeeze'e yükseltme

Debian'nın son kararlı sürümü 6.0 Squeeze çıkmasına üzerine birçok kişi de yükseltme hevesinde.Tabi önemli olanda yükseltme işini güvenli ve kayıpsız olarak sapasağlam yapabilmek.

Sürümümüzü yükseltmeye geçmeden önce olabilecek herhangi bir arızaya karşın önemli olan tüm dosya ve dizinleri yedekleyin.Bu yedeklerin içine önemli kofigurasyon dosyalarınıza da eklemeyi unutmayın.

İlk olarak mevcut olan Lenny'i güncelleyelim ve daha sonra Squeeze sürümüne yükseltelim.

vi /etc/apt/sources.list

Debian depo kaynak adreslerinin olduğunu "sources.list" dosyasını kontrol edelim ve içindeki depo adreslerinin aşağıdaki gibi olup olmadığını gözden geçirin:

deb http://ftp.tr.debian.org/debian/ lenny main contrib non-free
deb-src http://ftp.tr.debian.org/debian/ lenny main contrib non-free
deb http://security.debian.org/ lenny/updates main
deb-src http://security.debian.org/ lenny/updates main
deb http://volatile.debian.org/debian-volatile lenny/volatile main
deb-src http://volatile.debian.org/debian-volatile lenny/volatile main 

Kaynak adreslerini kontroldan sonra Lenny'i güncelleyelim.

apt-get update

apt-get upgrade

apt-get dist-upgrade

Lenny'i güncelleme adımları tamamlandıktan sonra herhangi bir soruna karşın yükseltilmeyecek ya da tam yüklenmemiş paketlerin olup olmadığını kontrol edelim.

dpkg --audit

dpkg --get-selections | grep hold

Debian 6.0 Squeeze yayınlandı

Uzun bir test sürecinin ardından Debian'ın kararlı sürümü "Debian 6.0 Squeeze" yayınlandı.Yine dopdolu paket deposu (29000'den fazla paket ile) ,desteklediği multi platformları ve en önemlisi çekirdeğinde hiçbir non-free firmware bulunmayarak tamamen özgür bir Debian sürümü karşımızda.

Basın duyurusuna ulaşmak için buradan .

Hemen Debian edinmek için buradan .

Örnek Ekran Görüntüleri:

Özgür Yazılım Lisansları

Özgür Yazılım Derneği ( FSF ) en son güncellenmesi 24 Ocak tarihinde yapılan GNU GPL ile uyumlu ,yazılımları "Özgür Yazılım" olarak niteleyebilecek lisansların listesini hazırlamış.Bu listede olan lisanslarla dağıtılan yazılımlar tamamen GNU GPL lisansı ile uyumlu ve özgür yazılımlardır.Hazırlanan liste içinde aynı zamanda "özgür yazılım" olan fakat GNU GPL lisansı ile uyumlu olmayan lisansların listesine ve ayrıca yazılımları kesinlikle  "özgür yazılım" yapamayacak lisanslara da yer verilmiş.Şu listeye bir göz atalım:

GNU GPL ile uyumlu ÖZGÜR YAZILIM LİSANSLARI

Aşağıdaki listede "Özgür Yazılım" lisansı olan fakat GNU GPL uyumlu olmayan lisanslar listelenmiştir:

GNU GPL ile uyumlu olmayan ÖZGÜR YAZILIM LİSANSLARI :

Aşağıdaki listede de "özgür olmayan" yazılım lisansları sıralandı.Tabi bunlar doğal olarak da GNU GPL ile de uyumlu değil.Önerim bu lisanslarla gelen yazılımlardan uzak durun!

ÖZGÜR  OLMAYAN YAZILIM LİSANSLARI

Listedeki lisansların daha detaylı açıklamasına ve neden bu kategorilerde listelendikleri hakkında daha detaylı bilgi almak için burayı ziyaret edin.

Tivibu,TTNET ve Rekabet Kurulu

Geçtiğimiz yıl birkaç Linux kullanıcısının Rekabet Kurulu'na Tivibu'nun Linux üzerinde çalışmadığı hakkında şikayette bulunmuştu(Şikayet sonunda çıkan kararın pdf hali için buradan). Bu şikayeti ve çıkan kararı google'da tesadüfen gezinirken keşfetmiştim.Kısaca Rekabet Kurulu verdiği kararda TTNet'in uygulaması olan Tivibu'nun Moonlight ile Linux üzerinde çalışabildiğine ve Linux platformunda bir sorun olmadığına karar vermiş.Fakat deneyen Linux kullanıcıları biliyor ki bu bahsi geçen uygulama Moonlight ile çalışmamakta.Tivibu'nun Linux için client'ı yok ve Linux üzerinde Tivibu çalıştırmak (birkaç kişi bunu başarmış ) deveye hendek atlatmak gibi.

Özet olarak bu şikayeti gördükten sonra birde ben şikayette bulundum.Moonlight ile bu uygulamanın çalışmadığı hakkında ve yine google'da tesadüfen çıkan kararı gördüm.Kararı paylaşıyorum,karar biraz manidar.İlk şikayetin ardında çalışan uygulama şimdi çalışmaz  olmuş ve bu da Microsoft'un diğer rakipleri ile rekabet ihlaline  yol açmıyormuş.Pek anlamadım  ama anlayan anlatır umarım.Pdf hali için buradan .

Rekabet Kurumu Başkanlığından

REKABET KURULU KARARI

Dosya Sayısı: 2010-2-272 (İlk İnceleme) Karar Sayısı : 10-78/1619-621 Karar Tarihi : 16.12.2010 A. TOPLANTIYA KATILAN ÜYELER Başkan : Prof. Dr. Nurettin KALDIRIMCI Üyeler : Doç. Dr. Mustafa ATEŞ, Mehmet Akif ERSİN, İsmail Hakkı KARAKELLE, Doç. Dr. Cevdet İlhan GÜNAY, Murat ÇETİNKAYA, Reşit GÜRPINAR B. RAPORTÖR : Özgür Can ÖZBEK C. BAŞVURUDA : - Emre ERYILMAZ BULUNAN Adresi tespit edilememiştir. D. HAKKINDA İNCELEME YAPILAN: -Türk Telekomünikasyon A.Ş. Turgut Özal Bulvarı 06103 Aydınlıkevler- Ankara E. DOSYA KONUSU: Rekabet Kurulu’nun, 5.8.2010 tarih ve 10-52/982-349 sayılı kararının yeniden değerlendirilmesi talebi. F. İDDİALARIN ÖZETİ: Başvuruda, 5.8.2010 tarih ve 10-52/982-349 sayılı Rekabet Kurulu kararında bahsedilen Microsoft Silver Light adlı yazılımın Linux platformu üzerinde kısıtlı özellikleri barındırdığı ve bu yazılım ile Tivibu hizmetinin çalıştırılamadığı dolayısıyla söz konusu hizmeti kullanmak isteyen Linux kullanıcılarının bu imkâna sahip olmadıkları ifade edilerek, Tivibu hizmetini sunan TTNET tarafından, diğer işletim sistemleri için çıkarıldığı gibi, Linux için uyumlaştırılmış sürümün yayınlanması talep edilmektedir. G. DOSYA EVRELERİ: Kurum kayıtlarına 27.10.2010 tarihinde, 8206 sayı ile intikal eden başvuru üzerine yapılan inceleme neticesinde hazırlanan 29.11.2010 tarih ve 2010-2-272/İİ-10-392.ÖCÖ sayılı İlk İnceleme Raporu, 6.12.2010 tarih ve REK.0.06.00.00-110/601 sayılı Başkanlık önergesi ile birlikte 16.12.2010 tarih ve 10- 78 sayılı Kurul toplantısında görüşülerek karara bağlanmıştır. H. RAPORTÖRÜN GÖRÜŞÜ: İlgili raporda; Türk Telekom hakkında 4054 sayılı Kanun kapsamında işlem tesis edilmesine gerek olmadığı ifade edilmiştir. I. DEĞERLENDİRME Başvurunun değerlendirilmesi bakımından ilgili kararın değerlendirme kısmının göz önüne alınması gerekmektedir. İlgili kararda, “Yukarıda yer verilen bilgiler ışığında TTNET tarafından Tivibu hizmeti için tercih edilen MS Silverlight teknolojisinin teşebbüsün hizmeti için aradığı nitelikleri sağladığı, mümkün olduğunca geniş bir kullanıcı tabanına hitap etmek suretiyle 10-78/1619-621 makul bir ticari tercihi yansıttığı görülmektedir. Bahse konu teknoloji hâlihazırda Macintosh gibi başka bir işletim sistemiyle uyumlu çalışabilmekte, Linux ile uyumlu çalışabilmesi yönünde de çalışmalar devam etmektedir. Bu kapsamda Türk Telekom’un iştiraki TTNET ile Microsoft arasındaki anlaşmanın salt bir hizmet alım anlaşması niteliğinde olduğu ve herhangi bir münhasırlık içermediği de göz önüne alındığında, şikâyet konusu durumun Microsoft işletim sisteminin rakiplerini dışlayıcı, dolayısıyla rekabet ihlaline yol açan bir sonuç doğurmadığı” değerlendirmesi yapılmıştır. Dolayısıyla bahse konu kararda soruşturma açılmamasının sebebi, başvuru sahibi tarafından yanlış olduğu iddia edilen “Tivibu hizmetinin Linux işletim sistemi üzerinde çalışabilmesi” şeklinde bir izlenim değildir. TTNET tarafından kullanıcılarına sunulacak bir hizmet için teşebbüs tarafından talep edilen özellikleri sağlayacak bir başka teşebbüsle (Microsoft) bir hizmet alımı sözleşmesinden ibaret bir ilişkiye ilişkin rekabet hukuku kapsamında bir işlem yapılmasına gerek olmadığı gerekçesiyle soruşturma açılmamıştır. Bu sebeple mevcut başvurunun da rekabet hukuku çerçevesinde herhangi bir işlem yapılmasını gerektirmediği sonucuna ulaşılmıştır. J. SONUÇ Düzenlenen rapora ve incelenen dosya kapsamına göre; 27.10.2010 tarihinde 8206 sayı ile yapılan başvuruya ilişkin olarak herhangi bir işlem yapılmasına gerek olmadığına, talebin reddine OYBİRLİĞİ ile karar verilmiştir.

Sunucudan Google Apps Email ile mail göndermek

Sunucu kaynaklarınız az ve mail sunucunuz mevcut değilse,herhangi bir external mail sunucusunu kullanmak zorunda kalabilirsiniz.Birçok küçük ve orta ölçekli kurumların ya da sitelerin Google Apps hizmetlerinden faydalandığını düşünürsek ,sunucunuzdan sadece mail göndermek için Google'ın ücretsiz sunduğu mail hizmetinden faydalanabiliriz.

Sunucunuz ya da bilgisayarınız üzerinden mailleri dışardaki mail sunucusuna yönlendirmek için "ssmtp"i kullanabiliriz.CentOS üzerine "ssmtp" i kurmak için olmazsa olmaz ek depolardan "EPEL"in eklenmiş olması lazım."EPEL"i eklemek için bu yazıyı takip edebilirsiniz.

İlk olarak "ssmtp"i kuralım :

# yum install ssmtp 
"ssmtp" i kurduktan sonra "ssmtp.conf" dosyasına Google Apps Email hesap bilgilerimizi ve smtp ayarlarımızı ekleyelim :
# vi /etc/ssmtp/ssmtp.conf
root=kullanici_adi@domain_adi.com
mailhub=smtp.gmail.com:587
AuthUser=kullanici_adi@domain_adi.com
AuthPass=parola
UseSTARTTLS=YES

Bilgileri ekledikten sonra test maili gönderelim.

$ echo test | mail -s "test" kullanici_adi@domain_adi.com

Diğer Başka Kaynaklar :

Arch Linux için Ssmtp

Debian için Ssmtp

FreeBSD için Ssmtp

Gentoo için Ssmtp

WhatWeb ve Wordpress sürümü saklama

WhatWeb yazılımı internet sitelerini üzerinde CMS,blog,stats,analiz,javascript vs. gibi yazılımların kimliklerini ve sürümlerini tespit etmeye yarayan bir araç.WhatWeb yazılımı herhangi bir web sitesinin üzerindeki özellikle popüler kullanılmakta olan CMS ve blog yazılımlarının kimliklerini,sürümlerini ve sunucu bilgilerini toplayabiliyor.İnternet üzerinde yayın yapmak için kullandığımız herhangi bir yazılımın özellikle sürüm bilgisini vermek zararlı olabilir.Hele bir de güncellemekte gecikiyor ya da üşeniyorsanız!

İlk olarak WhatWeb yazılımını kuralım.Arch Linux,FreeBSD,Mandriva Linux ve Gentoo Linux için hazır paketleri mevcut.Ben Gentoo Linux ve Ubuntu Linux üzerine kurmaya değineceğim.

Gentoo Linux için "WhatWeb" "pentoo" overlay'inde mevcut.Pentoo Overlay'ini portage'a ekleyelim.Eğer "layman" kurulu değil ise ilk olarak kurun.Layman hakkında yardım almak için buradan buyrun.

# layman -a pentoo
# emerge -av whatweb 

Ubuntu 'ya "WhatWeb" yüklemek için ilk olarak Ruby kurmamız gerekiyor.Daha sonra "WhatWeb"i indirip çalıştırabiliriz.

# apt-get install ruby ruby-dev libopenssl-ruby
$ wget http://www.morningstarsecurity.com/downloads/whatweb-0.4.5.tar.gz
$ tar zxvf whatweb-0.4.5.tar.gz
$ cd whatweb-0.4.5

Artık "WhatWeb" ile testler yapmaya hazırız.Şimdi herhangi bir "Wordpress" sitesini test edip sürüm bilgilerini alalım.Daha sonra da sürüm bilgilerini Wordpress üstünden kaldırıp tekrar deneyelim.Yukarda da bahsetmem üzere sürüm güncellemekte gecikiyorsanız ya da güncelleme aralığınız uzuyorsa dışarıya sürümünüz hakkında bilgi vermemek en iyisidir.Belirsizlik karşıdakine daha çok zaman ve emek harcatır :)

İlk test yapalım :

$ ./whatweb linux.piesso.com
http://linux.piesso.com [200] WordPress[3.0.4], HTTPServer[LWS], UncommonHeaders[x-pingback], JQuery[1.4.2], Title[| Linux ve Özgürlük], RSSFeed[http://linux.piesso.com/wp-content/themes/openark-blog/style.css], MetaGenerator[WordPress 3.0.4], Tag-Hash[304a800265809c99e32ff96b774225fe], MD5[d1f3d9cdb0766514a3d290cceb2eccc3], Header-Hash[a82619f7784e56b660f31017e1d0174f], Footer-Hash[b7509d9fc94073b62bfe3d809e9ad5a9]

Yukarda görüldüğü gibi "WhatWeb" sitenin "Wordpress" ile oluşturulduğunu ve sürümünün "3.0.4" olduğunun çıktısını verdi."WhatWeb" sadece "Wordpress" değil bir çok yazılımının kimliğini tespit edebiliyor.Bunları görmek için de "-l" parametresini kullanabiliriz;

$ ./whatweb -l
Plugins Loaded
------------------------------
360-Web-Manager,0.1
ANECMS,0.1
ASP-Nuke,0.2
AVTech-Video-Web-Server,0.1
AWStats,0.1
Aardvark-Topsites-PHP,0.1
Acclipse,0.2
AdobeFlash,0.1
Advanced-Guestbook,0.2
Alcatel-Lucent-Omniswitch,0.1
Allinta-CMS,0.1
Antiboard,0.1
Apache-Default,0.3
ArGoSoft-Mail-Server,0.1
Arab-Portal,0.1
AtomFeed,0.1
Axis-Network-Camera,0.1
BM-Classifieds,0.1
BXR,0.1
Barracuda-Spam-Firewall,0.1
Basilic,0.1
BeEF,0.1
Belkin-Modem,0.2
Bing-SearchEngine,0.1
Biromsoft-WebCam,0.1
BlogSmithMedia,0.2
Blogger,0.1
BlognPlus,0.1
BlueNet-Video-Server,0.1
Brother-Printer,0.1
Burning-Board-Lite,0.1
BusinessSpace,0.1
CGI Backdoor,0.1
CGIProxy,0.1
CMSQLite,0.1
CMScontrol,0.1
CMSimple,0.1
CPanel,0.2
Campsite,0.1
Canon-Network-Camera,0.1
Cisco-VPN-3000-Concentrator,0.1
Citrix-Metaframe,0.2
CodeIgniterProfiler,0.1
ColdFusion,0.1
Comersus,0.2
CommonSpot,0.1
Concrete5,0.2
Confluence,0.1
Cookies,0.1
Coppermine,0.2
CruxCMS,0.1
CruxPA,0.1
CushyCMS,0.2
D-Link-Network-Camera,0.1
DMXReady,0.1
DT-Centrepiece,0.1
DUclassified,0.1
DUforum,0.1
DUgallery,0.1
Dell-Printer,0.1
DiBos,0.2
DotCMS,0.2
DotNetNuke,0.3
Drupal,0.2
DublinCore,0.1
EMO-Realty-Manager,0.1
EarlyImpact-ProductCart,0.2
EazyCMS,0.1
Echo,0.2
Empire-CMS,0.1
Evo-Cam,0.1
ExpressionEngine,0.2
F3Site,0.1
FestOS,0.1
File-Upload-Manager,0.1
Flax-Article-Manager,0.1
FluentNET,0.1
FluxBB,0.3
Footer-Hash,0.2
Forest-Blog,0.1
FormMail,0.2
FrogCMS,0.3
GoAhead-Webs,0.2
Google-API,0.1
Google-Analytics,0.2
Google-Hack-Honeypot,0.1
GuppY,0.1
HP-LaserJet-Printer,0.1
HTML5,0.2
HTTPServer,0.2
Header-Hash,0.1
IIS-SiteNotFound,0.2
IIS-UnderConstruction,0.2
IMGallery,0.1
IPCop-Firewall,0.1
IQeye-Netcam,0.1
ISPConfig,0.2
Index-Of,0.2
Intellinet-IP-Camera,0.1
Interspire-Shopping-Cart,0.1
InvisionPowerBoard,0.2
JAMM-CMS,0.1
JGS-Portal,0.1
JQuery,0.2
Jamroom,0.1
Jboss,0.1
Joomla,0.4
Kloxo Single Server,0.1
Liferay,0.1
Lightbox,0.2
Lime-Survey,0.1
Linksys-NAS,0.1
Linksys-Network-Camera,0.1
Linksys-USB-HDD,0.1
Linksys-Wireless-G-Camera,0.1
LocazoList-Classifieds,0.1
Loggix,0.1
Lucky-Tech-iGuard,0.1
MD5,0.2
MailSiteExpress,0.2
Mailman,0.1
Mailto,0.2
Mambo,0.2
MediaWiki,0.1
MetaGenerator,0.2
MetaPoweredBy,0.2
Microsoft-Sharepoint,0.1
MicrosoftODBCError,0.1
MikroTik,0.2
Minify,0.1
MnoGoSearch,0.2
Mobotix-Network-Camera,0.1
ModxCMS,0.2
Moodle,0.2
MovableType,0.2
My-PHP-Indexer,0.1
My-WebCamXP-Server,0.1
MyioSoft-Ajax-Portal,0.1
MysqlSyntaxError,0.1
NetBotz-Network-Monitoring-Device,0.1
Netious-CMS,0.1
Netsnap-Web-Camera,0.1
NovellGroupwise,0.2
Nukedit,0.1
ORCA-Platform,0.1
ORITE-301-Camera,0.1
OSCommerce,0.3
Oce,0.2
OkiPBX,0.2
Open-Blog,0.1
Open-Freeway,0.1
Open-Source-Ticket-Request-System,0.1
OpenCms,0.1
OpenGraphProtocol,0.1
OpenID,0.1
OpenSearch,0.1
PG-Roomate-Finder-Solution,0.1
PHP-Fusion,0.1
PHP-Layers,0.1
PHP-Link-Directory,0.1
PHP-Shell,0.1
PHPCake,0.2
PHPDirector,0.1
PHPEasyData,0.1
PHPError,0.2
PHPFM,0.1
PHPNuke,0.2
PHPraid,0.1
PageUp-People,0.1
Panasonic-Network-Camera,0.1
Parked-Domain,0.1
PasswordField,0.1
PhilBoard,0.1
Piwik,0.1
Pixel-Ads-Script,0.1
Pixie,0.1
Plesk,0.2
Pligg-CMS,0.1
Plone,0.2
PortalApp,0.1
PoweredBy,0.2
Pressflow,0.1
Prototype,0.2
QNAP-NAS,0.1
Quantcast,0.1
RSSFeed,0.1
RedirectLocation,0.2
RoundCube,0.2
RunCMS,0.1
SHOUTcast-Administrator,0.1
SMF,0.2
Saurus-CMS,0.1
Scriptaculous,0.2
SearchFitShoppingCart,0.2
SiemensSpeedStreamRouter,0.2
SilverStripe,0.2
SimpNews,0.1
Site-Sift,0.1
SkaLinks,0.1
SmodCMS,0.1
Snap-Appliance-Server,0.1
SnomPhone,0.2
Softbiz-Freelancers-Script,0.1
Softbiz-Online-Auctions-Script,0.1
Softbiz-Online-Classifieds,0.1
Sony-Network-Camera,0.1
Sony-Video-Network-Station,0.1
SquirrelMail,0.2
Star-Network,0.1
StarDot-NetCam,0.1
Stardot-Express,0.1
Subdreamer-CMS,0.1
Subrion-CMS,0.1
SyndeoCMS,0.1
TWiki,0.1
Tag-Hash,0.2
TaskFreak,0.1
Team-Board,0.1
Textpattern,0.1
The-PHP-Real-Estate-Script,0.1
Title,0.2
TomatoCMS,0.1
Tomcat,0.2
Toshiba-Network-Camera,0.1
ToshibaPrinter,0.2
Trac,0.1
Turbo-Seek,0.1
TypePad,0.2
TypoLight,0.2
Umbraco,0.1
UncommonHeaders,0.2
VBulletin,0.2
VP-ASP,0.2
VSNSLemon,0.2
Veo-Observer,0.1
VideoShareEnterprise,0.1
Virtualmin,0.1
VisionGS-Webcam,0.1
Vulnerable-To-XSS,0.1
WWWBoard,0.1
Web-Calendar-System,0.1
Web-Data-Administrator,0.1
WebDVR,0.1
WebEye-Network-Camera,0.1
WebGuard,0.2
WebPress,0.1
WhiteBoard,0.1
Winamp-Web-Interface,0.1
Windows-Internet-Printing,0.1
WindowsSBS,0.2
WoW-Raid-Manager,0.1
WordPress,0.2
WordPressSpamFree,0.2
WordpressSuperCache,0.3
X-ASPNetVersion,0.2
X-Powered-By,0.2
X7-Chat,0.1
XHP-CMS,0.1
Xerox-Printers,0.1
XtraBusinessHosting,0.2
Zen-Cart,0.1
Zeus-Cart,0.1
Zikula,0.1
Zoph,0.1
Zyxel-Vantage-Service-Gateway,0.1
anyInventory,0.1
boastMachine,0.1
coWiki,0.1
cpCommerce,0.1
eLitius,0.1
eSyndiCat,0.1
envezion~media,0.1
ezBOO-WebStats,0.1
i-Catcher-Console,0.1
iDVR,0.1
iRealty,0.1
iScripts-CyberMatch,0.1
iScripts-EasySnaps,0.1
iScripts-MultiCart,0.1
iScripts-ReserveLogic,0.1
iScripts-SocialWare,0.1
ispCP-Omega,0.2
jobberBase,0.1
mojoPortal,0.1
phPhotoAlbum,0.1
php-ping,0.1
phpBB,0.2
phpFreeChat,0.1
phpMyAdmin,0.1
phpPgAdmin,0.1
phpSysInfo,0.1
phpinfo,0.1
sabros.us,0.1
samPHPweb,0.1
syntaxCMS,0.1
uPortal,0.1
xGB,0.1

WhatWeb'ten Wordpress sürümü gizlemek için ise temanızın "function.php" adlı dosyası içine aşağıdaki satırını yapıştırarak kaldıralım .

remove_action('wp_head', 'wp_generator');

Wordpress'ten sürüm bilgilerini kaldırdığımıza göre "WhatWeb" ile tekrar test edelim.

$ ./whatweb linux.piesso.com
http://linux.piesso.com [200] probably WordPress, HTTPServer[LWS], UncommonHeaders[x-pingback], JQuery[1.4.2], Title[| Linux ve Özgürlük], RSSFeed[http://linux.piesso.com/wp-content/themes/openark-blog/style.css], Tag-Hash[1875deb75c633e2ea1bbe2e6b8c856e3], MD5[29c17973306dcde19d75e8c9b3f72861], Header-Hash[a82619f7784e56b660f31017e1d0174f], Footer-Hash[b7509d9fc94073b62bfe3d809e9ad5a9]

Görüldüğü gibi artık Wordpress sürüm bilgisi vermiyor.

Uptime süresini öğrenme ve engelleme

Eğer engellemediyseniz uzaktaki kişiler sunucunuzun uptime süresini öğrenebilirler.Uptime sürenizi öğrenmek isteyen kişi ,sisteme herhangi bir TCP paketi yollayarak sizin sisteminizden cevap bekler.Sistemimizde "timestamps" engellenmemişse bizim cevap göndereceğimiz TCP paketlerinin başlıklarında "timestamps"ler ( zaman imzamız ) bulunmakta.Buradaki "timestamps"leri okuyarak   sistemimizin uptime süresini öğrenebilirler.

Uptime süresini öğrenmek için bir çok uygulama mevcut : nmap,hping  gibi.Hping ile hedef sistem üzerinde  istediğimiz porta istediğimiz paketi gönderebildiğimiz için onu kullanarak test yapacağım.Bilgisayarınızda "hping" yazılımı yüklü değilse ,ilk olarak kuralım.

# emerge -av hping ( Gentoo )
# apt-get install hping3 (Ubuntu )

Centos'a yüklemek için "EPEL" deposunu eklemiş olmanız lazım.Eğer bu depoyu eklemediysen buradan yardım alabilirsiniz.

# yum install hping3

Hping yazılımını yükledikten sonra herhangi bir sunucunun uptime süresini öğrenmek bize cevap verecek herhangi bir TCP portuna bir istek gönderip,cevap alalım.Şimdi herhangi bir sunucunun uptime süresini öğrenelim:

# hping --tcp-timestamp www.examples.com -p 80 -c 2 -S
HPING www.examples.com (eth0 00.00.00.00): S set, 40 headers + 0 data bytes
len=56 ip=00.00.00.00 ttl=55 DF id=0 sport=80 flags=SA seq=0 win=5792 rtt=20.0 ms
 TCP timestamp: tcpts=966942747

len=56 ip=00.00.00.00 ttl=55 DF id=0 sport=80 flags=SA seq=1 win=5792 rtt=19.8 ms
 TCP timestamp: tcpts=966942997
 HZ seems hz=100
 System uptime seems: 111 days, 21 hours, 57 minutes, 9 seconds

--- www.examples.com hping statistic ---
2 packets tramitted, 2 packets received, 0% packet loss
round-trip min/avg/max = 19.8/19.9/20.0 ms

Yukardaki örnekte de görüldüğü gibi "www.examples.com" sunucusunun 111 gündür vs vs detaylı uptime süresini öğrenebiliyoruz.Uzaktaki sistemin "uptime" süresini öğrenmeye değindik,şimdi  "kendi sunucumuzun uptime süresini vermesini istemiyorsak ne yapmalıyız?" ona biraz değinelim.

Eğer sunucumuzun "timestamps" gönderip göndermediğini bilmiyorsak ona bakalım:

# /sbin/sysctl -a |grep tcp_timestamps 
net.ipv4.tcp_timestamps = 1

Yukardaki komutun çıktısına "net.ipv4.tcp_timestamps = 1" değeri alıyorsanız , uptime süre bilginiz öğrenebilinir demektir.Bu bilgiyi dışarıya vermemek için "1" değerini "0" yapalım.

I .Yöntem :

#  echo 0 > /proc/sys/net/ipv4/tcp_timestamps

II.Yöntem :

Bu yöntemde ise "sysctl.conf" dosyasına "net.ipv4.tcp_timestamps = 0" satırını ekleyelerek yapabiliriz.

# vi /etc/sysctl.conf

Aşağıdaki satırı ekleyin:

net.ipv4.tcp_timestamps = 0

Satırı ekledikten sonra dosyayı kaydedip,kapatın.Ayarların aktif olabilmesi için bilgisayarı yeniden başlatın ya da aşağıdaki komutu verin .

# sysctl -p

Yeni ayarlarımız aktif olduktan sonra uptime bilgimizin gönderilip,gönderilmediğini test edelim.

# hping --tcp-timestamp www.examples.com -p 80 -c 2 -S
HPING www.examples.com (eth0 00.00.00.00): S set, 40 headers + 0 data bytes
len=44 ip=00.00.00.00 ttl=64 DF id=0 sport=80 flags=SA seq=0 win=32792 rtt=0.1 ms
 TCP timestamp: tcpts=0

len=44 ip=00.00.00.00 ttl=64 DF id=0 sport=80 flags=SA seq=1 win=32792 rtt=0.1 ms
 TCP timestamp: tcpts=0
--- www.examples.com hping statistic ---
2 packets tramitted, 2 packets received, 0% packet loss
round-trip min/avg/max = 0.1/0.1/0.1 ms

Artık sunucumuz dışarıya uptime bilgisi vermiyor.Birde şuna değinmek istiyorum.Eğer "icmp" isteklerini engellememişseniz bu yolla da "timestamps" bilginiz öğrenilebilinir."icmp" ile dışarıya "timestamps" göndermek istemiyorsanız özetle iptables ile bunu engelleyebilirsiniz.Örnek olarak :

   ipchains -A input -p icmp --icmp-type timestamp-request -j DROP
   ipchains -A output -p icmp --icmp-type timestamp-reply -j DROP