On installe SIP Express Router par le package "ser.i386". La package ser-mysql permet le support du stockage des paramètres SER dans une base MySQL. Il est clair que le package du serveur MySQL doit être installé. Un tutoriel est dédié à l'installation d'un serveur MySQL.
[root@localhost ~]# yum install ser
[root@localhost ~]# yum install ser-mysql
[root@localhost ser]# cat /etc/ser/ser.cfg
# ----------- global configuration parameters ------------------------
debug=3 # debug level (cmd line: -dddddddddd)
fork=no
log_stderror=yes
[root@localhost ser]# ser -f"/etc/ser/ser.cfg"
0(4021) WARNING: fix_socket_list: could not rev. resolve 192.168.122.1
0(4021) WARNING: fix_socket_list: could not rev. resolve 192.168.122.1
Listening on
udp: 127.0.0.1 [127.0.0.1]:5060
udp: 157.159.24.74 [157.159.x.x]:5060
udp: 192.168.122.1 [192.168.122.1]:5060
tcp: 127.0.0.1 [127.0.0.1]:5060
tcp: 157.159.24.74 [157.159.x.x]:5060
tcp: 192.168.122.1 [192.168.122.1]:5060
Aliases:
tcp: localhost:5060
tcp: localhost.localdomain:5060
udp: localhost:5060
udp: localhost.localdomain:5060
WARNING: no fork mode and more than one listen address found(will use only the the first one)
stateless - initializing
0(0) Maxfwd module- initializing
textops - initializing
0(0) INFO: udp_init: SO_RCVBUF is initially 111616
0(0) INFO: udp_init: SO_RCVBUF is finally 223232
0(0) WARNING: using only the first listen address (no fork)
2(0) INFO: fifo process starting: 4023
2(4023) SER: open_uac_fifo: fifo server up at /tmp/ser_fifo...
2(4023) WARNING: no fifo_db_url given - fifo DB commands disabled!
1(4022) INFO: signal 2 received
0(4021) child process 4022 exited normally, status=0
0(4021) INFO: dont_fork turned on, living on
2(4023) INFO: signal 15 received
0(4021) Thank you for flying ser
[root@localhost ser]# ser_mysql.sh create
MySql password for root:
Domain (realm) for the default user 'admin': voip.int-evry.fr
creating database ser ...
[root@localhost ser]# mysql -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 37
Server version: 5.0.45 Source distribution
Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
mysql> show databases;
Database |
information_schema
mysql
ser
test
|
4 rows in set (0.00 sec)
mysql> show tables in ser;
Tables_in_ser |
acc
active_sessions
admin_privileges
aliases
calls_forwarding
config
domain
event
grp
location
missed_calls
pending
phonebook
preferences_types
reserved
server_monitoring
server_monitoring_agg
silo
speed_dial
subscriber
trusted
uri
usr_preferences
version
|
24 rows in set (0.00 sec)
mysql> quit
Bye
[root@localhost ser]# mysql -p
mysql> select user,password from mysql.user;
user |
password |
root
root
root
ser
ser
serro
serro
|
*4947DD271F917AAAAAAAAA2CD3F94D748748D8A9
*AADB8976AAAAAAAAAAAAAAAA065872FDA6E980F3
*AADB8976AAAAAAAAAAAAAAAA065872FDA6E980F3
*77533DC1AAAAAAAAAAAAAAAA7F518C875C7A5732
*77533DC1AAAAAAAAAAAAAAAA7F518C875C7A5732
|
7 rows in set (0.00 sec)
[root@localhost ser]# cp ser.cfg ser.cfg.0
[root@localhost ser]# vi ser.cfg
[root@localhost ser]# diff ser.cfg ser.cfg.0
fifo_db_url="mysql://ser:heslo@localhost/ser"
loadmodule "/usr/lib/ser/modules/mysql.so"
loadmodule "/usr/lib/ser/modules/auth.so"
loadmodule "/usr/lib/ser/modules/auth_db.so"
modparam("usrloc", "db_mode", 2)
modparam("auth_db|uri_db|usrloc","db_url","mysql://ser:heslo@localhost/ser")
modparam("auth_db", "calculate_ha1", yes)
modparam("auth_db", "password_column", "password")
...
if (!www_authorize("voip.int-evry.fr", "subscriber")) {
www_challenge("voip.int-evry.fr", "0");
break;
};
# if (!www_authorize("iptel.org", "subscriber")) {
# www_challenge("iptel.org", "0");
# break;
# };