MySQL Abfrage durch Freeradius
Freeradius bekommt eine fehlermeldung beim Abrufn von usernamen, obwohl diese in der MySQL Base vorhanden sind.
Ich fasse mich kurz, und hoffe, dass ich alle Info's rüber bringen kann.
Aufbau:
Ich habe ein Debian (amd64) aufgebaut, MySQL, Freeradius und alle Voraussetzungen dafür erfüllt. Grundlegend ist alles am arbeiten. Die Usernamen etc werden aus der DB gelesen, zurückgegeben etc.
Zur überprüfung habe ich Namen in der DB angelegt mit @ _ - . DIese funktionieren alle. Nun habe ich vor 6 Jahren nicht daran gedacht, dass ich heute meine Authentifizierung und Accounting über einen Freeradius laufen lassen muss. Ich hatte damals in die Benutzernamen angelegt,
die folgenden Aufbau haben: 12345-1234567-AB#001@domain.com. Wenn ich die User ohne # anlege funktioniert das ohne Probleme.
Mein Stand bis heute ist:
- MySQL läuft, Freeradius läuft, eine WebOberfläche zur Abfrage läuft auch.
- Usernamen mit Sonderzeichen auser # werden akzeptiert.
- Abfrage im PHPMyAdmin wenn ich nach #'ten suche ist positiv und es werden alle User angezeigt, die in der Tabelle vorhanden sind.
- In der WebAbfrage gibt es den User angeblich nicht
- in der Abfrage durch den FreeRadius bekommt der Radius vom SQL die Antwort, User existiert nicht.
Ich bin im Moment so ziemlich alles durchgegangen, was sich vom FreeRadius einstellen läßt. Meine Vermutung im Moment liegt im Moment, dass der MySQL die Anfrag nicht ganz versteht oder Interprettiert., weil eine # im Usernamen vorhanden ist.
Rechtschreibfehler sind ldiglich Spezialeffekte meiner Tastatur !!
Ich fasse mich kurz, und hoffe, dass ich alle Info's rüber bringen kann.
Aufbau:
Ich habe ein Debian (amd64) aufgebaut, MySQL, Freeradius und alle Voraussetzungen dafür erfüllt. Grundlegend ist alles am arbeiten. Die Usernamen etc werden aus der DB gelesen, zurückgegeben etc.
Zur überprüfung habe ich Namen in der DB angelegt mit @ _ - . DIese funktionieren alle. Nun habe ich vor 6 Jahren nicht daran gedacht, dass ich heute meine Authentifizierung und Accounting über einen Freeradius laufen lassen muss. Ich hatte damals in die Benutzernamen angelegt,
die folgenden Aufbau haben: 12345-1234567-AB#001@domain.com. Wenn ich die User ohne # anlege funktioniert das ohne Probleme.
Mein Stand bis heute ist:
- MySQL läuft, Freeradius läuft, eine WebOberfläche zur Abfrage läuft auch.
- Usernamen mit Sonderzeichen auser # werden akzeptiert.
- Abfrage im PHPMyAdmin wenn ich nach #'ten suche ist positiv und es werden alle User angezeigt, die in der Tabelle vorhanden sind.
- In der WebAbfrage gibt es den User angeblich nicht
- in der Abfrage durch den FreeRadius bekommt der Radius vom SQL die Antwort, User existiert nicht.
Ich bin im Moment so ziemlich alles durchgegangen, was sich vom FreeRadius einstellen läßt. Meine Vermutung im Moment liegt im Moment, dass der MySQL die Anfrag nicht ganz versteht oder Interprettiert., weil eine # im Usernamen vorhanden ist.
Rechtschreibfehler sind ldiglich Spezialeffekte meiner Tastatur !!
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 172126
Url: https://administrator.de/contentid/172126
Ausgedruckt am: 17.11.2024 um 18:11 Uhr
18 Kommentare
Neuester Kommentar
Hallo,
ich habe im Wiki von Siemens eine Hinweis gefunden welche Sonderzeichen erlaubt sind:
- Logon-Namen dürfen folgende Zeichen nicht enthalten: " / \ [ ] : ; | = , + * ? < >
- Logon-Namen können alle anderen Sonderzeichen einschließlich Leerzeichen, Punkte, Binde- und Unterstriche enthalten. Es ist aber nicht sinnvoll, Leerzeichen in einem Konto-Namen zu verwenden.
Welche Version von Freeradius wird mit deiner Debian installiert? Welche Debianversion hast du installiert?
Grüße,
Dani
ich habe im Wiki von Siemens eine Hinweis gefunden welche Sonderzeichen erlaubt sind:
- Logon-Namen dürfen folgende Zeichen nicht enthalten: " / \ [ ] : ; | = , + * ? < >
- Logon-Namen können alle anderen Sonderzeichen einschließlich Leerzeichen, Punkte, Binde- und Unterstriche enthalten. Es ist aber nicht sinnvoll, Leerzeichen in einem Konto-Namen zu verwenden.
Welche Version von Freeradius wird mit deiner Debian installiert? Welche Debianversion hast du installiert?
Grüße,
Dani
Siehst du im Raidusdebugmodus das SQL-Statement für die Benuterabfrage?
Mach mal direkt auf der DB eine SELECT Abfrage auf einen Usernamen? Sollte das Klappen, dann liegt es auch nicht am "Escapen".
Mach mal direkt auf der DB eine SELECT Abfrage auf einen Usernamen? Sollte das Klappen, dann liegt es auch nicht am "Escapen".
In der WebAbfrage gibt es den User angeblich nicht
Obwohl, das WI kommt von Hersteller? Kommst du dort an den (PHP-)Quellcode ran bzw. such mal das SQL-Statment heraus.
Du hast mit dem Benutzernamen "admin#sven über die lokale Maschine die Abfrage gestartet.
Und im Output steht drin "[sql] User admin#sven not found".
Geh mal bitte hin und setze folgende Abfrage über phpMyAdmin auf die DB ab:
Bitte poste den Output...
Und im Output steht drin "[sql] User admin#sven not found".
Geh mal bitte hin und setze folgende Abfrage über phpMyAdmin auf die DB ab:
SELECT id, username, attribute, value, op FROM radcheck WHERE username = *admin#sven' ORDER BY id -> SELECT id, username, attribute, value, op FROM radcheck WHERE username = 'admin=23sven' ORDER BY id;