
Ich hänge mit Freeradius fest. Ich muss ein Skript mit dem Radius-Exec-Modul ausführen. Im Debug-Modus (Radius -X) funktioniert alles einwandfrei, aber wenn ich es als Dienst im Hintergrund ausführe, sieht es so aus, als würde der Exec-Dienst nicht mehr funktionieren, es wird nichts ausgeführt, es gibt ein Berechtigungsproblem oder einen Fehler. Hier finden Sie weitere Informationen zur Konfiguration im Exec-Modul. Nichts Besonderes inraddb/radiusd.conf
modules {
$INCLUDE ${confdir}/modules/
...
$INCLUDE sites-enabled/
raddb/modul/exec
exec exe_module {
wait = yes
program = "/bin/bash /var/testscript/test.sh %{User-Name} %{Framed-IP-Address} %{Acct-Status-Type}"
input_pairs = request
output_pairs = reply
shell_escape = yes
output = file
}
exec exe_module_stop {
wait = yes
program = "/bin/sh /var/testscript/test_delete.sh %{User-Name} %{Framed-IP-Address} %{Acct-Status-Type}"
input_pairs = request
output_pairs = reply
}
exec {
wait = yes
input_pairs = request
shell_escape = yes
output = none
}
raddb/sites-available/Standard
accounting {
detail
unix
radutmp
main_pool
sql
sql_log
if (Acct-Status-Type == Start) {
exe_module
}
if (Acct-Status-Type == Stop) {
exe_module_stop
}
attr_filter.accounting_response
}
Wieder funktioniert alles im Debug, wenn ich es als Benutzer ausführe. Sobald ich es als Dienst starte, passiert nichts. Bitte helfen Sie! Schmerz 10 von 10
Antwort1
Infreeradius/sites-enabled/default, im Abschnitt authorize{},
autorisieren { .. update control { Auth-Type := /etc/freeradius/radiusAuthentication.py %{Connect-Info} %{Filter-Id}
} }
Versuchen Sie dies, um die externen Skripte im Daemon-Modus auszuführen.