Deprecated: Constant E_STRICT is deprecated in /hp/ao/ae/lz/www/detlefhahn/common/inc/sec_headers_3.inc on line 121
216.73.216.155 login.php Deprecated: Constant E_STRICT is deprecated in /hp/ao/ae/lz/www/detlefhahn/common/inc/sec_headers_3.inc on line 121
216.73.216.155 login.php
Deprecated: Constant E_STRICT is deprecated in /hp/ao/ae/lz/www/detlefhahn/common/inc/sec_headers_3.inc on line 121
216.73.216.155 login.php
Deprecated: Constant E_STRICT is deprecated in /hp/ao/ae/lz/www/detlefhahn/common/inc/sec_headers_3.inc on line 121
216.73.216.155 login.php Deprecated: Constant E_STRICT is deprecated in /hp/ao/ae/lz/www/detlefhahn/common/inc/sec_headers_3.inc on line 121
216.73.216.155 login.php Deprecated: Constant E_STRICT is deprecated in /hp/ao/ae/lz/www/detlefhahn/common/inc/sec_headers_3.inc on line 121
216.73.216.155 login.php
Deprecated: Constant E_STRICT is deprecated in /hp/ao/ae/lz/www/detlefhahn/common/inc/sec_headers_3.inc on line 121
216.73.216.155 login.php Deprecated: Constant E_STRICT is deprecated in /hp/ao/ae/lz/www/detlefhahn/common/inc/sec_headers_3.inc on line 121
216.73.216.155 login.php Deprecated: Constant E_STRICT is deprecated in /hp/ao/ae/lz/www/detlefhahn/common/inc/sec_headers_3.inc on line 121
216.73.216.155 login.php
↻
Deprecated: Constant E_STRICT is deprecated in /hp/ao/ae/lz/www/detlefhahn/common/inc/sec_headers_3.inc on line 121
216.73.216.155 login.php Deprecated: Constant E_STRICT is deprecated in /hp/ao/ae/lz/www/detlefhahn/common/inc/sec_headers_3.inc on line 121
216.73.216.155 login.php Deprecated: Constant E_STRICT is deprecated in /hp/ao/ae/lz/www/detlefhahn/common/inc/sec_headers_3.inc on line 121
216.73.216.155 login.php Deprecated: Constant E_STRICT is deprecated in /hp/ao/ae/lz/www/detlefhahn/common/inc/sec_headers_3.inc on line 121
216.73.216.155 login.php Deprecated: Constant E_STRICT is deprecated in /hp/ao/ae/lz/www/detlefhahn/common/inc/sec_headers_3.inc on line 121
216.73.216.155 login.php Deprecated: Constant E_STRICT is deprecated in /hp/ao/ae/lz/www/detlefhahn/common/inc/sec_headers_3.inc on line 121
216.73.216.155 login.php Deprecated: Constant E_STRICT is deprecated in /hp/ao/ae/lz/www/detlefhahn/common/inc/sec_headers_3.inc on line 121
216.73.216.155 login.php Deprecated: Constant E_STRICT is deprecated in /hp/ao/ae/lz/www/detlefhahn/common/inc/sec_headers_3.inc on line 121
216.73.216.155 login.php Deprecated: Constant E_STRICT is deprecated in /hp/ao/ae/lz/www/detlefhahn/common/inc/sec_headers_3.inc on line 121
216.73.216.155 login.php Deprecated: Constant E_STRICT is deprecated in /hp/ao/ae/lz/www/detlefhahn/common/inc/sec_headers_3.inc on line 121
216.73.216.155 login.php Deprecated: Constant E_STRICT is deprecated in /hp/ao/ae/lz/www/detlefhahn/common/inc/sec_headers_3.inc on line 121
216.73.216.155 login.php Deprecated: Constant E_STRICT is deprecated in /hp/ao/ae/lz/www/detlefhahn/common/inc/sec_headers_3.inc on line 121
216.73.216.155 login.php Deprecated: Constant E_STRICT is deprecated in /hp/ao/ae/lz/www/detlefhahn/common/inc/sec_headers_3.inc on line 121
216.73.216.155 login.php Deprecated: Constant E_STRICT is deprecated in /hp/ao/ae/lz/www/detlefhahn/common/inc/sec_headers_3.inc on line 121
216.73.216.155 login.php Deprecated: Constant E_STRICT is deprecated in /hp/ao/ae/lz/www/detlefhahn/common/inc/sec_headers_3.inc on line 121
216.73.216.155 login.php Deprecated: Constant E_STRICT is deprecated in /hp/ao/ae/lz/www/detlefhahn/common/inc/sec_headers_3.inc on line 121
216.73.216.155 login.php Deprecated: Constant E_STRICT is deprecated in /hp/ao/ae/lz/www/detlefhahn/common/inc/sec_headers_3.inc on line 121
216.73.216.155 login.php Deprecated: Constant E_STRICT is deprecated in /hp/ao/ae/lz/www/detlefhahn/common/inc/sec_headers_3.inc on line 121
216.73.216.155 login.php Deprecated: Constant E_STRICT is deprecated in /hp/ao/ae/lz/www/detlefhahn/common/inc/sec_headers_3.inc on line 121
216.73.216.155 login.php
Ein Mitarbeiter hat längere Zeit Urlaub. Es soll kein Login auf seinem Account mehr möglich sein. Schreiben Sie ein Script in mit dem das Kennwort auf * d.h. NOLOGIN gesetzt wird. Das alte Kennwort soll im 5. Feld (GECOS-Teil )abgelegt werden.
Das Script sollte mit BSD und System V (/etc/shadow ) zurechtkommen.
8.13.3.1 Login blockieren Lösung
#! /bin/ksh
# -------------------------------------------------------------
# Erzeugt : 21.02.97
# Autor : root
# Beschreibung : Sperrt einen Benutzer, indem /etc/passwd auf
# nologin gesetzt wird
# -------------------------------------------------------------
# Modif.Log :
#:
FPATH=/usr/local/lib/func_lib:/root/lib/func_lib
autoload kopf prompt_jn pos cont
# -------------------------------------------------------------
# Definieren Sie nachfolgend Ihre eigenen Funktionen
# -------------------------------------------------------------
usage()
{ cat << !!!
Das Script $0 sperrt den Login indem in /etc/passwd das
Kennwort auf * d.h. NOLOGIN gesetzt wird.
es darf nur von SU ausgeführt werden.
!!!
exit
}
# -------------------------------------------------------------
# Mainscript user_deny
# -------------------------------------------------------------
kopf "User auf NOLOGIN setzen"
echo
if [ "$1" = "-?" ] ; then usage ; fi
if [ ! -O /etc/passwd ]
then
echo "Sorry! Nur Su darf sperren "
exit 1
fi
# Nur user mit Usernummer > 100 herausgreifen
user=`grep '^[^:]*:[^:]*:[1-9][0-9][0-9][0-9]*:' /etc/passwd | cut -f1 -d:`
echo $user
# Wir arbeiten an Kopien der Dateien
pid=$$
new_passwd=/tmp/passwd${pid}
new_shadow=/tmp/shadow${pid}
cp /etc/passwd $new_passwd
if [ -r /etc/shadow ]
then
cp /etc/shadow $new_shadow
chmod 600 $new_shadow
fi
PS3="Ihre Wahl oder ^D "
pos 4 0
select ausw in $user
do
echo
echo "Antwort = $REPLY Selektiert $ausw "
if [ ${#ausw} = 0 ]
then
echo "Auswahl ungültig (nicht vorhanden)"
pos 4 0
continue # Überspringe Rest der Schleife
fi
cat $new_passwd | grep $ausw # zeige Satz
sh_pw=""
if [ -r $new_shadow ]
then # extrahiere Kennwort aus der shadow Datei
sh_pw=`cat $new_shadow | grep $ausw | cut -f2 -d:`
cat $new_shadow | grep $ausw # zeige Satz an
fi
# -------------------------------------------------------------
# AWK wird für /etc/passwd und für /etc/shadow gerufen
#
# -------------------------------------------------------------
# hahn:x:503:100:Detlef Hahn,,,:/home/hahn:/bin/ksh
# $1 $2 $3 $4 $5 $6
# -------------------------------------------------------------
awk -v user=$ausw -v sh_pw=$sh_pw '
BEGIN { FS = ":" ; OFS = ":" }
$1 == user {
if ( sh_pw == "" ) # steht Kennwort in passwd ?
{ $5 = $5 "@" $2 # ja, dann umsetzen
$2 = "*" # und blockieren
}
else # Es existiert eine shadow Datei
{ # d.h das Kennwort wurde übergeben
$5 = $5 "@" sh_pw
}
}
{ print $0 }
' $new_passwd > ${new_passwd}_awk
# -------------------------------------------------------------
# hahn:Dx5eU4PktU/ZU:9909:0:30:15:10:19877:
# $1 $2
# -------------------------------------------------------------
if [ -r $new_shadow ]
then
awk -v user=$ausw '
BEGIN { FS = ":" ; OFS = ":" }
$1 == user { $2 = "*" }
{ print $0 }
' $new_shadow > ${new_shadow}_awk
mv ${new_shadow}_awk $new_shadow
fi
# -------------------------------------------------------------
mv ${new_passwd}_awk $new_passwd
pos 4 0
done
pos 15
kopf
cat $new_passwd
cont
kopf
cat $new_shadow
cont
prompt_jn "Dateien zurückschreiben "
if [ $? = 0 ]
then
cp /etc/passwd /etc/passwd_awk
mv $new_passwd /etc/passwd
if [ -r /etc/shadow ]
then
cp /etc/shadow /etc/shadow_awk
mv $new_shadow /etc/shadow
chmod 400 /etc/shadow
fi
fi
8.13.4 login zulassen Aufgabenstellung
Der Mitarbeiter ist zurückgekehrt. Schreiben Sie ein Script, welches das alte Kennwort restauriert.
#! /bin/ksh
# -------------------------------------------------------------
# Erzeugt : 21.02.97
# Autor : root
# Beschreibung : Schreibt Kennwort zurück, erlaubt Login
# -------------------------------------------------------------
# Modif.Log :
#:
FPATH=/usr/local/lib/func_lib:/root/lib/func_lib
autoload cont kopf pos prompt_jn
# -------------------------------------------------------------
# Definieren Sie nachfolgend Ihre eigenen Funktionen
# -------------------------------------------------------------
# -------------------------------------------------------------
# Mainscript login_allow
# -------------------------------------------------------------
cat &lT;< !!!
Schreiben Sie das Script, damit ein User wieder mit seinem
alten Kennwort aktiviert wird.
Hinweis : benutzen Sie pos=index(str,"@") und substr(str,pos+1)
um das alte Kennwort zu extrahieren
!!!