[Eisfair] Frage zu Invalidate password

Marcus Roeckrath marcus.roeckrath at gmx.de
Fr Aug 5 10:48:53 CEST 2016


Hallo Uwe,

Uwe Kunze wrote:

> mit einem kleinen Script extrahiere ich aus /etc/passwd und /ect/shadow
> alle eisfair-User aus der gruppe "user", um sie in einer .htpasswd zu
> verwenden.
> 
> Allerdings habe ich mehrere User, deren Passwort über das Benutzermenü
> auf "invalidate" (also ungültig) gesetzt wurde.
> 
> Wie kann ich diese User aus meiner .htpasswd entfernen

Besser erst garnicht einfügen.

> ... bzw. woran 
> kann ich (in /etc/shadow ?) erkennen, dass das Password ungültig ist ?

Der Password-Hash steht in der zweiten Spalte der /etc/shadow
(Spaltentrenner :)

Steht dort nichts, ! oder * ist kein gültiges Passwort vergeben; daneben
gibt es auf meinem eis User mit Pseudoeinträgen als Hash, z. B. blub bei
uucp, ...

Die Systemuser möchtest Du vielleicht auch nicht in der .htpasswd haben.

Hier ein Skriptentwurf, der User nur dann listet, wenn in der Passwortspalte
ein String von mehr als 10 Zeichen steht. Außerdem werden Systemuser
ausgefiltert:

#!/bin/sh

excludeuser="root halt eis reboot wwwrun"

while read line ; do
  name=`echo "${line}" | cut -d ":" -f 1`
  password=`echo "${line}" |cut -d ":" -f 2`
  if [ "${password}" ] && [ "${#password}" -gt 10 ] ; then
    print=true
    for ex in ${excludeuser} ; do
      if [ ${name} == ${ex} ] ; then
        print=false
        break
      fi
    done
    if $print ; then
      echo "${name}"
    fi
  fi
done < /etc/shadow

-- 
Gruss Marcus


Mehr Informationen über die Mailingliste Eisfair