Authentication failed WEBui server

Hallo, es geht nicht um den Promox, sondern um die VM Server.
Das Admin-NB ist der PC (Notebook), mit der Adresse 10.0.0.10, mit der man sich per Webui am Server anmelden können sollte.
Das klappt mit opnsense (10.0.0.254) aber nicht mit 10.0.0.1.
Wie oben beschreiben Authentication failed.
MFG JH

Hallo,

ich habe jetzt die Installation von Linuxmuster-setup via Schulkonsole durchgeführt, weil es ja bei mir nicht über einen Admin-PC funktionierte, wg. authentication failed, wie oben beschrieben.
Nach der Installation kann ich über den Admin-PC (10.0.0.10) mit https://10.0.0.1 mich anmelden und die weitere Konfiguration durchführen.

Was mir aber auffällt. Es gibt ein Problem zwischen WEBui und xterm.js
Sobald ich mich über die Webui auf dem Admin-PC anmelde, funktioniert das Terminal xterm.js nicht mehr. D.h. selbst wenn ich dort (Konsole) angemeldet bin, werde ich sozusagen rausgeschmissen.
Kann mich dort nicht mehr anmelden.
Und, wenn ich mich auf der WEBui abmelde, kann ich mich nicht mehr dort anmelden, wg. Authentication failed wie ganz am Anfang beschrieben.

Reboot des Servers löst das Problem. Und ich melde mich auf dem xterm.js-Terminal natürlich nicht mehr an. So kann ich mich auf der WEBui an- und abmelden, ohne Störung.

Das Terminal noVNC hat keinen Einfluss auf die Webui, stört sie also nicht.

Offensichtlich gibt es ein Problem zwischen WEBui und xterm.js.
Ist das bekannt, habe ich was überlesen, oder mache ich was falsch.

MFG JH

Hallo,

Wenn ich mich nicht irre, ist es entweder Konsole oder Serial, aber nicht beides gleichzeitig.

Gruß

Arnaud

Hi, sry dass ich das Thema hier nochmal aufgreife, aber da es schon existiert dachte ich „Lieber hier als wieder ein neuer Thread zu eröffnen“.

Nun bei der Installation hatte ich das gleich Problem mit der WEB-GUI deshalb ist die Installation weiter mit Konsole erfolgt. Leider habe ich nun das Problem das bestimmte Anfragen auf dem Server auf eine Authentifizierungfehler hinaus laufen. Der User ist in der WEB-GUI zwar angemeldet, aber „Meine Dateien“ und unter Kurs werden Authentifizierungserrors gespuckt.

Habe die Schritte aus der Anleitung nochmal überprüft und die locale systemctl nochmal manuel gesetzt, doch ohne erfolg.

Fehler beim Aufruf von „Meine Dateien“
Bildschirmfoto vom 2024-07-15 09-20-11

Fehler beim Aufrufe unter „Kurs“

Errorzeile vom Aufruf unter „Kurs“

Traceback (most recent call last):
  File "/usr/local/lib/python3.10/dist-packages/smbprotocol/session.py", line 278, in connect
    out_token = context.step(in_token)
  File "/usr/local/lib/python3.10/dist-packages/spnego/_negotiate.py", line 124, in step
    mech_token_in, mech_list_mic, is_spnego = self._step_spnego_input(in_token=in_token)
  File "/usr/local/lib/python3.10/dist-packages/spnego/_negotiate.py", line 171, in _step_spnego_input
    mech_list = self._rebuild_context_list(mech_types=in_token.mech_types)
  File "/usr/local/lib/python3.10/dist-packages/spnego/_negotiate.py", line 416, in _rebuild_context_list
    raise BadMechanismError(context_msg="Unable to negotiate common mechanism", base_error=last_err)
spnego.exceptions.BadMechanismError: SpnegoError (1): SpnegoError (16): Operation not supported or available, Context: Retrieving NTLM store without NTLM_USER_FILE set to a filepath, Context: Unable to negotiate common mechanism

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/local/lib/python3.10/dist-packages/aj/api/endpoint.py", line 77, in wrapper
    result = fx(self, context, *args, **kwargs)
  File "/usr/lib/linuxmuster-webui/plugins/lmn_smbclient/views/lmnsmbclient.py", line 652, in handle_api_create_working_dir
    if not smbclient.path.isdir(path):
  File "/usr/local/lib/python3.10/dist-packages/smbclient/path.py", line 110, in isdir
    return _stat_ismode(path, py_stat.S_ISDIR, True, **kwargs)
  File "/usr/local/lib/python3.10/dist-packages/smbclient/path.py", line 154, in _stat_ismode
    return check(stat(path, follow_symlinks=follow, **kwargs).st_mode)
  File "/usr/local/lib/python3.10/dist-packages/smbclient/_os.py", line 558, in stat
    raw = SMBRawIO(path, mode='r', share_access='rwd', desired_access=FilePipePrinterAccessMask.FILE_READ_ATTRIBUTES,
  File "/usr/local/lib/python3.10/dist-packages/smbclient/_io.py", line 377, in __init__
    tree, fd_path = get_smb_tree(path, **kwargs)
  File "/usr/local/lib/python3.10/dist-packages/smbclient/_pool.py", line 310, in get_smb_tree
    session = register_session(server, username=username, password=password, port=port, encrypt=encrypt,
  File "/usr/local/lib/python3.10/dist-packages/smbclient/_pool.py", line 383, in register_session
    session.connect()
  File "/usr/local/lib/python3.10/dist-packages/smbprotocol/session.py", line 280, in connect
    raise SMBAuthenticationError("Failed to authenticate with server: %s" % str(err.message))
smbprotocol.exceptions.SMBAuthenticationError: Failed to authenticate with server: SpnegoError (1): SpnegoError (16): Operation not supported or available, Context: Retrieving NTLM store without NTLM_USER_FILE set to a filepath, Context: Unable to negotiate common mechanism

Es sieht alles nach einen Problem mit dem Eingabeformat für das Python-Packet.

Hallo,

bitte mal systemzeit auf server und Client vergleichen.
Das ist einfach und schnell zu machen: nur damit ein Problem an der Stelle schon mal ausgeschlossen ist.

Auf der serverconsole einfach
date
eingeben: das spuckt die Systemzeit aus.

LG
Holger

Zeit passt sowohl auf dem Client als auch auf dem Server.

Der Client wo die Loggins in der WEB-GUI getestet werden ist aber nicht in der Domäne. Sollte aber an sich nicht das Problem sein. Der Client ist aber per SSH im Terminal verbunden, da aber verschiedene User das Problem haben denke ich nicht, dass es hier das Problem ist.

Ich teste noch ein paar Situationen, was aber jetzt schon auffällt.
Die User bekommen auch die share Netzlaufwerke nicht angebunden wenn man sie am Domäne-Client einloggt, auch wenn sie in den richtigen Klassen, Projekten und Gruppen sind.
Kann es den daran liegen, dass in OPNSense in der „noProxy“-Regel das komplette „__lan_network“ hinzugefügt wurde?

Hier dachte ich, dass die Regel dafür da ist um über LMN-GUI die Freigaben für bestimmte Netzwerkfunktonen in der den Räumen verwalten zu können. Ist es den so, dass die Funktionen dann nicht funktionieren?

Hallo,

Der Client wo die Loggins in der WEB-GUI getestet werden ist aber nicht in der Domäne.

ich nehme an, dass die WebUI sich ein eigenes Kerberos Ticket zieht beim Login in der WebUI.

Ist das ganze eine Neuinstallation?
Wurden die Default GPOs schon erstellt?

Bitte am Server mal folgenden Befehl absetzen (vorsicht: könnte sein, dass der selbst erstellte GPOs überschreibt)

sophomorix-school --gpo-create default-school

Danach am Client ab und wieder anmelden: sind die Netzlaufwerke dann da?

LG

Holger

Nun das verhält sich aktuell seltsam.

Die ist paar Monate alt, aber ja die wird noch nicht aktiv verwendet, da wir noch in der Implementierung sind.

Ich habe hier ein Beitrag gefunden wo das Problem angesprochen wird.

Das würde auch erklären warum keine Netzlaufwerke angebunden werden.
Was bis jetzt vom anderen Beitrag matcht:

  • Windows User kann sich anmelden → Netzlaufwerke werden nicht angebunden
  • Fehlermeldung in der WEB-GUI ist die gleiche → taucht allerdings nur auf beim öffnen von „Meine Dateien“ → Login im WEB funktioniert

Was anders ist oder nicht testbar:

  • keine Linux-Clients
  • die Datei mit der angebliche Fehlerlösung für die entsprechende SMB-Änderung ist gar nicht erst vorhanden
  • Fehlermeldung beim ausführen der dort angegebene Zeile mit „Python3“

Pfad wo die Datei " pam_mount.conf.xml" sein sollte/war (vielleicht bereits weg gepatcht?)

Fehlermeldung beim Ausführen von

wget https://raw.githubusercontent.com/linuxmuster/linuxmuster-webui7/lmn72/tests/test-smbclient.py
python3  test-smbclient.py
--2024-07-15 17:08:19--  https://raw.githubusercontent.com/linuxmuster/linuxmuster-webui7/lmn72/tests/test-smbclient.py
Resolving raw.githubusercontent.com (raw.githubusercontent.com)... 185.199.110.133, 185.199.108.133, 185.199.109.133, ...
Connecting to raw.githubusercontent.com (raw.githubusercontent.com)|185.199.110.133|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 2657 (2,6K) [text/plain]
Saving to: ‘test-smbclient.py’

test-smbclient.py              100%[===================================================>]   2,59K  --.-KB/s    in 0s      

2024-07-15 17:08:19 (39,4 MB/s) - ‘test-smbclient.py’ saved [2657/2657]

 This script helps to test some domains to access samba shares, and you can try your own path too. 
 Samba realm used by the Webui --> xxx1.xxx2.de 
 Samba netbios used by the Webui --> server 
 Samba domain used by the Webui --> server.xxx1.xxx2.de 
 Samba domain to try (optional, something like server.linuxmuster.lan): 
 Teacher login: xxxxxxx-x
 Password:
 Getting Kerberos ticket 
 Setting process uid=3000057 and gid=100 for Kerberos ticket 

 ################################################################################ 

 Trying with host server ...  Files located at \\server\default-school\teachers\xxxxxxx-x: 

 FAILED with host server! 
 Failed to authenticate with server: SpnegoError (1): SpnegoError (16): Operation not supported or available, Context: Retrieving NTLM store without NTLM_USER_FILE set to a filepath, Context: Unable to negotiate common mechanism 

 ################################################################################ 

 Trying with host xxx1.xxx2.de ...  Files located at \\xxx1.xxx2.de\default-school\teachers\xxxxxxx-x: 

 FAILED with host xxx1.xxx2.de! 
 Failed to authenticate with server: SpnegoError (1): SpnegoError (16): Operation not supported or available, Context: Retrieving NTLM store without NTLM_USER_FILE set to a filepath, Context: Unable to negotiate common mechanism 

 ################################################################################ 

 Trying with host server.xxx1.xxx2.de ...  Files located at \\server.xxx1.xxx2.de\default-school\teachers\xxxxxxx-x: 

 FAILED with host server.xxx1.xxx2.de! 
 Failed to authenticate with server: SpnegoError (1): SpnegoError (16): Operation not supported or available, Context: Retrieving NTLM store without NTLM_USER_FILE set to a filepath, Context: Unable to negotiate common mechanism 

 ################################################################################ 

 REPORT: 

 FAILED with host server! 
 FAILED with host xxx1.xxx2.de! 
 FAILED with host server.xxx1.xxx2.de! 

Irgendwie läuft die kerberos Authentifizierung wohl nicht. Thema war DNS, Server time, Zertifikat und die SMB-Version. SMB1 ist ja grundsätzlich stark veraltet und meistens gar nicht erst installiert. Unter Windows muss man diese explizit unter Features nach installieren, alles darüber wird automatisiert verwendet. SMB3 war drüben auch kurz Thema.

Zertifikat, gab es nur bei der Einrichtung das eine über OPNSense, was anderes würde mir gerade nicht einfallen.

Ich habe noch ein paar Ideen, werde aber erst im laufe der Woche dazu kommen.

Die GPOs neu erstellen und einspielen hat nichts gebracht.

Hallo Mille,

die haben das vers=1.0 selber in die Datei geschrieben, damit alte Linuxclients an die neue Domain können.
Das ist es also bei dir nicht.

DNS ist ein guter Gedanke: da kann auch immer was schief laufen.
Aber sag mal erst, wie den eigentlich eure Domain heißt.
Oder schick uns den Inhalt der
/etc/hosts
Datei.

Ging es den schon irgend wann mal, oder fehlen schon immer alle Netzlaufwerke (außer H, welches über einen anderen Mechanismus gemountet wird).

LG

Holger

Hallo,

Ich würde erst mal mit dig die zugewiesene IP an die drei Hosts testen, um sicher auszugehen, dass die DNS korrekt sind.

Gruß

Arnaud

Hi,

das Forum ist nicht vor 3. Geschützt deshalb haben wir uns für die anonyme Version der Domäne entschieden. Ich kann aber ein genauerer Formfaktor darstellen: server.xxx.xx-xxx.de
Alles ohne Zahlen.

# modified by lmn71-prepare at 20240102143329
# /etc/hosts
#
# thomas@linuxmuster.net
# 20160902
#

127.0.0.1       localhost
10.0.x.xxx        server.xxx.xx-xxx.de        server

# The following lines are desirable for IPv6 capable hosts
::1     localhost ip6-localhost ip6-loopback
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters

Der DNS-Server ist natürlich unser Linuxmuster-Server (Ubuntu-Server).
@baumhof interessant dass du das erwähnst mit dem Home (H) Bis auf dem Global-Admin mit dem Management Laufwerk, bekommen keine User irgendwas angebunden.

MFG Miller

Hallo Miller,

läuft den der samba überhaupt?
Bitte mal an der Serverkonsole den Befehl:

service samba-ad-dc status

absetzen.
Es sollte diese Zeile dabei sein:

 Active: active (running) since Sun

LG

Holger

Wann werden die Home Pfade und die Projekte und co. an sich erstellt? Die Ordner dazu sind nämlich unter „default-school“ immer noch leer. Würde bedeuten das die User schon nicht richtig vom System angelegt wurden, ab es da schon mit Pythen3 zu tun hat? den die Verbindung kann er ja nicht aufbauen, wenn ich den Test mache…

Hallo Miller,

ich denke, dass sie beim Anlegen der user im AD erstellt werden.

Bitte führ mal auf der Serverkonsole folgenden Befehl aus:

sophomorix-check

Poste die Ausgabe hier.

LG

Holger

Guten Morgen Holger,

Hier die Konsolen-Ausgabe:

root@server:~# sophomorix-check
Command line::
Option json is a modifier option
Hmmh. do not know what to do with option info
Option verbose is a modifier option
* forcing info mode
Option combinations successfully checked
OK: SophomorixSchemaVersion 1 matches required Version 1
#### Reading /usr/share/sophomorix/devel/sophomorix.ini                       ####
#### Distro-check: Ubuntu 22.04 is OK                                         ####
#### Reading /etc/samba/smb.conf                                              ####
#### Reading /usr/lib/linuxmuster-webui/etc/default-ui-permissions.ini        ####
#### Parsing: net conf list                                                   ####
#### Asking domain passwordsettings from samba                                ####
#### Reading /etc/linuxmuster/sophomorix/sophomorix.conf                      ####
#### Reading /etc/linuxmuster/sophomorix/default-school/school.conf           ####
#### 0 ERRORS, 0 WARNINGS -> let's go                                         ####
#### Creating lock in /var/lib/sophomorix/lock/sophomorix.lock                ####
#### /usr/sbin/sophomorix-check started ...                                   ####
#### Cleaning up last check                                                   ####
Encoding extrastudents.csv: UTF8 (ENCODING=auto,*_FORCE=FALSE, *_CHECKED=UTF8)
Encoding students.csv: UTF8 (ENCODING=UTF8,*_FORCE=FALSE, *_CHECKED=UTF8)
Encoding teachers.csv: UTF8 (ENCODING=auto,*_FORCE=FALSE, *_CHECKED=UTF8)
#### Reading injected lines ...                                               ####
#### 0 ERRORS, 0 WARNINGS -> let's go                                         ####
#### Searching AD for users ...                                               ####
#### Query AD (begin)                                                         ####
#### Query AD (end)                                                           ####

#### ### School default-school: Matching lines in files to users in AD ...    ####
#### unidMATCH: 42 CHECKED in default-school, MATCH: 39, NOMATCH: 3, NOunid: 0####
#### exactMATCH: 3 CHECKED in default-school, MATCH: 3, NOMATCH: 0            ####
#### approxMATCH: 0 CHECKED in default-school, MATCH: 0 (Edit distance: 1)    ####
#### ## School default-school ... Done!                                       ####
#### Removing lock in /var/lib/sophomorix/lock/sophomorix.lock                ####
#### /usr/sbin/sophomorix-check terminated regularly                          ####
Calling console printout
LOG       : /usr/sbin/sophomorix-check terminated regularly
##### Overview of what can be done:
     0 users can be added in sophomorix.add
     0 users can be updated in sophomorix.update
     0 users can be killed in sophomorix.kill
    42 users are not to be changed in sophomorix.nochange
     0 users with errors in sophomorix.error

Das kann aber nicht daran liegen, dass die Schueler ein Import waren, da es bei den Lehrern auch die Laufwerke nicht angebunden werden. Die wurden aber manuell angelegt.

Mir ist die Statusabfrage vom SAMBA-Service untergegangen.
Die abfrage sagt aber auch alles im grünen Bereich.

root@server:/# service samba-ad-dc status
● samba-ad-dc.service - Samba AD Daemon
     Loaded: loaded (/lib/systemd/system/samba-ad-dc.service; enabled; vendor preset: enabled)
     Active: active (running) since Wed 2024-07-31 20:29:22 CEST; 4 days ago
       Docs: man:samba(8)
             man:samba(7)
             man:smb.conf(5)
   Main PID: 1116 (samba)
     Status: "samba: ready to serve connections..."
      Tasks: 64 (limit: 28697)
     Memory: 1.0G
        CPU: 16min 50.933s
     CGroup: /system.slice/samba-ad-dc.service

MFG Mille

Hi,

@baumhof ich habe vermutlich das Problem gefunden. Bei der Einrichtung vom Server wurde anscheinend einen anderen Hostname angegeben. „lnxmuster“ anstatt den Default „server“ und dies verursacht beim kerberos das Problem.

[56479] 1722866331.863153: SRV answer: 0 100 88 "lnxmuster.xxx.xx-xxx.de."
[56479] 1722866331.863154: Resolving hostname lnxmuster.xxx.xx-xxx.de.

dort muss „server“ stehen. Kann man dies im nachhinein für kerberos ändern oder muss tatsächlich der komplette Server neu aufgesetzt werden?

MFG Mille

Hi,

Das muss nicht unbedingt server sein aber die Auflösung der Domän lnxmuster.xxx.xx-xxx.de sollte stimmen (wenn der Samba Server verwendet), und laut dieser Output:

FAILED with host server! 
FAILED with host xxx1.xxx2.de! 
FAILED with host server.xxx1.xxx2.de! 

das ist nicht der Fall.

Gruß

Arnaud

Morgen,

Danke für die Bestätigung Arnaud.
gibt es eine config Datei für SAMBA um den Host für diese Abfrage wieder anzupassen?

lnxmuster wurde bei der Installation von Ubuntu als host vergeben, bei der prepare Installation haben wir den Host auf Std. gelassen. Vermutlich kommt daher das Problem. Ansonsten würden wir den Server neu aufsetzen.

Nachtrag: Habe gefunden wo das eingetragen ist. Im SAMBA DNS in der Web-Gui wird das angepasst.

MFG Mille

Hallo Mille,

Ich weiss leider nicht, ob man das nachträglich ändern kann, weil da viel im Backend liegt. Was du aber probieren kannst, sind die DNS-Einträge von server, xxx1.xxx2.de und server.xxx1.xxx2.de anzupassen.

Erst mal kannst du die drei FQDN mit dig überprüfen, so wie dig server. Wenn da nicht die IP des Servers allein auftaucht, dann kannst du in die Webui als global-admin die Samba-DNS anpassen, und etwas wie server 10.0.0.1 (falls 10.0.0.1 die IP des Servers ist) eintragen.

Vielleicht klappt es damit.

Gruß

Arnaud

HAllo,

OK, der Server wurde beim Setup lnxmuster genannt.
Steht den auch in der /etc/linuxmuster/sophomorix/default-school/devices.csv
ganz Oben die Serverzeile mit dem Namen
server
oder mit dem Namen
lnxserver
?

Ein import schreibt ja die DNS Einträge am Server: wenn da also server steht, dann sind die für lnxserver nicht vorhanden (DNS im AD meine ich, nicht die hosts Datei).

LG

Holger