hostapd: Radius based VLANs on AP with PSK
authorBernd Naumann <bernd.naumann@kr217.de>
Wed, 16 Feb 2022 22:07:09 +0000 (23:07 +0100)
committerChristian 'Ansuel' Marangi <ansuelsmth@gmail.com>
Wed, 8 Jun 2022 14:04:04 +0000 (16:04 +0200)
commit98d91e4d5ee1bdc13764b14eb6d2784dfb2cac3c
tree22f484bad2d4cf7db3d26f55a07c6931c128d1d7
parentf5a87a0a7b8d5aa83435868eb324601df6c4f4dc
hostapd: Radius based VLANs on AP with PSK

This patch allows the user to set `auth_server` and related settings on
non WPA2 Enterprise AP modes in `/etc/config/wireless`, too, so the
Radius Attributes for Dynamic VLAN Assignment can be fetched from Radius.

Without this patch, `auth_server` and other needed options are only
written to `hostapd-phy<n>.conf` when `option encryption wpa2` is set.

`hostapd` however supports "Station MAC address -based authentication" for
non WPA Enterprise Modes, too.

A classic approch is to use `accept_mac_file` which contains MAC addr
and VLAN-ID pairs. But, using `accept_mac_file` does not support
VLAN assignment for unknown stations.

This is a sample `freeradius3` config, where a known station
("7e:a6:a7:2a:93:d2") is assigned to VLAN `65` and unknown stations are
assigned to VLAN `67`.

```
"7ea6a72a93d2" Cleartext-Password := "7ea6a72a93d2"
        Tunnel-Type = "VLAN",
        Tunnel-Medium-Type = "IEEE-802",
        Tunnel-Private-Group-Id = 65

DEFAULT Cleartext-Password := "%{User-Name}"
        Tunnel-Type = "VLAN",
        Tunnel-Medium-Type = "IEEE-802",
        Tunnel-Private-Group-Id = 67
```

Other option is to configure known stations via `accept_mac_file` and
using only Radius for unknown stations.

I tested this patch only with `wpa_key_mgmt=WPA-PSK`, and assumed that
it should work with other Encryption/Access Mode, too.

Signed-off-by: Bernd Naumann <bernd.naumann@kr217.de>
package/network/services/hostapd/files/hostapd.sh