Ein kleiner CGI Passwortgenerator
Benötigt das PWGEN Paket deiner Distribution.
Ein kleiner CGI Passwortgenerator mit der Bash: (ACHTUNG! UNSICHER! NIEMALS SO AUF EINEM ÖFFENTLICHEN WEBSERVER BETREIBEN! Wer es doch mach, viel Glück :-D)
#!/bin/bash -x
echo Content-Type: text/html
echo ""
if [ -z $QUERY_STRING ]
then
/bin/cat << EOM1
<HTML>
<HEAD><TITLE>Kleiner Passwort Generator</TITLE>
</HEAD>
<BODY bgcolor="#ffffff" text="#000000">
<FORM action="http://mein-webserver.de/cgi-bin/pwgen.cgi" method="get">
<P> Länge des Passworts (3-99): <INPUT name="len" type="text" size="2" max
length="2"> </P>
<FORM>
<form action="http://mein-webserver.de/cgi-bin/pwgen.cgi" method="get">
<p>Mit oder ohne Sonderzeichen: <p>
<input type="radio" name="secure" value="1"> ohne Sonderzeichen und alles kl
ein <br>
<input type="radio" name="secure" value="2" checked> ohne Sonderzeichen groß
und klein und Zahlen <br>
<input type="radio" name="secure" value="3"> mit Sonderzeichen <br>
<input type="radio" name="secure" value="4"> mit Sonderzeichen groß und klei
n <br>
<input type="radio" name="secure" value="5"> mit Sonderzeichen groß und klei
n und Zahlen <br>
</p>
<input type="submit" value=" Absenden ">
<input type="reset" value=" Abbrechen">
</form>
</BODY>
</HTML>
EOM1
echo "Und hier wie gewohnt:"
echo "<pre>"
pwgen -c -n -C
echo "</pre>"
else
/bin/cat << EOM2
<HTML>
<HEAD><TITLE>Kleiner Passwort Generator</TITLE>
</HEAD>
<BODY bgcolor="#ffffff" text="#000000">
EOM2
len=`echo $QUERY_STRING | awk -F"=" '{print $2}' | awk -F"&" '{print $1}'`
sonder=`echo $QUERY_STRING | awk -F"=" '{print $3}'`
if [ $len -gt 99 ]
then echo "Arrrgggll"
exit 1
fi
if [ $len -lt 3 ]
then echo "<img src=http://mein-webserver.de/dump.jpg alt=\"You are dumped\">"
exit 1
fi
case $sonder in
1)
echo "Das Passwort: <br>"
echo "<pre>"
pwgen -C $len
echo "</pre>"
;;
2)
echo "Das Passwort: <br>"
echo "<pre>"
pwgen -c -n -C $len
echo "</pre>"
;;
3)
echo "Das Passwort: <br>"
echo "<pre>"
pwgen -y -C $len
echo "</pre>"
;;
4)
echo "Das Passwort: <br>"
echo "<pre>"
pwgen -c -y -C $len
echo "</pre>"
;;
5)
echo "Das Passwort: <br>"
echo "<pre>"
pwgen -c -n -y -C $len
echo "</pre>"
;;
*)
echo "<img src=http://mein-webserver.de/dump.jpg alt=\"You are dumped\">
"
;;
esac
/bin/cat << EOM3
</BODY>
</HTML>
EOM3
fi
echo Content-Type: text/html
echo ""
if [ -z $QUERY_STRING ]
then
/bin/cat << EOM1
<HTML>
<HEAD><TITLE>Kleiner Passwort Generator</TITLE>
</HEAD>
<BODY bgcolor="#ffffff" text="#000000">
<FORM action="http://mein-webserver.de/cgi-bin/pwgen.cgi" method="get">
<P> Länge des Passworts (3-99): <INPUT name="len" type="text" size="2" max
length="2"> </P>
<FORM>
<form action="http://mein-webserver.de/cgi-bin/pwgen.cgi" method="get">
<p>Mit oder ohne Sonderzeichen: <p>
<input type="radio" name="secure" value="1"> ohne Sonderzeichen und alles kl
ein <br>
<input type="radio" name="secure" value="2" checked> ohne Sonderzeichen groß
und klein und Zahlen <br>
<input type="radio" name="secure" value="3"> mit Sonderzeichen <br>
<input type="radio" name="secure" value="4"> mit Sonderzeichen groß und klei
n <br>
<input type="radio" name="secure" value="5"> mit Sonderzeichen groß und klei
n und Zahlen <br>
</p>
<input type="submit" value=" Absenden ">
<input type="reset" value=" Abbrechen">
</form>
</BODY>
</HTML>
EOM1
echo "Und hier wie gewohnt:"
echo "<pre>"
pwgen -c -n -C
echo "</pre>"
else
/bin/cat << EOM2
<HTML>
<HEAD><TITLE>Kleiner Passwort Generator</TITLE>
</HEAD>
<BODY bgcolor="#ffffff" text="#000000">
EOM2
len=`echo $QUERY_STRING | awk -F"=" '{print $2}' | awk -F"&" '{print $1}'`
sonder=`echo $QUERY_STRING | awk -F"=" '{print $3}'`
if [ $len -gt 99 ]
then echo "Arrrgggll"
exit 1
fi
if [ $len -lt 3 ]
then echo "<img src=http://mein-webserver.de/dump.jpg alt=\"You are dumped\">"
exit 1
fi
case $sonder in
1)
echo "Das Passwort: <br>"
echo "<pre>"
pwgen -C $len
echo "</pre>"
;;
2)
echo "Das Passwort: <br>"
echo "<pre>"
pwgen -c -n -C $len
echo "</pre>"
;;
3)
echo "Das Passwort: <br>"
echo "<pre>"
pwgen -y -C $len
echo "</pre>"
;;
4)
echo "Das Passwort: <br>"
echo "<pre>"
pwgen -c -y -C $len
echo "</pre>"
;;
5)
echo "Das Passwort: <br>"
echo "<pre>"
pwgen -c -n -y -C $len
echo "</pre>"
;;
*)
echo "<img src=http://mein-webserver.de/dump.jpg alt=\"You are dumped\">
"
;;
esac
/bin/cat << EOM3
</BODY>
</HTML>
EOM3
fi