Aranızda hiç komut satırından mesaj gondermek isteyen oldu mu acaba ? Herhalde biz sistem yöneticilerinin alternatifler isteme konularında istekleri hiç bitmiyor . Bu yuzden durmadan bizler için yeni alternatifler üretilmekte.Bu alternatiflerden birisi de Blat .
Blat ın yaptığı iş komut satırından sizin başka bir yere atmak istediginiz mesajları onun vasıtasıyla atabilmenizi sağlamak . Blat ucretsiz bir programdır ve http://www.blat.net adresinden indirilebilir..Bu bağlantıdan zipli olan full versiyonunu indirin,indirdikten sonra da zipli dosyayı acarak /full klasorunu bulun ve bu klasorun icindeki üç sıkıştırılmıs dosyayı (blat.dll , blat.exe , ve blat.lib ) system32 klasorunuzun altına atın.Bu basit işlemlerden sonra artık blatı kullanmaya hazırsınız.
Blat aslında son derece çeşitli secenekleri olan , esnek bir yapıya sahip ve son derece de eksiksiz bir SMTP istemcisidir. En basitinden bizim işimize yarayabilecek şekilde bir ornek vermek istiyorum . Mesela kendi mailimizden başka birine blat vasıtasıyla mail atmak istiyoruz. Bunun icin benim anlatımı kolay olsun diye asagıda alt alta yazacagim anahtar ve parametreleri sizin tek bir sıra halinde yazarak gerçekleştirmeniz uygun olacaktır.
blat - -body "Mesajin Govdesi"
-server mail.bilgi.cc
-to xxxxx@hotmail.com -f xxxxx@bilgi.cc -subject
"Hamit Demir?e selamlar" -u ?sunaymusaoglu?
-pw ?sifrem?
Peki bu komuttaki anahtar ve parametreler ne anlama geliyor.Ilk satırda mesela mesaj govdesi yazmisiz ve bir e-posta mesajinda Mesaj govdesi olmalıdır.Blat bize bu konuda söyle bir esneklik tanımakta : Blat bahsettigimiz bu mesaj govdesini olusturacak metini komut içine veya ayrı bir dosyaya koymamıza izin veriyor.Bu konuya açıklık getirmek gerekirse mesajı komut icine koymak demek aynı yukarda gorundugu gibi ?Mesajın Govdesi? yazdıgı kısımdan bahsediyorum .Ayrı bir dosyaya koymaktan kastettigim ise su : bir txt dosyasi yaratıyoruz ve istedigimiz mesaj govdesini bunun icine yazıyoruz ve guya ismini mesaj.txt diye kayıt ediyoruz daha sonra ilk satırda olandan farklı olarak ? blat mesaj.txt şeklinde diye başlayacaktır .Belirttigimiz gibi ikisinden birini secebiliriz.Secim sizin.Yalnız akılda kucuk bir suphe kalmaması adına sunu belirtmek istiyorum : Blat ın ilk gordugu argumanın ya bir dosya ismi (ki burda kastetigimiz bir mesaj govdesi) ya da iki tarafında bosluk olan tire işareti ve bir ?body paremetresi olduguna dikkat edin.
İkinci satırda ise her mesajın bir sunucuya gonderilmesi gerektigi icin ??server? paremetresiyle girerek mailimizi gonderecegimiz serverızın adını giriyoruz .Ucuncu satırda ise klasik olan mail ortamlarındaki gibi alıcının adresı,gonderenin adresi ve bir konu başlıgı icerir.Bunları da yukardan takip edebilir ve bu işlemlerin de ?-to? ,?-f? , ve ?-subject? paremetreleriyle yapıldıgını gorebılırız.
Okumaya devam edelim karsımıza ?-u ? paremetresi ve ?-pw? paremetresi cıkyor.Burda ?-u? ile bahsedilen username dir.Yani kullanıcı ismimiz, ?-pw? ise password yani sifremiz.Bu kısımlara kadar detaylı bilgi vermeye çalıştım cunku bundan sonra anlatacagım seyler bu temelin uzerine kurulacaktır.
Username ve password kısımları bizim icn neden gerekli.Bunun nedenine gelince gunumuzdeki cogu smtp sunucusu mesajı kimin adına gonderecegi konusunda secici davranıyor.Bu durumda mesajı ya yerel bir subnetten gondermeliyiz ya da kimligimizi tanıtacak bir yol bulmalıyız. Ornek vermek gerekirse : eger kullandigimiz smtp sunucusu bir Microsoft Exchange Server 2003 sistme ise postamızın kabul edilip gonderilmesi icin ya yetki almalıyız ya da gonderecegimiz posta o sunucudaki bir adrese gonderiliyor olmalıdır.Yalnız bu konuda ince bir detay vemek zorundayım.Eger blat ile mail gonderirken 550 hata mesajini alırsanız eger bu buyuk ıhtımal guvenlikle ılgılı bir problemdir. Microsoft Exchange Server 2003 te ?-u? ve ?-p? paremetlereleriyle kullanıcı adı ve sifremizi doğru duzgun girsek bile karsımıza tekrar bir guvenlik problemi cıkacaktır ve 550 hatasını alacagızdır.Bunun sebebi Blast ın Microsoft un bir eklentisi olan AUTH NTLM logon yontemini desteklememesidir.Bu yuzden blat ı yetki isteyen bir microsoft smtp sunucusuna mesaj gondermek icin kullanmayı dusunuyorsanız eger Basic Authentation secenegini acmalısınız.Tabi bu guvenlık icin hos bir durum degildir.Bu asamaya bu kadar seyi nie anlattın peki bu hiçbir isimize yaramadı ozaman diyebilirsiniz ama birazdan anlatacaklarimla bu temelleri vermeyle mumkun oluyor.
Daha once de belirttigim gibi blat ın asıl uygulama alanı yerel posta hesaplarıdır . Bu konuyu daha iyi anlatabilmek adına örnek bir seneryadan yola cıkmak istiorum :
Sirketimizde mesela security gunlugune yazılan belii bir olay(event) için bana mail atılsın istiyorum.Ornegin Event Id si 644 olan ve kullanıcıların hesabının kilitlendigini belirten olaylar bana gunluk mail olarak gelsin istiyorum.Simdi asıl blat in kullanım alanı olan bu seneryoyu gercekleştirecegiz.
Belirtmek isterim ki bu kullanımı event id si ne olursa olsun aynı sekilde kullanabiliriz. Simdi gecelim bu olayın nasıl gerceklestirilecegine.
Bunun icin bize blat ın dısında ayrıca Windows 2000 resource kit in içinde bulunan dumple.exe (Dump event log) programı gerekmektedir.
Bunu http://www.microsoft.com/windows2000/techinfo/reskit/tools/existing/dumpel-o.asp adresinden indirebilirsiniz .
Bu programlardan Dumpel.exe programı, basitçe Event Viewer'daki kayıtların bir text dosyaya alınmasını sağlar. Programı bir çok parametre ile kullanılabilir ve bu parametreler yardımıyla olay günlüğündeki sadece belli olayları text dosyaya alabilirsiniz. Komutun temel kullanım parametreleri şöyledir.
dumpel -f file [-s server] [-l log [-m source]] [-e n1 n2 n3...] [-r] [-t] [-d x]
Eğer Event Viewer'daki kayıtlar içinde sadece sizin belirlediğiniz Event ID'ye sahip olanlarını bir text dosyaya almak istiyorsanız bu durumda dumpel.exe'yi aşağıdaki parametreler ile birlikte kullanmalısınız. Ben aşağıdaki örnekte Event ID'si 644 olan ve kaynağı da Security olan olayların C'nin altında oluşturulacak event644.txt dosyasına alınmasını istediğimden komutu şu şekilde yazıyorum.
dumpel -f c:event644.txt -l security -m security -e 644
Bu programın parametreleri hakkında daha geniş bilgiyi programın kurduğu klasördeki dumpel_d.html dosyasında bulabilirsiniz.
Blat ise bizim belirlediğimiz bir dosyayı yine bizim belirleyeceğimiz bir mail adresine yollama işini yapan ve komut satırından çalıştırılan bir program. Bu program da dışarıdan bir çok parametre kabul ediyor ve gerçekten oldukça kullanışlı bir program. Ben örneğimizde dumpel.exe tarafından oluşturulan ve C'nin altındaki event644.txt dosyasının xxxxxx@bilxxxxxx@bilci.cc/a> adresine yollanmasını istiyorum. Bunun için önce Blat tarafından kullanılacak SMTP server'ı ve mail hesabını blat'a bildirmemiz lazım. Bu işlemi gerçekleştirmek için aşağıdaki komutu giriyoruz;
blat -install mail.bilgi.cc ccccc@bilgi.cc
Buradaki "mail.sistemdoktoru.com" blat'ın kullanacağı SMTP server'ın adresini, sunaymusaoglu@sistemdoktoru.com'da kullanacağı mail hesabını belirtiyor. Bu ayarları yaptıktan sonra sıra blat'a bizim belirlediğimiz dosyayı mail atacak şekilde parametre girmeye geldi. Çalıştıracağımız komut şu şeklide olacaktır.
blat c:event.txt -subject "Günlük Event Viewer Mesajı" ?to administrator@bilgadministrator@bilg/a>administrator@bilg/a>>/>administrator@bilgi.cc/a>>/>>/>>/>
Blat'ın kullanımı hakkında detaylı bilgiyi programla birlikte gelen readme.txt dosyasında bulabilirsiniz.
Yukarıda yaptığımız işlemlerin belirli zaman aralıklarında otomatik olarak gerçekleştirilmesini istiyorsak yukarıda kullandığımız komutları birer bat dosyası yapıp Zamanlanmış Görev olarak bu komut dosyalarının çalıştırılmasını sağlamak. Bundan böyle olay günlüğüne yazılan ve Event ID'si sizin tarafınızdan belirlemiş olan olaylar yine sizin belirleyeceğiniz zaman aralıklarında size mail ile bildirilecektir.
Bir dahaki makalede gorusmek uzere ..