mirror of
https://github.com/openwrt/openwrt.git
synced 2024-12-20 14:13:16 +00:00
57fbbf15cd
This can be used to run a standalone EAP server that can be used from other APs. It uses json as user database format and can automatically handle reload. Signed-off-by: Felix Fietkau <nbd@nbd.name>
43 lines
846 B
Bash
43 lines
846 B
Bash
#!/bin/sh /etc/rc.common
|
|
|
|
START=30
|
|
|
|
USE_PROCD=1
|
|
NAME=radius
|
|
|
|
radius_start() {
|
|
local cfg="$1"
|
|
|
|
config_get_bool disabled "$cfg" disabled 0
|
|
|
|
[ "$disabled" -gt 0 ] && return
|
|
|
|
config_get ca "$cfg" ca_cert
|
|
config_get key "$cfg" key
|
|
config_get cert "$cfg" cert
|
|
config_get users "$cfg" users
|
|
config_get clients "$cfg" clients
|
|
config_get auth_port "$cfg" auth_port 1812
|
|
config_get acct_port "$cfg" acct_port 1813
|
|
config_get identity "$cfg" identity "$(cat /proc/sys/kernel/hostname)"
|
|
|
|
procd_open_instance $cfg
|
|
procd_set_param command /usr/sbin/hostapd-radius \
|
|
-C "$ca" \
|
|
-c "$cert" -k "$key" \
|
|
-s "$clients" -u "$users" \
|
|
-p "$auth_port" -P "$acct_port" \
|
|
-i "$identity"
|
|
procd_close_instance
|
|
}
|
|
|
|
start_service() {
|
|
config_load radius
|
|
config_foreach radius_start radius
|
|
}
|
|
|
|
service_triggers()
|
|
{
|
|
procd_add_reload_trigger "radius"
|
|
}
|