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ğlayacak 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şta da 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 Microsoft ü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 tabi ki 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şlayabiliriz.
Ürünün yeni yayınlanmış ve uzun bir geliştirme sürecinden geçmiş olan en son sürümünü ele alıyor olacağız.
Openfire 3.7.0 sürümünü http://www.igniterealtime.org/downloads/download-landing.jsp?file=openfire/openfire_3_7_0.exe bu linke tıklayarak indirebilirsiniz.
Eğer ürünü indirdi iseniz şimdi kurulum adımlarına geçebiliriz. Önceki diğer makalelerimde 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.
İndirdiğimiz dosyayı açalım. Dil seçeneği olarak ben İngilizceyi seçiyorum, ürünün Türkçe dil desteği ise yok.
Bundan sonraki pencerelerde Next, Next diyerek ilerliyor ve kurulumu sonlandırıyorum. Normal bir program kurulumu yapıyoruz aslında o yüzden kurulumda anlatmamız veya dikkat etmemizi gereken bir nokta bulunmuyor. 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 entegrasyonunda 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ılabilmesi için Run Openfire kutucuğunu işaretleyip, Finish’e tıklayarak ürün kurulumunu başarılı bir şekilde sonlandıralım.
Run Openfire dediğimizde bir pencere çıkacaktır. Buradan 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.
Şimdi hazır isek Mesajlaşma sunucumuzun yapılandırmasına geçelim.
Öncelikle yapılandırma işlemlerini hangi dilde yapmak istiyoruz onu seçeceğiz. İngilizceyi seçiyorum ben.
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 tarafı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 kullanılabilir. Çünkü 9090 portu bazı uygulamalar tarafından da sıkça kullanılmakta.
Bu adım önemli. Bu adımda Openfire mesajlaşma sunucusunun veritabanın harici bir veritabanı sunucusunda mı yoksa kendisiyle birlikte gelen veritabanında mı tutacağız bunu seçmemiz gerekiyor. Ürünün kendi veritabanı hem performans açısından tatmin edici değil hem de bizim yapmak istediğimiz işlemler için yetersiz. O yüzden Standart Database Connection’ı seçiyor ve Continue diyerek devam ediyoruz.
Bu adımda Openfire için kullanmayı planladığımız veritabanı türünü seçeceğiz. Makalemizin konularından biriside zaten buydu. Başta da belirttiğimiz gibi bizler ürün için Microsoft firmasının veritabanı yazılımı olan MSSQL i kullanacağı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çmanızı ve kurulumu da bu hesap üzerinden gerçekleştirmenizi öneririm.
Eğer ki veritabanına openfire ismini 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ğer ki yanlış girer iseniz resimde görüldüğü gibi bilgilerin yanlış olduğuna dair bir uyarı alırsınız. Ayrıca Openfire’ı MSSQL in kurulu olduğu sunucuya kurmuyor iseniz de buradaki localhost u MSSQL sunucunun IP si ile değiştiriniz. Benim test ortamımda ürünler aynı sunucuda.
Username ve Password ise açtığımız veritabanında yetkili olan kullanıcı hesabı olacaktır. Başta da 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.
Ö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ızı 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ın da işini kolaylaştıran bir işlem zira kullanıcılarım için ayrı yetten bir hesap bilgisi ve ek bir şifre vermeyeceğim. Domainde oturum açmak için kullandıkları hesap bilgileri ile Openfire mesajlaşma sunucusunu da 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.
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 tabi ki 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ızı 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çebilirsiniz. Daha sonrasında ihtiyaç duymanız halinde bu ayarları Openfire yönetim panelinden tekrardan düzenleyebilirsiniz. Bu kısımdaki ayarlar eğer belli kullanıcı gruplarını sadece belli kullanıcı grubundaki kişiler ile mesajlaşması gibi bir ayara ihtiyaç duyuyor iseniz gerekli olacaktır. Örneğin sadece Muhasebe departmanındaki 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 var olan 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ı ekleyebilirsiniz.
Kullanıcı hesabını ekledikten sonra sorunsuzca çalıştığından emin olamak için hesabın kullanılabilirliğini test edelim.
Görüldüğü üzere hesabımız sorunsuzca eklenmiş bulunuyor. Bu ayrıca Active Directory erişim bilgilerini de sorunsuzca girildiğini belirtiyor. Çünkü Openfire artık kimlik doğrulama bilgilerimizi Adctive Direcotry üzerinden yapıyor.
Kurulumu ve Konfigürasyonu başarılı bir şekilde tamamladık. Şimdi diğer ayarların yapılandırılması için Login to admin console tıklayarak yönetim panelini açalım.
Yönetici hesap bilgilerini girerek yönetim konsoluna erişelim.
Burada yapacağımız temel ayar makalemizin ana konularından sonuncusu olan loglama ile ilgili olan ayarlardı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 inceleyeceğiz.
İlgili eklentiye geliyorum ve eklentiyi kurmak için + işaretine tıklıyorum. 1.5 mblık bir jar dosyasını indirip kendisi otomatik olarak 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ğer ki 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 ekleyebiliriz. Update Settings diyerek ayarlarımızı güncelleyelim.
Şimdi isterseniz yazışmalarımızın loglanıp, loglanmadığını kontrol edelim. Client tarafındaki yazılımımız 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 daha da 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 verebilmesi de 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. Elbette ki bu yazışmaların kayıt altına alınması güvenlik sebebiyle yapılmakta ve bu yazışmaların kayıt altına alınması kullanıcılarında lehine. Zira ileride birisine mesajlaşma sistemi üzerinden bir görevi yerine getirmesini belirttiğinizde bu kişi bu işi inkâr eder ise bunu yazışma kayıtlarından kolayca tespit edebilirsiniz.
Bu makalemizde sizlere Openfire mesajlaşma sunucusunun bir organizasyon içerisinde nasıl kullanıma hazır hale getirilebileceğinden bahsettik, bu makale ile Openfire mesajlaşma sunucusunun kurulumunu, Active Directory ile entegrasyonunu ve verilerinin MSSQL veritabanında tutulması ile yazışmaların loglanması konularını ele aldık.
Dileriz bu makale bu ürünü kullanan veya kullanmak isteyen kişilere yol gösterici bir doküman olmuştur.