40 lines
1.6 KiB
Plaintext
40 lines
1.6 KiB
Plaintext
= Mosquitto Authentifizierung
|
|
|
|
Konfigurieren Sie Mosquitto, so dass nur authentifizierte Clients zugreifen dürfen.
|
|
|
|
|
|
listener 1883
|
|
|
|
allow_anonymous false
|
|
password_file /mosquitto/config/users.txt
|
|
|
|
|
|
|
|
|
|
Erzeugen Sie eine Passwortdatei mit mehreren Nutzern.
|
|
Sie können `mosquitto_passwd` benutzen:
|
|
|
|
$ docker run --rm -it --net host eclipse-mosquitto sh
|
|
# mosquitto_passwd -b -c users.txt thomas geheim
|
|
# mosquitto_passwd -b users.txt admin secret
|
|
# cat users.txt
|
|
|
|
|
|
Für CyberChef befindet sich ein Rezept im Unterordner `CyberChef` oder
|
|
der folgende Link kann genutzt werden:
|
|
"https://gchq.github.io/CyberChef/#recipe=Fork('%5C%5Cn','%5C%5Cn',false)Register('%5E(%5B%5E:%5D%2B)',true,false,false)Find_/_Replace(%7B'option':'Regex','string':'%5E%5B%5E:%5D%2B:'%7D,'',false,false,false,false)Register('(.*)',true,false,false)Pseudo-Random_Number_Generator(12,'Hex')Register('(.*)',true,false,false)From_Hex('Auto')To_Base64('A-Za-z0-9%2B/%3D')Register('(%5B%5C%5Cs%5C%5CS%5D*)',true,false,false)Find_/_Replace(%7B'option':'Regex','string':'.*'%7D,'$R1',false,false,false,false)Derive_PBKDF2_key(%7B'option':'Latin1','string':'$R1'%7D,512,101,'SHA512',%7B'option':'Hex','string':'$R2'%7D)From_Hex('Auto')To_Base64('A-Za-z0-9%2B/%3D')Find_/_Replace(%7B'option':'Regex','string':'.*'%7D,'$R0:$$7$$101$$$R3$$$%26',false,false,false,false)"
|
|
|
|
Das Inputformat ist dabei: "user:klartextpasswort"
|
|
|
|
|
|
|
|
Testen Sie, ob der Zugriff funktioniert
|
|
|
|
|
|
$ docker run --rm -it --init --net host -v $PWD/config:/mosquitto/config eclipse-mosquitto
|
|
|
|
$ docker run --rm -it --init --net host eclipse-mosquitto \
|
|
mosquitto_sub -V 5 --topic "demotopic" \
|
|
--username admin -P secret -W 2 --debug
|
|
|