
Merhaba VoIP Meraklıları,
OPENSIPS, voip platformlarında registrar ve sip proxy server olarak kullanılabilen ve carrier-grade düzeyde çok hızlı çalışan bir uygulamadır. Sizde kendi evinizde veya işyerinizde bu yazılımı kullanarak yazılımsal telefonlar ( softphone) veya ip cihazları ile haberleşebilir istediğiniz kadar konuşabilirsiniz. Hemde bedava
. İşte bu makalemizde bu muhteşem yazılımın kurulumunu aşama aşama anlatacağız. Kurulum vmware server üzerinde yapılmıştır.
1- ubuntu 9.04 server kurulumu yapılır
konumuz dışı olduğu için bu kurulumu anlatmadım. Fakat http://www.howtoforge.com/perfect-server-ubuntu-9.04-ispconfig-2 linkindeki sadece ubuntu server kurulumunu bu aşamada kullanabilirsiniz.
2- uzaktan erişim için OpenSSH kurulum yapılır
ubuntu kurulumu yaptıktan sonra ana terminalden işlemlere devam etmeyi hiç sevmediğimden openssh tan vazgeçmiyorum. sizinde kurmanızı tavisye ederim.
3- opensips 1.5.3 versiyonu indirilir
http://sourceforge.net/projects/opensips/files/ adresinden opensips in versiyonlarını bulabilirsiniz. Bu dökümanda hazırlanırken en son 1.6 versiyonu çıkmış olmasına rağmen kararlı sürüm olan 1.5.3 u kurmayı tercih ediyorum.
# cd /opt/ # wget http://downloads.sourceforge.net/project/opensips/OpenSIPS/1.5.3/ opensips-1.5.3-notls_src.tar.gz?use_mirror=garr
4- bağımlılıklar kontrol edilir öncelikli olarak yüklenmesi gereken programlar varsa yüklenir
opensips in yüklenebilmesi için gerekli olan programlar ve gereklilik sebepleri http://opensips.svn.sourceforge.net/viewvc/opensips/trunk/INSTALL linkinde anlatılmıştır. Bu bilgilere göre bize gerekli olan programları kuralım;
# apt-get install bison # apt-get install gcc # apt-get install flex # apt-get install libsctp1 # apt-get install mysql-server # apt-get install libmysqlclient15-dev # apt-get install libxml2-dev # apt-get install libexpat1-dev # apt-get install libradiusclient-ng2 libradiusclient-ng-dev # apt-get install libxmlrpc-c3 libxmlrpc-c3-dev # apt-get install libperl-dev # apt-get install libsnmp-dev # apt-get install libconfuse0 libconfuse-dev # apt-get install build-essential
5- opensips derleme ve kurulumu yapılır
derleme evresinde opensips in tüm modüllerini aktif edip derliyorum. İsterseniz http://opensips.svn.sourceforge.net/viewvc/opensips/trunk/INSTALL adresindeki derleme yönergelerine göre sadece kullanacağınız modülleri derleyip kurabilirsiniz.
# cd /opt/ # tar xfvz opensips-1.5.3-notls_src.tar.gz # cd opensips-1.5.3-notls
Makefile dosyasında opensips ile birlikte yüklenmesini istediğiniz modülleri teker teker seçelim. Bu örneğimizde mi_xmlrpc, xcap_client, presence, presence_xml, presence_mwi, presence_dialoginfo, pua, pua_bla, pua_mi, pua_usrloc, pua_xmpp, pua_dialoginfo modülleri yükleneceği için aşağıdaki işlemler yapılacaktır;
Makefile dosyasının exclude_modules kısmından yüklenmesini istediğimiz modülleri çıkarıyoruz;
# vi Makefile
– jabber
- cpl-c
- xmpp
- rls
- mi_xmlrpc
- xcap_client
- db_mysql
- presence
- presence_xml
- presence_mwi
- presence_dialoginfo
- pua
- pua_bla
- pua_mi
- pua_usrloc
- pua_xmpp
- pua_dialoginfo
- perl
- snmpstats
- peering
- carrierroute
derleyip kurulum işlemine geçiyoruz.
# make prefix=/usr/local # make prefix=/usr/local install
6- programı aktif edebilmek için birtakım ayarlamalar yapılır
# cp -prv packaging/debian-etch/opensips.default /etc/default/opensips # cp -prv packaging/debian-etch/opensips.init /etc/init.d/opensips # vim /etc/default/opensips
RUN_OPENSIPS=no kısmını RUN_OPENSIPS=yes olarak değiştirelim.
# vim /etc/init.d/opensips
DAEMON=/usr/sbin/opensips
RUN_OPENSIPS=no
olan kısımları
DAEMON=/usr/local/sbin/opensips
RUN_OPENSIPS=yes
olarak değiştirelim.
/etc/opensips/opensips.cfg
olan kısmı
/usr/local/etc/opensips/opensips.cfg
olarak değiştirelim.
# chmod +x /etc/init.d/opensips # update-rc.d opensips default # groupadd opensips # useradd -g opensips opensips # chmod 777 /usr/local/etc/opensips/ # vim /usr/local/etc/opensips/opensipsctlrc
aşağıdaki satırlaraki # işaretlerini kaldırın;
# SIP_DOMAIN=opensips.org # DBENGINE=MYSQL # DBHOST=localhost # DBNAME=opensips # DBRWUSER=opensips # DBRWPW=”opensipsrw” # DBROUSER=opensipsro # DBROPW=opensipsro # DBROOTUSER=”root” # USERCOL=”username” # INSTALL_EXTRA_TABLES=ask # INSTALL_PRESENCE_TABLES=ask # PID_FILE=/var/run/opensips.pid
7- veritabanı ile birlikte işlerliğin aktif edilmesi ( isteğe bağlı )
istendiği takdirde opensips e register olacak hesapların bilgilerinin tutulması veya arama detayları gibi bilgilerin kaydedilmesini istiyorsanız mysql de opensips için veritabanı oluşturalım.
# mysqladmin -u root password ‘root’ # mkdir /usr/local/share/opensips/mysql # cp -rpv /opt/opensips-1.5.3-notls/scripts/mysql/* /usr/local/share/opensips/ # opensipsdbctl create
opensips konfigürasyon dosyasında mysql ile haberleşme için gerekli işlemleri yapalım;
# vim /usr/local/etc/opensips/opensips.cfg
aşağıdaki satırlardaki # işaretini kaldıralım;
#loadmodule “db_mysql.so” #loadmodule “auth.so” #loadmodule “auth_db.so” #modparam(“usrloc”, “db_mode”, 2) #modparam(“usrloc”, “db_url”, # “mysql://opensips:opensipsrw@localhost/opensips”) #modparam(“auth_db”, “calculate_ha1″, yes) #modparam(“auth_db”, “password_column”, “password”) #modparam(“auth_db”, “db_url”, # “mysql://opensips:opensipsrw@localhost/opensips”)
aşağıdaki satıra # ekleyelim;
modparam(“usrloc”, “db_mode”, 0)
veritabanına erişim için opensips kullanıcısının haklarını verelim;
# mysql -u root -p mysql> GRANT ALL PRIVILEGES ON *.* TO opensips@localhost IDENTIFIED BY ‘opensipsrw’; mysql> GRANT ALL PRIVILEGES ON *.* TO opensips@127.0.0.1 IDENTIFIED BY ‘opensipsrw’;
8- opensips programını başlatalım
aşağıdaki komutlardan birisi ile opensips i başlatalım;
# opensipsctl start # /etc/init.d/opensips start
9- test için hesap oluşturalım
aşağıdaki komut vasıtası ile 1001 kullanıcı adına ve 1001 parolasına sahip bir kullanıcı oluşturup softphone veya ip cihazı ile deneme yapabiliriz.
# opensipsctl add 1001 1001
Kaynaklar :
http://vidodz.wordpress.com/2009/07/28/install-opensips-on-debian-or-ubuntu/ http://opensips.svn.sourceforge.net/viewvc/opensips/trunk/INSTALL
