Bu makalemizde aslında bir çoklarımız için gerekli olabilecek, istenilebilecek bir ürünün incelemesini yapacağız. Bu ürün şirket içerisindeki ekip arkadaşlarımızın online mesajlaşmasını sağlıyacak olan Openfire isimli bir mesajlaşma sunucusudur. Bizler bu makalemiz ile birlikte bu ürünün kurulumu, veritabanın MSSQL de tutulması ve yapılan mesajlaşma kayıtlarının loglanması işlemlerini ele alacağız. Kısaca Openfire isimli ürünümüzden de bahsedecek olur isek özetle şirket içi mesajlaşmada kullanılabilecek işlevsel ve kaliteli bir mesajlaşma sunucusudur diyebiliriz. Java ile yazılmış bu ürün bir çok Plugin’i ile birlikte sadece mesajlaşma dışında da becerilere sahip bir üründür. Fakat biz bu makalemizde şuan sadece mesajlaşma fonksiyonu üzerinde duracağız.
İsterseniz yavaş yavaş kurulum aşamasına geçelim.
Baştada belirttiğimiz gibi ürünümüz Java ile yazılmış bir ürün olması sebebiyle çalışacağı platform üzerinde Java yüklenilmiş olmasını şart koşmaktadır. Bununla birlikte dataları harici bir veritabanında tutmak istiyorsanız ki bizler makalemizde bunu yapacağız bir veritabanı sunucusuna ihtiyacınız vardır. Bizler makalemizde gayet başarılı bir veritabanı sunucusu olan Microsfot ürün ailesinden MSSQL i kullanacağız. sizler eğer yapınızda farklı bir veritabanı sunucusu çalıştırıyor iseniz bunu kullanabilirsiniz. Ürünün Mysql ve Oracle veritabanları içinde desteği mevcut. Kendisinin gömülü bir veritabanıda mevcut fakat pek tabiki büyük yapılar veya mesaj loglamak için son derece yetersiz. O yüzden bu işlemler için en sağlıklı işlem olan veritabanını farklı bir DB tutmayı tercih ediyoruz.
Java ile ilgili temel gereksinimi karşılıyor isek ürünü download ederek kuruluma başlıyabiliriz.
Ben ürünün 3.7.0 sürümünü kullanacağım, bu sürüm henüz beta aşamasında fakat betası sorunlu bir ürün değil. 3.6.4 sürümünün bugları giderilmiş bir sürümü olduğu için bu betayı tercih ettim. Bu yinede bir tercih meselesi olup dileyenler 3.6.4 sürümünü de aynı şekilde kurup kullanabilirler.
Openfire 3.7.0 sürümünü link e tıklayarak indirebilirsiniz.
Eğer ürünü indirdi iseniz şimdi kurulum adımlarına geçebiliriz. Önceki Exchange makalemde olduğu gibi bu makalemde de tüm işlemleri adım adım anlatıp, ürünü ilk kez tanıyanların bile kolayca kurabileceği bir şekilde anlatacağım, bu tarz makalelerde anlatımları bu şekilde yapmaya özen göstereceğim. Bu arada resimlerin büyük halleri görmek için üzerine tıklayınız lütfen.
1. Adım) İndirdiğimiz dosyayı açalım. Dil seçeneği olarak ben İngilizce’yi seçiyorum, ürünün Türkçe dil desteği ise yok.
2. Adım) Next ile devam ediyoruz.
3. Adım) Lisans sözleşmesini kabul ederek kurulum işlemlerine devam ediyoruz.
4. Adım) Kurulum yapılacağı dizin. İster iseniz bu dizini değiştirebilirsiniz. Ben Defalut şekilde bırakıyor ve devam ediyorum.
5. Adım) Diğer pencereleri Next, Next diyerek geçip kurulumu sonlandırıyorum. Görüdüğünüz gibi gayet basit bir kurulumu var ürünün, normal bir program kuruyormuşcasına kurduk ürünü, şimdi ise iş asıl yapılması gereklere geldi. Bir çok kişi zaten ürünün kurulumuyla ilgili değil; konfigürasyonu ile ilgili sıkıntı yaşamaktadır. Bir çok kişi ürünün ya harici veritabanı bağlantısı ayarlarında yada Active Directory ile entegresinde sıkıntı yaşıyor. Bizlerde bu makalede zaten bu ayarların nasıl sorunsuzca yapılacağından bahsediyor olacağız. Şimdi bu bahsettiğimiz ayarların yapılabilemesi için Run Openfire kutucuğunu işaretleyip, Finish’e tıklayarak ürün kurulumunu başarılı bir şekilde sonlandıralım.
6. Adım) Launch Admin diyoruz ve ürünü konfigüre etmeye başlıyoruz. Launch Admin dediğimizde ayarları yapabilmemiz için var sayılan tarayıcımız açılacak. Ayarlarımızı web browserımız üzerinden yapacağız.
7. Adım) Yönetim paneli dilini seçiyoruz. İngilizce’yi seçiyorum ben.
8. Adım) Evet artık ayarları yapılandırmaya geçmiş bulunmaktayız. Server Settings kısmından Openfire sunucu ayarlarını yapılandıracağız. Burada sunucu ismi olarak Openfire’ın kurulu olduğu sunucunun FQDN adını giriyoruz. Portları ise eğer bir başka uygulama tafaından kullanmıyor ise varsayılanda bırakabilir veya daha farklı portlar belirtebilirsiniz. Ben varsayılan portları bu şekilde bırakıyorum. Fakat yinede tavsiyem 9090 portunu değiştirmeniz olacaktır zira 9090 portu size çalışması için port değişikliği olanağı vermeyen bir başka uygulama tarafından kulanılabilir. Çünkü 9090 portu bazı uygulamar tarafından da sıkça kullanılmakta.
9. Adım) Bu adım önemli. Bu adımda Openfire mesajlaşma sunucusunun veritabanın harici bir veritabanı sunucusundamı yoksa kendisiyle birlikte gelen veritabanındamı tutacağız bunu seçmemiz gerekiyor. Ürünün kendi veirtabanı hem performans açısından tatmin ediciği değil hemde bizim yapmak istediğimiz işlemler için yertsiz. O yüzden Standart Database Connection’ı seçiyor ve Continue diyerek devam ediyoruz.
10. Adım) Bu adımda Openfire için kullanmayı planladığımız veritabanı türünü seçeceğiz. Makalemizin konularından biriside zaten buydu. Baştada belirttiğimiz gibi bizler ürün için Microsoft firmasının veritabanı yazılımı olan MSSQL i kullacağız, ben yapımdaki diğer ürünler içinde bu veritabanını kullanmaktayım. Dolaysıyla ek veya farklı bir veritabanı uygulamasına ihtiyacım yok. İsterseniz şimdi veritabanı bilgilerini nasıl girmemiz gerektiğine bir göz atalım.
Tabiki veritabanı bilgilerini girmeden önce SQL sunucumuzda openfire isimli bir veritabanı yaratıyoruz. Ben bu veritabanını MSSQL üzerinde sa kullanıcı hesabı ile oluşturdum, fakat sizlere güvenlik sebebiyle bunun yerine openfire isimli bir kullanıcı açamızı ve kurulumuda bu hesap üzerinden gerçekleştirmenizi öneririm.
Eğerki veritabanına openfire isimini verdi iseniz Database URL ye jdbc:jtds:sqlserver://localhost/openfire;appName=jive
kopyala-yapıştır diyerek bunu giriniz. Veritabanı adınız farklı bir şey ise openfire yazan yeri uygun olan ad ile değiştiriniz. URL kodu tam bu şekilde olacak eğerki yanlış girer iseniz resimde görüldüğü gibi bilgilerin yanlış olduğuna dair bir uyarı alırsınız.
Username ve Password ise açtığımız veritabanında yetkili olan kullanıcı hesabı olacaktır. Baştada belirttiğim gibi ben veritabanını sa kullanıcı hesabıyla oluşturduğum için sa kullanıcı bilgilerini giriyorum. Continue diyerek devam ediyorum.
11. Adım) Önemli olan bir diğer adımda kullanıcı hesaplarının nasıl oluşturulacağı ile ilgili olan adımdır. Ben organizasyonumda Active Directory domain yapısına sahip olduğum için kullanıcı hesaplarımıda Active Directory veritabanından çekerek kullanacağım. Zira kullanıcılarım için tutup tek tek Openfire üzerinde hesap tanımlamak zor ve zahmetli bir iş. Bu aynı zamanda kullanıcılarımında işini kolaylaştıran bir işlem zira kullanıcılarım için ayrıyetten bir hesap bilgisi ve ek bir şifre vermiyeceğim. Domainde oturum açmak için kullandıkları hesap bilgileri ile Openfire mesajlaşma sunucusunuda rahatlıkla kullanabilecekler.
Bu sebepten dolayı ben Profile Settings kısmından Directory Server seçeneğini seçiyor ve Continue diyerek bir sonraki adıma geçiyorum.
12. Adım) Bu adımda Active Directory veritabanına erişmek için gerekli doğrulama bilgilerini girmemiz gerekiyor. Genelde Openfire kullanmak isteyenlerin takıldıkları bir başka bölümde bu bölümdür. Bu bölüm kullanıcılarımızın Active Directory veritabanında çekilerek oluşturulması için gerekli ayarları yaptığımız bölümdür.
Şimdi isterseniz bu doğrulama ayarları için değerleri nasıl girdiğimize bakalım.
Ben LDAP server olarak Microsoft Active Directory servisini kullandığım için Server Type tan Active Direcorty’i seçiyorum. Host adım huseyinsevin.com sizler pek tabiki kendi domainize uygun olarak buraları değiştireceksiniz. Port varsayılan değerde kalıyor. Base DN ise şu şekilde olacak dc=huseyinsevin,dc=com
. Kimlik doğrulama için bir Active Directory kullanıcı hesabı tanımlamamız gerekiyor. Ben Administrator hesabını kullandım bu iş için ister iseniz Active Directoryde varolan ve kullanıcı adı ve şifresini bildiğiniz bir başka kullanıcı hesabınıda kullabilirsiniz bu işlem için. Gerekli doğrulama bilgilerini girdikten sonra Test Setting diyerek girdiğim verilerin doğruluğunu test ediyorum. Bir sorunla karşılaşmadı isek Save&Continue diyerek devam ediyoruz.
User Mapping ve Group Mapping ayarlarını kurulumda ben Save&Continue diyerek geçiyorum. Sizde bu adımları bu şekilde geçebilirisiniz. Daha sonrasında ihtiyaç duymanız halinde bu ayarları Openfire yönetim panelinden tekrardan düzenliyebilirsiniz. Bu kısımdaki ayarlar eğer belli kullanıcı gruplarını sadece belli kullanıcı grubundaki kişiler ile mesaşlaşması gibi bir ayara ihtiyaç duyuyor iseniz gerekli olacaktır. Örneğin sadce Muhasebe departmanıdaki kişilerin sadece bu departmandaki kişilerle yazışabilmesi gibi.
13. Adım) Bu ayarlar kısmındaki son adımımızdır. Burada Openfire mesajlaşma sunucumuz için bir yönetici hesabı belirteceğiz. Bunun için Add Administrator kutucuğuna Active Directory üzerinde varolan bir kullanıcı hesap adını yazıyorum. ve Add e tıklayarak kullanıcıyı ekliyorum. Ben Administrator hesabını ekledim. Sizde Openfire yönetimi için kullanmak istediğiniz herhangi bir hesabı ekliyebilirsiniz.
Kullanıcı hesabını ekledikten sonra sorunsuzca çalıştığından emin olamak için hesabın kullanılabilirliğini test edelim.
14. Adım) Kurulumu ve Konfigürasyonu başarılı bir şekilde tamaladık. Şimdi diğer ayarların yapılandırılması için Login to admin console tıklayarak yönetim panelini açalım.
15. Adım) Yönetici hesap bilgilerini girerek yönetim konsoluna erişelim.
16. Adım) Burada yapacağımız temel ayar makalemizin ana konularından sonuncusu olan loglama ile ilgili olan ayardır. Yazışmaların loglana bilmesi için bizler Openfire’ın Monitoring Service isimli eklentisinden yaralanacağız. Yapmamız gereken işlem aslında son derece basit. Bu eklentiyi kurmak ve bir kaç küçük ayar yapmak. Öncelikle eklentiyi kuralım. Bu işlem için Plugins tabından Available Plugins sekmesine geçiyoruz. Burada Openfire tarafından yayınlanmış Openfire mesajlaşma sunucunuz için kullanabileceğiniz bir çok faydalı eklenti bulunmaktadır. Fakat makale konumuz gereği biz şuan sadece loglama işlemlerimizin yapılabilmesi için Monitoring Service isimli eklentiyi inceliyeceğiz.
İlgili eklentiye geliyorum ve eklentiyi kurmak için + işaretine tıklıyorum. 1.5 mblık bir jar dosyasını inidirp kendisi otomatik olak kuracak.
Eklentimiz başarılı bir şekilde kuruldu ise Server başlığı altında Archiving diye bir link eklenmiş olduğunu göreceğiz. Burası tutulan logları takip edebileceğimiz kısımdır. İsterseniz şimdi bu kısma geçelim çünkü burada yapmamız gereken küçük bir ayar mevcut.
Server – Archiving – Archiving Settings kısmından loglama ile ilgili bir kaç ayar yapacağız. Archive one-to-one chat ve Archive Group chat checkbox larını işaretliyoruz. Eğerki bir chat odasının konuşmalarını kayıt altına almak istemiyor isek bunu Only archive conversations of the following room names (separated by comma) kısmına bu odaları yazabiliriz. Birden fazla yazışma odası için bu işlemi yapmak istiyor isek aralarına virgül koyarak birden fazla oda ekliyebiliriz. Update Settings diyere ayarlarımızı güncelliyelim.
Şimdi isterseniz yazışmalarımızın loglanıp, loglanmadığını kontrol edelim. Client tarafındaki yazılımımz olan Spark’ı açalım ve sohbet oturumumuzu başlatalım. Bu arada Openfire’ın client tarafındaki ürünüde Spark’tır. Ben size Spark’ın 2.6.0 RC1 sürümünü öneririm. Ürünü bu link ten indirebilirsiniz.
Sparkta oturum açabilmek için kullanıcı adı ve şifremi yazıyorum. Sunucu kısmına ise domain adını yazıyorum.
Deneme maksatlı bir örnek mesajlaşma yapıyorum….
Şimdi dilerseniz sunucu tarafında bu yazışmanın nasıl loglandığına bir göz atalım. Server – Archiving – Search Archive diyelim. Logları yani dahada doğrusu mesajlaşma arşivlerini buradan erişebilirsiniz. Gayet gelişmiş bir arşivleme ve arşivler içerisinde arama yapma seçeneği mevcuttur. Ayrıca yazışmaları PDF çıktı olarak verebilmeside ayrı bir güzellik. Şimdi Administrator ve Tigin adlı kullanıcılar arasında geçen konuşma kayıtlarına bir göz atalım.
Evet görüldüğü üzere ürünümüzü başarılı bir şekilde kurduk ve konfigüre ettik. Sistemimiz sağlıklı bir şekilde çalışmakta ve yazışmalar kayıt altına alınmakta. Elbetteki bu yazışmaların kyıt altına alınması güvenlik sebebiyle yapılmakta ve bu yazışmaların kyıt altına alınması kullanıcılarında heline. Zira ileride birisine mesajlaşma sistemi üzerinden bir görevi yerine getirmesini belirttiğinizde bu kişi bu işi inkar eder ise bunu yazışma kayıtlarından kolayca tespit edebilirsiniz.
Bu makalemde sizlere Openfire mesajlaşma sunucusunun bir organizasyon içerisinde nasıl kullanıma hazır hale getirilebileceğinden bahsettik, dilerim işinize yarayan faydalı bir döküman olmuştur.
Saygılarımla.
Hüseyin Sevin.