Super, Yannik!
Danke für's Mitdenken -- dann kommt hier Version 1.1 (stable :))

----------------------------------------------------------------------------

#!/bin/bash

# Dieses Script listet zunächst alle WLAN-User auf,
# die momentan verbunden sind.
# Anschließend werden alle verbundenen User disconnected.
# Der Aufruf geschieht über einen Cronjob in den großen Pausen und
# am Ende des Tages.

# Usernamen die nur als "MAC-Adresse" auftauchen duerfen ohne
# Auth ins WLAN.
# Diese werden beim disconnect unberücksichtigt gelassen.

# Vorbereitungen:
# /etc/chilli/config um diesen Eintrag erweitern:
# HS_COAPORT=3779
# Anschließend /etc/init.d/chilli restart

#Funktion fragt ab, ob "User" eine "MAC-Adresse" ist:
function is_mac {
  mac="$1"
  echo "$mac" | grep -q -E "^([[:xdigit:]]{2}[:-]){5}[[:xdigit:]]{2}$"
  return $?
}

# Radiussecret wird automatisch ausgelesen:
secret=$(cat /etc/chilli/hs.conf |grep ^radiussecret | cut -d "\"" -f 2)

echo
echo
echo "Die folgenden User sind angemeldet:"
echo "==================================="
users=$(chilli_query list | grep pass | awk '{print $6}' )
echo "$users"

echo
echo "Die User werden abgemeldet:"
echo "==========================="

for user in $users; do
 if is_mac "$user";
  then
   echo "$user ist eine MAC und bleibt angemeldet!"
  else
   echo "User-Name=$user" | radclient -x 127.0.0.1:3779 disconnect
"$secret" | grep User-Name
 fi
done

echo
echo
echo "Nach 'disconnect' sind noch angemeldet:"
echo "======================================="
chilli_query list | grep pass | awk '{print $6}'

echo
echo

exit 0
#EOF
-------------------------------------------------------------------------------

Michael

_______________________________________________
linuxmuster-user mailing list
[email protected]
https://mail.lehrerpost.de/mailman/listinfo/linuxmuster-user

Antwort per Email an