Userpasswörter laufen ab!

Hallo,

beim Einrichten des SSO in der Firewall kam bei einem Test die Meldung, dass mein Passwort in 36 Tagen abläuft. Das wäre der Supergau, wenn das passiert, wenn ich die Lösung ausgerollt habe.

Wie kann ich dieses Ablaufen der Userpasswörter abstellen…ich habe nichts passendes in sophomorix gefunden…

Gruß

Dominik

Die User werden mit einem Ablaufdatum in ferner Zukunft angelegt. Trotzdem laufen sie ab.

Das wird noch gefixt werden müssen.

Wie hast du das angezeigt bekommen?

Kannst du mal hier schauen: https://github.com/linuxmuster/sophomorix4/issues/71

Und den Zustand deiner Installation posten.

LG, Rüdiger

Hallo Rüdiger,

Ich habe SSO in der Firewall eingeschaltet und mit meinem Account geprüft, ob das klappt. Dabei kam eben in der Firewall die Meldung, dass mein Passwort abläuft.

root@server:/# samba-tool domain passwordsettings show
Password informations for domain 'DC=linuxmuster,...' (ENTFERNT)

Password complexity: on
Store plaintext passwords: off
Password history length: 24
Minimum password length: 7
Minimum password age (days): 1
Maximum password age (days): 42
Account lockout duration (mins): 30
Account lockout threshold (attempts): 0
Reset account lockout after (mins): 30

Hier die Infos zum betroffenen user:

root@server:/# sophomorix-user -u foer -i
---Schnipp---
sophomorixRole: teacher                                 
sophomorixStatus: U                                       
sophomorixCreationDate: 20190716125122.0Z                       
sophomorixTolerationDate: 19700101000000.0Z                       
sophomorixDeactivationDate: 19700101000000.0Z                       
userAccountControl: 512
----Schnapp----

Sind das alle Infos, die du brauchst?

Kann ich das irgendwie für alle User sofort abstellen, da 30 Tage bis zum Ablauf nicht viel sind.

Gruß

Dominik

…noch eine Nachreichung:

root@server:/# pdbedit -u foer -v
Unix username:        foer
NT username:          
Account Flags:        [U          ]
User SID:             
Primary Group SID:    S-1-5-21-29413714-3910754275-738849612-513
Full Name:            Dominik Förderer
Home Directory:       \\server\default-school\teachers\foer
HomeDir Drive:        H:
Logon Script:         
Profile Path:         
Domain:               
Account desc:         
Workstations:         
Munged dial:          
Logon time:           Mo, 22 Jul 2019 11:14:16 CEST
Logoff time:          0
Kickoff time:         Do, 14 Sep 30828 03:48:05 CET
Password last set:    Di, 16 Jul 2019 12:54:43 CEST
Password can change:  Di, 16 Jul 2019 12:54:43 CEST
Password must change: never
Last bad password   : 0
Bad password count  : 0
Logon hours         : FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF

Gruß

Dominik

Ich schau mal gegen abend, was ich sonst noch brauche.

Im moment kann man das nicht für alle user setzen.
Wir überlegen uns was innerhalb der nächsten Tage.

LG, Rüdiger

Hast du vor 6 Tagen die betroffenen user angelegt 42 - 36=6?

ja…das stimmt!

Hab recherchiert wie man sich anzeigen lassen kann in wieviel Tagen das Passwort abläuft:

Aber muss das so kompliziert sein?
Kennt einer einen Befehl dazu? smba-tool, wbinfo, net use, …

ldbsearch -H ldap://localhost -UAdministrator%cat /etc/linuxmuster/.secret/administrator-b dc=linuxmuster,dc=local cn=muellegr42 msDS-UserPasswordExpiryTimeComputed

zeigt an, wann das passwort ungültig wird: z.B. 132124258595444160

Die letzen x Ziffern schmeissen wir weg, da es nanosekunden sind: 132124258595

Teilen durch 10000000 (von nanosekungen in sekunden umrechnen)

und subtrahieren von

11644473600 (windowszeit unixzeit Versatz)

ergibt: 1567952259,544416 (das ist nun in unix epochenzeit)

Anzeigen der momentanen epoche:

date +%s

ergibt z.B. 1564242946

Also ist die differenz: 1564242946 - 1567952259,544416 = -3709313,544416

Passwort läuft in der Zukunft ab in 3709313 Sekunden, was 42,9 Tagen entspricht

Ich hab das jetzt so gescripted als

sophomorix-passwd --show-password-expiry-days user

Es scheint so, dass das Attribut accountExpires beim user gar keinen Einfluss hat darauf, wann das passwort tatsächlich abläuft.
sondern nur die Domänen-Vorgabe, die man zum nicht ablaufen folgendemaßen setzt:

samba-tool domain passwordsettings set --max-pwd-age 0

Hallo Rüdiger,

Anscheinend ist die Anfrage auf msDS-UserPasswordExpiryTimeComputed nicht einfacher, ich habe nichts besseres gefunden.

Man kann die Konten alle User mit einem Skript schnell korrigieren :

samba-tool user list

um die Liste alle User zu erhalten, und damit eine Schleife :

samba-tool user setexpiry USER --noexpiry

Alle Optionen für samba-tool kann man hier sehen : https://wiki.samba.org/index.php/Samba-tool-external

Gruß

Arnaud

Mir ging es darum, wie man es vermeidet, dass der Account abläuft (schon beim anlegen).

samba-tool zeigt alle user, nicht nur die sophomorix user.

ich werde das demnächst so umsetzen.

Wäre gut, wenn einer an einem Client vorher noch testet, ob:

samba-tool user setexpiry USER --noexpiry

@schajor und andere: Bitte am Windows client testen

hallo zusammen,

was ist denn ein “Windowsclient”? :wink:
Sorry kann ich leider nicht testen.

An der Kommandozeile am Server erhalte ich mit
sophomorix-passwd --show-password-expiry-days user

eine große negative Zahl ca -152000 days … (bei 3 verschiedenen Usern)

Grüße Rainer

Sorry,
ich meinte den Linuxclient.

soviel negative days können eigentlich nicht sein.

Ich mach noch einen fix und ein neues Paket

LG, Rüdiger

sophomorix-passwd --show-password-expiry-days $user

hat einen Bug, sorry.

Du kannst ihn für dein system aber leicht beheben:

Mit einem Editor /usr/sbin/sophomorix-passwd öffnen.

Dort etwa bei zeile 500 findest du:

if ($show_password_expiry_days ne ""){

Danach wird der suchbefehl für den user angegeben:

my $ldb_command="ldbsearch -H ldap://localhost -UAdministrator%`cat /etc/linuxmuster/.secret/administrator` ".
                    "-b dc=linuxmuster,dc=local sAMAccountname=".
                    $user.
                    " msDS-UserPasswordExpiryTimeComputed".
                    " | grep --color=never msDS-UserPasswordExpiryTimeComputed";

darin must du dc=linuxmuster,dc=local für deinen Server passend ersetzen.

Hallo @jeffbeck,

hab mir den Issue in Github angeschaut.

  • Ich habe ein migriertes System, bei mir haben scheinbar alle user
    „accountExpires: 0“, wenn ich das mit sophomoirx-user -iv -u $user anschaue,
  • sie haben aber, mit pbdedit -v -u $user angeschaut alle das Ende der Unix-Epoche eingetragen.
  • zudem funktioniert auch bei mir der Befehl `sophomorix-passwd --show-password-expiry-days $user bei keinem ausprobierten User.

soweit so gut, ich lasse den Befehl wie in github angegeben trotzdem laufen:

sophomorix-passwd --set-password-noexpiry-all-sophomorix-users
...
hasenoso:
   samba-tool user setexpiry hasenoso --noexpiry
Expiry for user 'hasenoso' disabled.
...

ok, die 1000 user sind durch: Es hat sich eigentlich nichts geändert, „accountExpires“ steht weiterhin bei allen auf „0“ und pdbedit -v meldet weiterhin, dass das passwort erst 2038 geändert werden muss. Ebenso meldet:

 sophomorix-passwd --show-password-expiry-days kuechel
Command line::
Option verbose is a modifier option
Option json is a modifier option
Hmmh. do not know what to do with option info
* forcing info mode
Option combinations successfully checked
OK: SophomorixSchemaVersion 1 matches required Version 1
#### Reading /usr/share/sophomorix/devel/sophomorix.ini                   ####
Distro-check: Ubuntu 18.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 /usr/share/sophomorix/devel/master/sophomorix.conf.master    ####
#### Reading /etc/linuxmuster/sophomorix/sophomorix.conf                  ####
#### OK: default-school share exists                                      ####
#### OK: /etc/linuxmuster/sophomorix/default-school/school.conf           ####
#### Reading /usr/share/sophomorix/devel/master/school.conf.master        ####
#### Reading /etc/linuxmuster/sophomorix/default-school/school.conf       ####
#### 0 ERRORS, 0 WARNINGS -> let's go                                     ####
#### /usr/sbin/sophomorix-passwd started ...                              ####

No result found: Does user "kuechel" exist?

p.s. ich bin nicht mal sicher, ob ich jetzt ablaufende oder eben nicht ablaufende Passwörter habe. Ich kann bloß versuchen beizutragen, warum der Befehl zum Beispiel keinen User findet, oder was der korrekte Stand der Dinge eigentlich sein sollte.

vG, Tobias

Bitte schau mal mein Post von heute weiter oben.
LG, Rüdiger

Alles klar, danke. Der workaround/fix funktioniert bei mir.