Browse Source

added kamailio install guide for debian

Daniel-Constantin Mierla 8 years ago
parent
commit
5923ad0b87

BIN
kamailio-install-guide-deb/docs/img/favicon.ico


+ 185 - 0
kamailio-install-guide-deb/docs/index.md

@@ -0,0 +1,185 @@
+# Install Kamailio On Debian #
+
+For more details about Kamailio Project visit: [kamailio.org](https://www.kamailio.org).
+
+## Overview ##
+
+Kamailio packages are included in the official Debian Stable repository. At the
+time of writing the initial version of this tutorial, Debian Stable codename is
+Jessie, version 8.x.
+
+This tutorial should just work for latest Ubuntu versions as well.
+
+**_The focus of this tutorial is to install Kamailio with MySQL backend using
+deb packages._**
+
+## APT Install Commands ###
+
+The `apt` tool is used for installing the packages. First run the `update`
+command to sync with the remote repository, then install `MySQL` server,
+`Kamailio` **core** and **mysql** packages.
+
+
+```Shell
+apt update
+apt install mysql-server
+apt install kamailio kamailio-mysql-modules
+```
+
+Once the above commands are finished, you can check if `kamailio` application
+is available:
+
+
+```Shell
+which kamailio
+```
+
+There are many Kamailio packages specific for various modules. You can see all
+available with:
+
+
+```Shell
+apt search kamailio
+```
+
+For example, to be able to load `websocket` module, you have to install the
+package `kamailio-websocket-modules`:
+
+```Shell
+apt install kamailio-websocket-modules
+```
+
+## Configuration Files ##
+
+Configuration files are located in `/etc/kamailio/` folder.
+
+### kamctlrc ###
+
+The `/etc/kamailio/kamctlrc` is the configuration file for `kamctl` and
+`kamdbctl` tools. You need to edit it and set the `SIP_DOMAIN` to your SIP
+service domain (or IP address if you don't have a DNS hostname associated with
+your SIP service).
+
+Set also the `DBENGINE` to be `MYSQL` and adjust other setting as you want. Very
+important are the passwords to connect to `MySQL` server, respectively
+`DBRWPW` and `DBROPW`. By default, their values are `kamailiorw` and
+`kamailioro`. You should change them before executing `kamdbctl create` (step
+detailed the section **Create Database**).
+
+### kamailio.cfg ###
+
+The `/etc/kamailio/kamailio.cfg` is the configuration file for `kamailio`.
+Edit it to enable some of the features shipped with it.
+
+To enable use of `MySQL` server backend, user authentication and persistent user
+location, add after the first line:
+
+```C
+#!define WITH_MYSQL
+#!define WITH_AUTH
+#!define WITH_USRLOCDB
+```
+
+## Create Database ##
+
+To create the database structure needed by `Kamailio`, run:
+
+```Shell
+kamdbctl create
+```
+
+The database name created in `MySQL` is `kamailio`. Two access users to
+`MySQL` server were created:
+
+  * **kamailio** - (with password set by `DBRWPW` in `kamctlrc`) - user which
+  has full access rights to `kamailio` database
+
+  * **kamailioro** - ((with password set by `DBROPW` in `kamctlrc`) - user which
+  has read-only access rights to `kamailio` database
+
+The access for the two users is restricted to `localhost`, but as advised above,
+it is recommended to change their default passwords.
+
+If you changed the value of `DBRWPW` in `kamctlrc`, you must update the value
+of `DBURL` define inside `kamailio.cfg`.
+
+```C
+#!define DBURL "mysql://kamailio:_NEW_DBRWPW_@localhost/kamailio"
+```
+
+## Startup Scripts ##
+
+### Init.d Scripts ###
+
+Depending on startup system, you may have an `/etc/init.d/kamailio` script that
+you can use to start/stop kamailio.
+
+First you should edit `/etc/default/kamailio` and adjust the setting for
+`kamailio` startup script, in particular the one that enables `kamailio` to start.
+
+```Shell
+/etc/init.d/kamailio start
+/etc/init.d/kamailio stop
+```
+
+### Systemd Scripts ###
+
+If the default startup system is `systemd`, then `kamailio` can be managed
+via `systemctl`:
+
+```Shell
+systemctl start kamailio
+systemctl stop kamailio
+```
+
+First you may also need to edit `/etc/default/kamailio` and adjust the setting
+for `kamailio` startup script, in particular the one that enables
+`kamailio` to start.
+
+## Adding Subscribers ##
+
+To add subscribers (users), you can use the `kamctl` command:
+
+```Shell
+kamctl add userid password
+```
+
+Like:
+
+```Shell
+kamctl add alice secret
+```
+
+Then you can configure your phone to register to `Kamailio` using the username
+and password set in the above command.
+
+## Alternative APT Repositories ##
+
+You can check the list of `APT` repositories offered by `Kamailio` project for
+various `Debian` or `Ubuntu` versions, including nightly builds for stable and
+development versions:
+
+  * [https://www.kamailio.org/wiki/packages/debs](DEBS: Debian - Ubuntu)
+
+## Support ##
+
+Questions about how to use Kamailio and the content of kamailio.cfg can be
+addressed via email to:
+
+  * [[email protected]](http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users)
+
+More documentation resources can be found at:
+
+  * [www.kamailio.org/w/documentation](https://www.kamailio.org/w/documentation/)
+  * [www.kamailio.org/wiki](https://www.kamailio.org/wiki/)
+
+## Contributions ##
+
+Anyone is welcome to contribute to this document. It is recommended to make a
+pull request via:
+
+  * [github.com/kamailio/kamailio-docs/pulls](https://github.com/kamailio/kamailio-docs/pulls)
+
+Errors and other issues can be reported via the tracker at:
+
+  * [github.com/kamailio/kamailio-docs/issues](https://github.com/kamailio/kamailio-docs/issues)

+ 4 - 0
kamailio-install-guide-deb/mkdocs.yml

@@ -0,0 +1,4 @@
+site_name: Install Kamailio On Debian
+theme: mkdocs
+pages:
+    - 'index.md'