Bei lmn73-Setup: "There is no Admin Password"

Hallo Zusammen,

ich habe gerade eine komplette Neuinstallation in der Version 7.3 durchgeführt und bin auch auf diesen Fehler gestoßen There is no Admin Passwort beim setup über die WebUI. Ich habe erneut das linuxmuster-setup über die Konsole durchgeführt dann kam beim Erstellen der secrets für LINBO eine Abfrage enter admin password. Ich habe erneut das Passwort eingegeben und das Setup lief durch.

Allerdings konnte ich mich anschließend nicht mehr am Server oder an der Firewall anmelden. Ursache war mein gesetztes Passwort, welches eine # enthielt. Evtl. wirkt die # bei der Abarbeitung des Skripts als Kommentar? In der Doku war # allerdings bei den erlaubten Zeichen aufgeführt.

Passwortbeschränkungen: Valid characters are: a-z A-Z 0-9 ?!§±@#%&*( ){ }

Vielleicht sollte das in der Doku entsprechend geändert werden oder als Hinweis vermerkt werden.

Viele Grüße
Luca

1 „Gefällt mir“

Hallo Luca,

Danke für den Hinweis, das ist einen sehr guten Punkt.
Ich könnte selber es nicht testen, aber ich kann mich vorstellen, dass es Probleme verursacht.

Momentan habe ich es in die Webui (7.3) verboten:

@thomas: was meinst du dazu ? Sollte isValidPassword in lib/functions.py auch damit angepasst werden ?

Gruß

Arnaud

Hi,

wäre es nicht die schlauere Lösung die fehlerhafte Stelle rauszusuchen, wo ein Escaping fehlt?

VG
Buster

Hi Buster,

Ja, natürlich, mein „Fix“ in die Webui ist nur einen temporär quick fix.

Die (evtl) betroffene Zeilen sind:

$ ack adminpw /usr/lib/linuxmuster/setup.d 
/usr/lib/linuxmuster/setup.d/k_samba-users.py
26:    adminpw = setup.get('setup', 'adminpw')
76:            + adminpw + '"', logfile)
124:            + schoolname + ' --password "' + adminpw + '"', logfile)
154:    for item in [adminpw, binduserpw, dnspw]:

/usr/lib/linuxmuster/setup.d/i_linbo.py
35:# test adminpw
37:    adminpw = setup.get('setup', 'adminpw')
39:    adminpw = ''
40:if not isValidPassword(adminpw):
42:    adminpw = enterPassword('admin', True)
43:    if not isValidPassword(adminpw):
49:        rc = modIni(environment.SETUPINI, 'setup', 'adminpw', adminpw)
60:filedata = setupComment() + '\n' + 'linbo:' + adminpw + '\n'

/usr/lib/linuxmuster/setup.d/j_samba-provisioning.py
57:    adadminpw = randomPassword(16)
59:        secret.write(adadminpw)
77:    subProc('samba-tool domain provision --use-rfc2307 --server-role=dc --domain=' + sambadomain + ' --realm=' + realm + ' --adminpass=' + adadminpw, logfile)

/usr/lib/linuxmuster/setup.d/z_final.py
27:    adminpw = getSetupValue('adminpw')
95:    subProc(environment.FWSHAREDIR + "/create-keytab.py -v -a '" + adminpw + "'", logfile, True)
109:    setup.set('setup', 'adminpw', '')

/usr/lib/linuxmuster/setup.d/d_templates.py
32:    adminpw = setup.get('setup', 'adminpw')
120:            + serverip + ' -a "' + adminpw + '"', logfile)
121:    # remove adminpw from logfile
122:    replaceInFile(logfile, adminpw, '******')

/usr/lib/linuxmuster/setup.d/a_ini.py
183:    setup.set('setup', 'adminpw', '')

/usr/lib/linuxmuster/setup.d/c_general-dialog.py
117:adminpw = ''
118:adminpw_repeated = ''
120:    rc, adminpw = dialog.passwordbox(
124:    if isValidPassword(adminpw):
126:            rc, adminpw_repeated = dialog.passwordbox(
130:            if isValidPassword(adminpw_repeated):
132:    if adminpw == adminpw_repeated:
135:# print('Administrator password: ' + adminpw)
136:setup.set('setup', 'adminpw', adminpw)
155:    subProc('echo "root:' + adminpw + '" | chpasswd', logfile)
157:        subProc('echo "linuxmuster:' + adminpw + '" | chpasswd', logfile)

/usr/lib/linuxmuster/setup.d/m_firewall.py
36:        adminpw = getSetupValue('adminpw')
60:        productionpw = adminpw

Eigentlich, sollte ein shlex.quote(adminpw) bei solchen problematischen Stellen reichen.

Gruß

Arnaud

Hallo Arnaud,

wollte das gerade testen, das Setup wirft mir allerdings beim Anlegen des global-admin mit

sophomorix-admin --create-global-admin global-admin --password "Muster!"

reihenweise solche Fehler aus:

------------------------------------------------------------
5) Line 12:  SMB::@@SCHOOL@@::root::root::0755::school.ntacl::ntaclonly:::
* NOT executed (ntaclonly): smbclient command
ERROR: smbcacls-NTACL on //server/default-school /
     COMMAND:
        /usr/bin/smbcacls -U administrator%'******' //server/default-school / 
      --set "REVISION:1,OWNER:LINUXMUSTER\Domain Admins,GROUP:S-1-22-2-0,ACL:LINUXMUSTER\admins:ALLOWED/OI|CI|IO/FULL,ACL:LINUXMUSTER\teachers:ALLOWED/0x0/READ,ACL:LINUXMUSTER\students:ALLOWED/0x0/READ,ACL:LINUXMUSTER\s_default-school:ALLOWED/0x0/READ,ACL:LINUXMUSTER\Domain Admins:ALLOWED/OI|CI|I/FULL"
     RETURN VALUE: 256
     ERROR MESSAGE:

DONE with 5) Line 12:  SMB::@@SCHOOL@@::root::root::0755::school.ntacl::ntaclonly:: ---
------------------------------------------------------------
6) Line 14:  SMB::@@SCHOOL@@/$directory_management/::root::root::0755::school-management.ntacl:::
ERROR: smb command
     COMMAND:
        /usr/bin/smbclient -U administrator%'******' //server/default-school -c 'mkdir "management"'
     RETURN VALUE: 256
     ERROR MESSAGE:
        session setup failed: NT_STATUS_INVALID_SID
ERROR: smbcacls-NTACL on //server/default-school management
     COMMAND:
        /usr/bin/smbcacls -U administrator%'******' //server/default-school management 
      --set "REVISION:1,OWNER:BUILTIN\Administrators,GROUP:LINUXMUSTER\Domain Users,ACL:LINUXMUSTER\admins:ALLOWED/0x0/READ,ACL:LINUXMUSTER\Domain Admins:ALLOWED/OI|CI/FULL"
     RETURN VALUE: 256
     ERROR MESSAGE:

DONE with 6) Line 14:  SMB::@@SCHOOL@@/$directory_management/::root::root::0755::school-management.ntacl:: ---
------------------------------------------------------------

Mit der Folge, dass unter /srv/samba/schools/default-school keine Verzeichnisse angelegt werden. User global-admin existiert, kann sich aber nicht an der Webui anmelden (ldap Fehler).

Vollständiges Logfile hier.
Paketstand:

linuxmuster-base7                    7.3.23-0 
linuxmuster-cli7                     7.3.9
linuxmuster-common                   7.3.1-0
linuxmuster-linbo-gui7               7.3.1
linuxmuster-linbo7                   4.3.18-0
linuxmuster-prepare                  7.3.0-0
linuxmuster-tools7                   7.3.15
linuxmuster-webui7                   7.3.16
sophomorix-samba                     7.3.10

Wurde da kürzlich was geändert?

VG, Thomas

Hi Thomas,

Außer einen Fix beim chown gab es in sophomorix-admin keine Änderung.
Die Meldung sieht so aus, als ob der User administrator ein falsches SambaSID hat. Wie war dieser User erzeugt ?

Gruß

Arnaud

Hallo Arnaud,

der Administratoraccount wird ja beim Provisoning erzeugt:

samba-tool domain provision --use-rfc2307 --server-role=dc --domain=LINUXMUSTER --realm=LINUXMUSTER.LAN --adminpass=******

Wird auch ohne Fehlermeldung angelegt:

❯ samba-tool user show Administrator
dn: CN=Administrator,CN=Users,DC=linuxmuster,DC=lan
objectClass: top
objectClass: person
objectClass: organizationalPerson
objectClass: user
cn: Administrator
description: Built-in account for administering the computer/domain
instanceType: 4
whenCreated: 20250729074611.0Z
uSNCreated: 3889
name: Administrator
objectGUID: 0c062e63-5e2c-4736-a4d2-20b5c60673bf
badPwdCount: 0
codePage: 0
countryCode: 0
badPasswordTime: 0
lastLogoff: 0
pwdLastSet: 133982487714527010
primaryGroupID: 513
objectSid: S-1-5-21-3810293066-3674141817-1863060730-500
adminCount: 1
sAMAccountName: Administrator
sAMAccountType: 805306368
objectCategory: CN=Person,CN=Schema,CN=Configuration,DC=linuxmuster,DC=lan
isCriticalSystemObject: TRUE
memberOf: CN=Domain Admins,CN=Users,DC=linuxmuster,DC=lan
memberOf: CN=Schema Admins,CN=Users,DC=linuxmuster,DC=lan
memberOf: CN=Enterprise Admins,CN=Users,DC=linuxmuster,DC=lan
memberOf: CN=Group Policy Creator Owners,CN=Users,DC=linuxmuster,DC=lan
memberOf: CN=Administrators,CN=Builtin,DC=linuxmuster,DC=lan
lastLogonTimestamp: 133982487976803330
userAccountControl: 66048
accountExpires: 0
whenChanged: 20250729074756.0Z
uSNChanged: 4531
lastLogon: 133982489845532140
logonCount: 502
distinguishedName: CN=Administrator,CN=Users,DC=linuxmuster,DC=lan

s. samba-provisioning.log

Alle SMB-Aktionen des Administrator-Accounts scheitern mit session setup failed: NT_STATUS_INVALID_SID
Ich weiß gar nicht, wie ich das debuggen soll. Das Provisioning läuft ja scheints fehlerfrei durch.

VG, Thomas

Hallo Thomas,

Ich schaffe es nicht mit einer neuen Installation zu reproduzieren, und finde auch keine richtige Erklärung im Netz.

Was ist das Output von:

ldbsearch -H /var/lib/samba/private/sam.ldb DC=linuxmuster | grep objectSid

?

Eigentlich sollte es bei dir:

objectSid: S-1-5-21-3810293066-3674141817-1863060730

sein.

Gruß

Arnaud

Ich komme da auch nicht dahinter. Ich setze jetzt mal die Testumgebung neu auf.

VG, Thomas

Hallo Arnaud!

Das wars. Das qcow2-Image der Testmaschine war wohl mit vielen Snapshots etwas überstrapaziert. Wie auch immer, Grund für den #-Fehler im Adminpasswort war, dass in der setup.ini Inline-Kommentare mit ‚#‘ erlaubt waren (sic!).

VG, Thomas

1 „Gefällt mir“