{"id":1116,"date":"2016-12-31T11:27:13","date_gmt":"2016-12-31T10:27:13","guid":{"rendered":"http:\/\/diablo.craem.net\/?p=1116"},"modified":"2016-12-31T11:27:13","modified_gmt":"2016-12-31T10:27:13","slug":"kamailio-4-x-debian-jessie","status":"publish","type":"post","link":"https:\/\/diablo.craem.net\/?p=1116","title":{"rendered":"Kamailio 4.x Debian Jessie"},"content":{"rendered":"<p>Estos d\u00edas estoy liado con el tema del sipproxy Kamailio&#8230;.. un gran software y potente donde los haya.<br \/>\nEmpezamos con que disponemos de un debian jessie limpito; instalamos las dependencias:<br \/>\n<code><br \/>\napt-get install git-core gcc flex bison libmysqlclient-dev make libssl-dev libcurl4-openssl-dev libxml2-dev libpcre3-dev mysql-server<br \/>\n<\/code><br \/>\nY ahora descargamos el source de kamailio:<br \/>\n<code><br \/>\nroot@sipproxy:\/usr\/src# wget -c https:\/\/www.kamailio.org\/pub\/kamailio\/4.2.2\/src\/kamailio-4.4.4_src.tar.gz<br \/>\nroot@sipproxy:\/usr\/src# tar -zxvf kamailio-4.4.4_src.tar.gz<br \/>\n<\/code><br \/>\nPreparamos para compilar:<br \/>\n<code><br \/>\n#make cfg<br \/>\n<\/code><br \/>\nEditamos el fichero \/usr\/src\/kamailio-4.4.4\/modules.lst y modificamos:<br \/>\n<code><br \/>\n.<br \/>\n.<br \/>\n# the list of extra modules to compile<br \/>\ninclude_modules=db_mysql<br \/>\n.<br \/>\n.<br \/>\n<\/code><br \/>\nGuardamos y vamos a compilar:<br \/>\n<code><br \/>\n#make install<br \/>\n<\/code><br \/>\nUna vez compilado, tendremos los ficheros en \/usr\/local\/etc\/kamailio.<br \/>\nCreamos un usuario para el mysql \/ kamailio:<br \/>\n<code><br \/>\nmysql&gt; grant all privileges on kamailio.* to 'kamailio'@'%' identified by 'kamailio' with grant option;<br \/>\n<\/code><br \/>\nModificamos el kamctrlc para que use mysql (en mi caso) y lo dejamos tal que:<br \/>\n<code><br \/>\nDBENGINE=MYSQL<\/code><br \/>\n<code><code><\/code><\/code><br \/>\n## database host<br \/>\nDBHOST=localhost<br \/>\n<code><code><\/code><\/code><br \/>\n## database name (for ORACLE this is TNS name)<br \/>\nDBNAME=kamailio<br \/>\n<code><code><\/code><\/code><br \/>\n# database path used by dbtext, db_berkeley or sqlite<br \/>\n# DB_PATH=\u00bb\/usr\/local\/etc\/kamailio\/dbtext\u00bb<br \/>\n<code><code><\/code><\/code><br \/>\n## database read\/write user<br \/>\nDBRWUSER=\u00bbkamailio\u00bb<br \/>\n<code><code><\/code><\/code><br \/>\n## password for database read\/write user<br \/>\nDBRWPW=\u00bbkamailio\u00bb<br \/>\n<code><code><\/code><\/code><br \/>\n## database read only user<br \/>\nDBROUSER=\u00bbkamailio\u00bb<br \/>\n<code><br \/>\n<\/code><br \/>\n<code>## password for database read only user<br \/>\nDBROPW=\"kamailio\"<br \/>\n<\/code><br \/>\nahora creamos las bbdd:<br \/>\n<code><br \/>\nroot@monaca:\/usr\/local\/etc\/kamailio# \/usr\/local\/sbin\/kamdbctl create<br \/>\nMySQL password for root:<br \/>\nINFO: test server charset<br \/>\nINFO: creating database kamailio ...<br \/>\nINFO: granting privileges to database kamailio ...<br \/>\nINFO: creating standard tables into kamailio ...<br \/>\nINFO: Core Kamailio tables succesfully created.<br \/>\nInstall presence related tables? (y\/n): y<br \/>\nINFO: creating presence tables into kamailio ...<br \/>\nINFO: Presence tables succesfully created.<br \/>\nInstall tables for imc cpl siptrace domainpolicy carrierroute<br \/>\nuserblacklist htable purple uac pipelimit mtree sca mohqueue<br \/>\nrtpproxy? (y\/n): y<br \/>\nINFO: creating extra tables into kamailio ...<br \/>\nINFO: Extra tables succesfully created.<br \/>\nInstall tables for uid_auth_db uid_avp_db uid_domain uid_gflags<br \/>\nuid_uri_db? (y\/n): y<br \/>\nINFO: creating uid tables into kamailio ...<br \/>\nINFO: UID tables succesfully created.<br \/>\nroot@monaca:\/usr\/local\/etc\/kamailio#<br \/>\n<\/code><br \/>\npreparamos el kamailio para que arranque y crearemos el init.d<br \/>\n<code><br \/>\nroot@monaca:\/usr\/src\/kamailio-4.4.4\/pkg\/kamailio\/deb\/precise# cp kamailio.init \/etc\/init.d\/kamailio<br \/>\n<\/code><br \/>\n<code><br \/>\nroot@monaca:\/usr\/src\/kamailio-4.4.4\/pkg\/kamailio\/deb\/precise# cp kamailio.default \/etc\/default\/kamailio<br \/>\n<\/code><br \/>\nEditamos el fichero \/etc\/default\/kamailio<br \/>\n<code><br \/>\n#<br \/>\n# Kamailio startup options<br \/>\n#<\/code><br \/>\n<code><code><\/code><\/code><br \/>\n# Set to yes to enable kamailio, once configured properly.<br \/>\nRUN_KAMAILIO=yes<br \/>\n<code><code><\/code><\/code><br \/>\n# User to run as<br \/>\nUSER=kamailio<br \/>\n<code><code><\/code><\/code><br \/>\n# Group to run as<br \/>\nGROUP=kamailio<br \/>\n<code><code><\/code><\/code><br \/>\n# Amount of shared and private memory to allocate<br \/>\n# for the running Kamailio server (in Mb)<br \/>\n#SHM_MEMORY=64<br \/>\n#PKG_MEMORY=8<br \/>\n<code><code><\/code><\/code><br \/>\n# Config file<br \/>\nCFGFILE=\/usr\/local\/etc\/kamailio\/kamailio.cfg<br \/>\n<code><br \/>\n<\/code><br \/>\n<code># Enable the server to leave a core file when it crashes.<br \/>\n# Set this to 'yes' to enable Kamailio to leave a core file when it crashes<br \/>\n# or 'no' to disable this feature. This option is case sensitive and only<br \/>\n# accepts 'yes' and 'no' and only in lowercase letters.<br \/>\n# On some systems it is necessary to specify a directory for the core files<br \/>\n# to get a dump. Look into the kamailio init file for an example configuration.<br \/>\n#DUMP_CORE=yes<br \/>\n<\/code><br \/>\nCreamos el fichero pid, usuarios:<br \/>\n<code><br \/>\nadduser --quiet --system --group --disabled-password --shell \/bin\/false --gecos \"kamailio\" --home \/var\/run\/kamailio kamailio<\/code><br \/>\n<code><br \/>\n<\/code><br \/>\n<code><\/code><br \/>\nCopiamos el init.d<br \/>\n<code><br \/>\ncp \/usr\/src\/kamailio-4.4.4\/pkg\/kamailio\/deb\/precise\/kamailio.init \/etc\/init.d\/kamailio<br \/>\nmkdir -p \/var\/run\/kamailio<br \/>\nchmod 755 \/etc\/init.d\/kamailio<br \/>\nchown kamailio:kamailio \/var\/run\/kamailio<br \/>\n<\/code><br \/>\ny ahora para que arranque con el systcl, a\u00f1adimos el siguiente fichero \/etc\/systemd\/system\/kamailio.service<br \/>\n<code><br \/>\n[Unit]<br \/>\nDescription=Kamailio SIP Server<\/code><br \/>\n<code><code><\/code><\/code><br \/>\n[Service]<br \/>\nType=forking<br \/>\nPIDFile=\/var\/run\/kamailio.pid<br \/>\nExecStart=\/usr\/local\/sbin\/kamctl start<br \/>\nExecRestart=\/usr\/local\/sbin\/kamctl restart<br \/>\nExecStop=\/usr\/local\/sbin\/kamctl stop<br \/>\n<code><br \/>\n<\/code><br \/>\n<code>[Install]<br \/>\nWantedBy=multi-user.target<br \/>\n<\/code><br \/>\nEnjoy your kamailio server \ud83d\ude09<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Estos d\u00edas estoy liado con el tema del sipproxy Kamailio&#8230;.. un gran software y potente donde los haya. Empezamos con que disponemos de un debian jessie limpito; instalamos las dependencias: apt-get install git-core gcc flex bison libmysqlclient-dev make libssl-dev libcurl4-openssl-dev libxml2-dev libpcre3-dev mysql-server Y ahora descargamos el source de kamailio: root@sipproxy:\/usr\/src# wget -c https:\/\/www.kamailio.org\/pub\/kamailio\/4.2.2\/src\/kamailio-4.4.4_src.tar.gz root@sipproxy:\/usr\/src# [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[5,8],"tags":[96,172],"class_list":["post-1116","post","type-post","status-publish","format-standard","hentry","category-linux","category-varios","tag-kamailio","tag-sipproxy"],"_links":{"self":[{"href":"https:\/\/diablo.craem.net\/index.php?rest_route=\/wp\/v2\/posts\/1116","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/diablo.craem.net\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/diablo.craem.net\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/diablo.craem.net\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/diablo.craem.net\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=1116"}],"version-history":[{"count":0,"href":"https:\/\/diablo.craem.net\/index.php?rest_route=\/wp\/v2\/posts\/1116\/revisions"}],"wp:attachment":[{"href":"https:\/\/diablo.craem.net\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=1116"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/diablo.craem.net\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=1116"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/diablo.craem.net\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=1116"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}