Compile OpenSIPS

From OnnoWiki
Jump to navigation Jump to search

Siapkan Software Pendukung

Untuk Ubuntu 14.04 dapat menggunakan perintah berikut

apt-get install flex bison gcc make libperl5.18 libperl-dev libxmlrpc-core-c3 libxmlrpc-core-c3-dev \
unixodbc unixodbc-dev libradiusclient-ng2 libradiusclient-ng-dev libxml2 openssl libsctp1 libsctp-dev \
libexpat1 libexpat1-dev libldap-2.4-2 libldap2-dev libconfuse0 libconfuse-dev \
libmysqlclient-dev mysql-client-5.5 mysql-server zlib1g zlib1g-dev  libmysql++3 libmysql++-dev libpcre3 \
libpcre3-dbg libpcre3-dev libsnmp30 libsnmp-base libncurses5-dev libxml2-dev libsctp-dev libssl-dev

Untuk Ubuntu 13.04 dapat menggunakan perintah berikut

apt-get install flex bison gcc make libperl5.14 libperl-dev libxmlrpc-core-c3 libxmlrpc-c3-dev \
unixodbc unixodbc-dev libradiusclient-ng2 libradiusclient-ng-dev libxml2 openssl libsctp1 libsctp-dev \
libexpat1 libexpat1-dev libldap-2.4-2 libldap2-dev libsnmp15 libsnmp-dev libconfuse0 libconfuse-dev \
libmysqlclient-dev mysql-client-5.5 mysql-server zlib1g zlib1g-dev  libmysql++3 libmysql++-dev libpcre3 \
libpcre3-dbg libpcre3-dev ncurses-dev

Untuk Ubuntu 10.10 dapat menggunakan perintah berikut

apt-get install flex bison gcc make libperl5.10 libperl-dev libxmlrpc-c3 libxmlrpc-c3-dev \
unixodbc unixodbc-dev libradiusclient-ng2 libradiusclient-ng-dev libxml2 openssl libsctp1 libsctp-dev \
libexpat1 libexpat1-dev libldap-2.4-2 libldap2-dev libsnmp15 libsnmp-dev libconfuse0 libconfuse-dev \
libmysqlclient-dev mysql-client-5.1 mysql-server zlib1g zlib1g-dev \
libmysql++3 libmysql++-dev libpcre3 libpcre3-dbg libpcre3-dev

Untuk Ubuntu 9.10, 10.04 dapat menggunakan perintah berikut

apt-get install flex bison gcc make libperl5.10 libperl-dev libxmlrpc-c3 libxmlrpc-c3-dev \
unixodbc unixodbc-dev libradiusclient-ng2 libradiusclient-ng-dev libxml2 openssl libsctp1 libsctp-dev \
libexpat1 libexpat1-dev libldap-2.4-2 libldap2-dev libsnmp15 libsnmp-dev libconfuse0 libconfuse-dev \
libmysqlclient16 libmysqlclient-dev mysql-client-5.1 mysql-server zlib1g zlib1g-dev \
libmysql++3 libmysql++-dev libpcre3 libpcre3-dbg libpcre3-dev


Untuk Ubuntu 8.10 & 9.04 dapat menggunakan perintah berikut

apt-get install flex bison gcc make libperl5.10 libperl-dev libxmlrpc-c3 libxmlrpc-c3-dev \
unixodbc unixodbc-dev libradiusclient-ng2 libradiusclient-ng-dev libxml2 openssl libsctp1 libsctp-dev \
libexpat1 libexpat1-dev libldap-2.4-2 libldap2-dev libsnmp15 libsnmp-dev libconfuse0 libconfuse-dev \
libmysqlclient15off libmysqlclient15-dev mysql-client-5.0 mysql-server zlib1g zlib1g-dev \
libmysql++3 libmysql++-dev

Untuk Ubuntu 8.04 dapat menggunakan perintah berikut

apt-get install flex bison gcc make libperl5.8 libperl-dev libxmlrpc-c3 libxmlrpc-c3-dev \
unixodbc unixodbc-dev libradiusclient-ng2 libradiusclient-ng-dev libxml2 openssl libsctp1 libsctp-dev \
libexpat1 libexpat1-dev libldap-2.4-2 libldap2-dev libsnmp15 libsnmp-dev libconfuse0 libconfuse-dev \
libmysqlclient15off libmysqlclient15-dev mysql-client-5.0 mysql-server zlib1g zlib1g-dev

Untuk Ubuntu 7.10 dapat menggunakan perintah berikut

apt-get install flex bison gcc make libperl5.8 libperl-dev libxmlrpc-c3 libxmlrpc-c3-dev \
unixodbc unixodbc-dev libradiusclient-ng2 libradiusclient-ng-dev libxml2 openssl libsctp1 libsctp-dev \
libexpat1 libexpat1-dev libldap2 libldap2-dev libsnmp10 libsnmp-dev libconfuse0 libconfuse-dev \
libmysqlclient15off libmysqlclient15-dev mysql-client-5.0 mysql-server zlib1g zlib1g-dev


Jika kita ingin menggunakan PostgresQL, kita perlu menginstalasi PostgresQL melalui perintah

apt-get install libpq5 libpq-dev

Ambil dan Buka Source Code OpenSIPS

Ambil source code dari

http://opensips.org/pub/opensips/
http://www.opensips.org/index.php?n=Resources.Downloads#osippub
http://www.opensips.org/index.php?n=Resources.Downloads#osipsf
http://opensips.org/pub/opensips/1.10.0/src/
http://opensips.org/pub/opensips/latest/
cd /usr/local/src/
wget http://opensips.org/pub/opensips/latest/opensips-2.2.2.tar.gz

Jika anda menggunakan versi 2.2.2, lakukan


cd /usr/local/src/
tar zxvf opensips-2.2.2.tar.gz   
cd /usr/local/src/opensips-2.2.2

menuconfig

Lakukan

cd /usr/local/src/opensips-2.2.2
make menuconfig

Pilih

Configure Compile Options 
  Configure Excluded Modules 
    [*] pi_http
    [*] proto_sctp
    [*] proto_tls
  Save Changes

Generate OpenSIPS Script
  Residential Script
    Configure Residential Script 
      [*] ENABLE_TCP
      [*] ENABLE_TLS
      [*] USE_NAT
      [*] USE_HTTP_MANAGEMENT_INTERFACE
    Save Residential Script
    Generate Residential Script

Compile And Install OpenSIPS 
Exit & Save All Changes

Compile

Sebaiknya compile dan install sekaligus dengan modul "acc", "mysql", "textops", "sl", "db_mysql" dan "enum" melalui perintah

make clean && make all && make include_modules="acc mysql textops sl enum db_mysql tls" modules && make install

Copykan scripts

mkdir -p /usr/local/lib/opensips/opensipsctl/
cp -Rf /usr/local/src/opensips-2.2.2/scripts/* /usr/local/lib/opensips/opensipsctl/

Cara yang lebih konservatif

Compile menggunakan perintah

make
make modules

Copykan scripts

mkdir -p /usr/local/lib/opensips/opensipsctl/
cp -Rf /usr/local/src/opensips-2.2.2/scripts/* /usr/local/lib/opensips/opensipsctl/

atau

make install

Atau

make && make modules && make install

Atau

make all && make install

Jika anda ingin menginstalasi OpenSIPS di folder /usr/sbin, maka sebaiknya kita install menggunakan perintah

make prefix=/usr/ install

Konfigurasi Dasar OpenSIPS

Semua file konfigurasi openser hasil compile terdapat di

/usr/local/etc/opensips

Pastikan

vi /usr/local/etc/opensips/opensips.cfg

Set dengan IP server

listen=udp:127.0.0.1:5060   # CUSTOMIZE ME

Lakukan cek konfigurasi ada kesalahan dalam konfigurasi file

opensips -c -f /usr/local/etc/opensips/opensips.cfg

Beberapa Bug di versi < 1.6.2

file /tmp/opensips_fifo

Edit /usr/local/etc/opensips/opensips.cfg

vi /usr/local/etc/opensips/opensips.cfg

Pastikan

modparam("mi_fifo", "fifo_name", "/tmp/opensips_fifo")

Lakukan

rm -Rf /tmp/opensips_fifo
touch /tmp/opensips_fifo

scripts untuk opensipsctl

Kadang kala ada bug dalam proses instalasi, entah kenapa tidak semua module tercopy ke folder yang benar.

Copykan scripts ke /usr/local/lib/opensips/opensipsctl

cp -Rf /usr/local/src/opensips-1.6.4-2-notls/scripts/* /usr/local/lib/opensips/opensipsctl

atau

cp -Rf /usr/local/src/opensips-1.6.4-2-tls/scripts/* /usr/local/lib/opensips/opensipsctl

copy modul .so ke folder lib64/modules

Cek terlebih dulu

ls /usr/local/lib64/opensips/modules

Atau jika anda mengcompile di /usr/local/src kemungkinan path yang dibutuhkan adalah

cp /usr/local/src/opensips-1.10.0-tls/modules/db_mysql/db_mysql.so /usr/local/lib64/opensips/modules
cp /usr/local/src/opensips-1.10.0-tls/modules/sl/sl.so /usr/local/lib64/opensips/modules
cp /usr/local/src/opensips-1.10.0-tls/modules/textops/textops.so /usr/local/lib64/opensips/modules
cp /usr/local/src/opensips-1.10.0-tls/modules/enum/enum.so /usr/local/lib64/opensips/modules
cp /usr/local/src/opensips-1.10.0-tls/modules/sl/sl.so /usr/local/lib64/opensips/modules

Pranala Menarik