Unifi - Clients rauswerfen nach linuxmuster-wlan-reset

Hallo zusammen,

ich kann mich erinnern, dass wir mal die Problematik mit Unifi besprochen hatten, dass die Clients nachdem sie aus p_wifi rausgeflogen sind weiterhin das WLAN nutzen können, bis sie sich neu anmelden müssen.
Heute bin ich auf https://github.com/finish06/pyunifi gestoßen, womit ich nach kurzem Ausprobieren ein Python-Skript schreiben konnte, mit dem man Clients nach verwendetem Benutzernamen disconnecten konnte.
Probeweise läuft nun dieses Skript nach dem linuxmuster-wlan-reset, damit die Schülerinnen und Schüler direkt nach dem Auslaufen der WLAN-Berechtigung dieses auch nicht mehr nutzen können.

Viele Grüße
Dominik

Hallo Dominik,

stellst Du uns das Skript zur Verfügung?

Viele Grüße

Alois

Hallo Dominik,

das klingt spannend! Ich würde dein Skript auch gerne testen.

VG Daniel

Hallo zusammen,

das Skript sieht folgendermaßen aus:

from pyunifi.controller import Controller

ip = '10.16.1.1'
username = 'administrator'
password = 'SecretPassword'

# ssl_verify = False, falls selbsterstelltes Zertifikat
c = Controller(ip, username, password, ssl_verify = False)

def disconnect_pupils():
    clients = c.get_clients()
    for client in clients:
    	# Wenn der Anmeldename länger als 5 Buchstaben ist, ist es ein SoS
            if len(client['1x_identity']) > 5:
                    c.disconnect_client(client['mac'])

disconnect_pupils()

Bei uns sind Schülerlogins länger als 5 Buchstaben, so dass wir dadurch filtern können. Es wäre aber auch denkbar, dass man die Anmeldeidentität mit einem übergebenen Benutzernamen vergleicht, um nur diesen Benutzer rauszuwerfen.

Viele Grüße
Dominik