Hi all, i'm trying to use SER with Radius auth for users. First i've tried to use IT with MySQL Auth and all works well so i decide to recompile all with Radius support and try in that way.
I'm using FreeRadius with radiusclient and, after some tries, i'm able to compile SER with Radius support (following SER Radius Howto). Then i modify ser.conf in that way:
root@cerberus:/usr/local/etc/ser# cat ser.cfg # # $Id: ser.cfg,v 1.21.4.1 2003/11/10 15:35:15 andrei Exp $ # # simple quick-start config script #
# ----------- global configuration parameters ------------------------
debug=3 # debug level (cmd line: -dddddddddd) fork=yes #log_stderror=no # (cmd line: -E)
/* Uncomment these lines to enter debugging mode debug=7 fork=no log_stderror=yes */
check_via=no # (cmd. line: -v) dns=no # (cmd. line: -r) rev_dns=no # (cmd. line: -R) #port=5060 #children=4 fifo="/tmp/ser_fifo"
# ------------------ module loading ----------------------------------
# Uncomment this if you want to use SQL database #loadmodule "/usr/local/lib/ser/modules/mysql.so"
loadmodule "/usr/local/lib/ser/modules/sl.so" loadmodule "/usr/local/lib/ser/modules/tm.so" loadmodule "/usr/local/lib/ser/modules/rr.so" loadmodule "/usr/local/lib/ser/modules/maxfwd.so" loadmodule "/usr/local/lib/ser/modules/usrloc.so" loadmodule "/usr/local/lib/ser/modules/registrar.so"
# Uncomment this if you want digest authentication # mysql.so must be loaded ! loadmodule "/usr/local/lib/ser/modules/auth.so" #loadmodule "/usr/local/lib/ser/modules/auth_db.so" # RADIUS loadmodule "/usr/local/lib/ser/modules/acc.so" loadmodule "/usr/local/lib/ser/modules/auth_radius.so" loadmodule "/usr/local/lib/ser/modules/group_radius.so" #loadmodule "/usr/local/lib/ser/modules/uri_radius.so"
# ----------------- setting module-specific parameters ---------------
# modparam("auth_radius","radius_config","/usr/local/etc/radiusclient/radiusclient.conf")
# -- usrloc params --
#modparam("usrloc", "db_mode", 0)
# Uncomment this if you want to use SQL database # for persistent storage and comment the previous line #modparam("usrloc", "db_mode", 2)
# -- auth params -- # Uncomment if you are using auth module # #modparam("auth_db", "calculate_ha1", yes) # # If you set "calculate_ha1" parameter to yes (which true in this config), # uncomment also the following parameter) # #modparam("auth_db", "password_column", "password")
# -- rr params -- # add value to ;lr param to make some broken UAs happy modparam("rr", "enable_full_lr", 1)
modparam("acc", "log_level", 1) modparam("acc", "radius_flag", 1)
# ------------------------- request routing logic -------------------
# main routing logic
route{
# initial sanity checks -- messages with # max_forwards==0, or excessively long requests if (!mf_process_maxfwd_header("10")) { sl_send_reply("483","Too Many Hops"); break; }; if ( msg:len > max_len ) { sl_send_reply("513", "Message too big"); break; };
# we record-route all messages -- to make sure that # subsequent messages will go through our proxy; that's # particularly good if upstream and downstream entities # use different transport protocol record_route(); # loose-route processing if (loose_route()) { t_relay(); break; };
# if the request is for other domain use UsrLoc # (in case, it does not work, use the following command # with proper names and addresses in it) if (uri==myself) { if (method=="REGISTER") { if (!radius_www_authorize("")) { www_challenge("", "0"); break; };
save("location"); break; }; lookup("aliases");
# native SIP destinations are handled using our USRLOC DB if (!lookup("location")) { sl_send_reply("404", "Not Found"); break; }; }; # forward to current uri now; use stateful forwarding; that # works reliably even if we forward from TCP to UDP if (!t_relay()) { sl_reply_error(); };
}
root@cerberus:/usr/local/etc/ser#
but SER don't want to start ! When i do ser -c i have:
root@cerberus:/usr/local/etc/ser# ser -c 0(8766) WARNING: could not rev. resolve 192.168.1.203 Listening on 127.0.0.1 [127.0.0.1]:5060 192.168.1.203 [192.168.1.203]:5060 Aliases: localhost:5060 config file ok, exiting... root@cerberus:/usr/local/etc/ser#
N.B.: (i'm trying to use it in a closed environment)
but when i launch it:
root@cerberus:/usr/local/etc/ser# ser Listening on 127.0.0.1 [127.0.0.1]:5060 192.168.1.203 [192.168.1.203]:5060 Aliases: localhost:5060 root@cerberus:/usr/local/etc/ser#
i have, in /var/log/syslog, that message:
Dec 21 12:30:07 cerberus ser: WARNING: could not rev. resolve 192.168.1.203
and nothing else. SER is not running:
root@cerberus:/usr/local/etc/ser# ps -ax | grep ser - 8788 pts/1 S+ 0:00 grep ser - root@cerberus:/usr/local/etc/ser#
Someone can help me ?
Thanks ! Oz