.titleBar { margin-bottom: 5px!important; }

SIP via MySQL

Dieses Thema im Forum "Asterisk Allgemein" wurde erstellt von equinox, 29 Nov. 2006.

  1. equinox

    equinox Neuer User

    Registriert seit:
    24 Okt. 2005
    Beiträge:
    37
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Hi,


    ich will meine SIP-Authentifikation der Peers/Users auf MySQL umstellen. Bisher hab ich eine res_mysql.conf mit den DB-Zugangsdaten erstellt, die Verbindung zur Datenbank tut auch soweit:

    Code:
    lxasterisk01*CLI> realtime mysql status
    Connected to asterisk@localhost, port 3306 with username asterisk for 2 minutes, 15 seconds.
    wenn dann allerdings mein x-lite versucht sich zu authentifizieren bekomm ich nur folgendes:
    Code:
    Nov 29 16:14:30 WARNING[18411]: res_config_mysql.c:145 realtime_mysql: MySQL RealTime: Failed to query database. Check debug for more info.
    Nov 29 16:14:30 NOTICE[18411]: chan_sip.c:10924 handle_request_register: Registration from '<sip:trce@172.17.188.34>' failed for '172.17.188.10' - Username/auth name mismatch
    Meine sip.conf sieht so aus:
    Code:
    [general]
    ;----
    ;SIP users/peers authentication
    sipusers => mysql,asterisk,sipfriends
    sippeers => mysql,asterisk,sipfriends
    ;----
    allow=all
    allowexternalinvites=yes
    context=default
    Die Tabelle sipfriends gibt es (auch die Spalten user,username,secret,... - muss der Username jetzt in "username" oder in "user" rein?), aber mir scheint der geht gar nicht bis dorthin, da mir "sip show peers/users" nichts ausgibt (oder gibt das auch gar nix aus?).

    Bei der Gelegenheit bitte ich auch darum mir zu erklären worin der Unterschied zwischen einem User und einem Peer besteht.. und natürlich was ich machen muss, damit die Authentifikation auch über MySQL geht ..

    Danke :)
     
  2. equinox

    equinox Neuer User

    Registriert seit:
    24 Okt. 2005
    Beiträge:
    37
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    ich hab grad festgestellt, dass die verbindung und sogar der sql-query 1a funktionieren .. nur eben die authentifikation nicht.

    mysqld.log:
    061129 16:37:50 1 Init DB asterisk
    1 Query SELECT * FROM sipfriends WHERE name = 'trce'

    ergibt genau den eintrag den ich in der datenbank stehen habe.
    trotzdem meckert asterisk "username/auth name mismatch" ..
     
  3. Maik

    Maik Gesperrt

    Registriert seit:
    1 Apr. 2004
    Beiträge:
    1,778
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Die Zeilen

    Code:
    sipusers => mysql,asterisk,sipfriends
    sippeers => mysql,asterisk,sipfriends
    gehören in die extconfig.conf.
     
  4. equinox

    equinox Neuer User

    Registriert seit:
    24 Okt. 2005
    Beiträge:
    37
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    was passiert dann mit der sip.conf?
    kanns atm nicht ausprobieren, werds aber morgen tun. merci schonmal
     
  5. equinox

    equinox Neuer User

    Registriert seit:
    24 Okt. 2005
    Beiträge:
    37
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    also es funktioniert aus irgendeinem grund nicht, der sich mir leider aktuell verschliesst. der sql-query wird imho korrekt an den mysql-server geschickt, asterisk scheint aber evtl. das resultset nicht korrekt zu verarbeiten oder zu verstehen, was wieder rauskommt ...

    irgendwo hab ich gehört, dass man noch mitangeben muss, aus welcher db-spalte sich asterisk das passwort holen soll, was ja einigermaßen logisch wäre. eine angabe darüber hab ich jedoch nicht gefunden, weder im asterisk-wiki noch im buch "internettelefonie - voip mit asterisk und ser" ...

    please help!
     
  6. equinox

    equinox Neuer User

    Registriert seit:
    24 Okt. 2005
    Beiträge:
    37
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    ich sterb gleich .. jetzt gehts .. und woran lags? fehlende rechte des users an der datenbank -.-
    naja, manche sachen muss man halt immer und immer wieder lernen, auch wenn mans eigentlich schon seit jahren weiss. gemerkt hab ichs übrigens erst im debug-log, da stand es dann schön und breit und lang warum die authentifikation nicht funktioniert hat. schade, dass kein vollständiges debug-log auf der cli ausgegeben wird.