zufällige Passwörter generieren
Ich bin in letzter Zeit des öfteren über das Problem gestolpert, mir neue Passwörter ausdenken zu müssen. Da ich keine nun weder lust auf “auf die schnelle” ausgedachte und extrem unsichere Passwörter wie password123 hatte, noch auf grafische Tools zurückgreifen wollte, habe ich mich auf die Suche nach Möglichkeiten zur Passwortgenerierung in der Shell begeben.
/dev/random
Die naheliegenste, wenn auch aufwändigste Methode (unter Linux) ist es, /dev/random zu nutzen. Mein erster Versuch sah wie folgt aus:
jxn@david:~$ head -n 1 /dev/random
A��ɫ�M����▒$+�+Ť���d����t��~#9yi���m
, was (wie man oben sehen kann) einen ziemlich unbrauchbaren Müll erzeugte.
Im nächsten Versuch holte ich mir nur noch die ersten 9 Zeichen statt einer ganzen Zeile und wandelte mit uuencode alles in leserliches ASCII um:
jxn@david:~$ head -c 9 /dev/random | uuencode -m -
begin-base64 644 -
G7n6csku
====
Unglücklicherweise gab es da noch diesen eigenartigen Müll vor und nach meinem gewünschten Passwort. Es gibt viele Wege, dies zu beseitigen. Ich nahm sed:
jxn@david:~$ head -c 9 /dev/random | uuencode -m - | sed -n '2p'
LdsZTzueVFMS
Tadaa! Das einzige verbleibende Problem könnten noch ungewünschte Zeichen wie /, +, ? oder _ sein, welche sich aber ebenfalls mit sed und ein Paar regulären Ausdrücken leicht entfernen lassen:
jxn@david:~$ head -c 9 /dev/random | uuencode -m - | sed -n '2s/[^a-zA-Z 0-9]//;2p'
wsS8xBNMGDSA
Fertig. Ich empfehle aus Komfortgründen jedoch, das ganze in ein Shellscript zu packen. ;-)
Das Problem der mit /dev/random genertieren Passwörter ist jedoch, dass sie in den meisten Fällen nicht aussprechbar sind und sich deswegen nicht sehr gut merken lassen:
mmN7kDsf+Ag z9E60Ve+vdP zzGYMiBEnkfV zMy5F8QHFG6c Msa9VrXSlWz3 u87UkaPLhBJy nw1jbXg1Gavo wFHnpCAiDkYg 0VgdCgSoN0n9 JcjT2SR8LWJY
pwgen
Wer sich Passwörter wünscht, die sich garantiert leichter merken lassen, der sollte das Programm pwgen ausprobieren. Es generiert ebenfalls zufällige Passwörter und sollte in den meisten Distributionen verfügbar sein. Das Programm ist zunächst ein wenig knifflig weil es, wenn ohne Parameter ausgeführt eine Tabelle mit 50 Passwörtern generiert. Um nur ein Passwört ausgeben zu lassen genügt ein:
pwgen -1
Andererseits generiert das Programm ebenfalls nur ein einziges Passwort wenn die Ausgabe in eine Datei umgeleitet wird. In wirklichkeit sind natürlich nicht alle Passwörter aussprechbar oder gar leicht zu merken. Aber die meisten von ihnen sind es, und das ist mehr als genug. Als kleines Beispiel hier noch ein paar der von pwgen generierten Passwörter:
zaiCh7th Eeheex3j hooKah1d eeQua8ie Ooghath8 queo3EiP teiP5lan aheeCh4r
otp
Ein weiteres nützliches Programm ist otp, was eigentlich ein Akronym ist und für One Time Pad steht. Es wurde entwickelt, um Schlüssel für jene Verschlüsselungsmethode zu generieren. Aber die Standardausgabe reicht für unsere Zwecke völlig. Hier noch ein Beispiel für die Ausgabe von otp:
1) arri-ylew 2) riuo-ytrh 3) wkgc-elrb 4) npfn-ffkb
5) hptz-dlzv 6) yawa-vfhs 7) ohmp-rsun 8) cajw-bfqg
Genau wie pwgen generiert otp standardmäßig 50 Passwörter. Um nur ein einziges auszugeben, (für Scripts beispielsweise) reicht:
otp -n1
apg
Solltet ihr eine noch größere Zufälligkeit brauchen, werdet ihr warscheinlich apg mögen. Ohne Parameter ausgeführt, fragt es euch zunächst nach ein wenig Eingabe eurerseits. Der Algorithmus generiert dann eine Liste von Passwörtern, auf eurer Eingabe basierend. Hier eine Beispielausgabe:
8obPactAblo (EIGHT-ob-Pact-A-blo)
tu8VoazCiati (tu-EIGHT-Voaz-Ciat-i)
rojKeOc0 (roj-Ke-Oc-ZERO)
JedHeej9 (Jed-Heej-NINE)
Konquedeps4 (Kon-qued-eps-FOUR)
yov0HoobBoy (yov-ZERO-Hoob-Boy)
Wie ihr oben sehen könnt, gibt apg euch Tipps zum aussprechen (und damit automatisch leichter merken) der Passwörter. Zwar leider auf Englisch, aber das sollte kein Problem darstellen. Für Scripts gibt
apg -n 1
nur ein Passwort (ohne den Tipp) aus, welches sich leicht in weitere Programme umleiten lässt.
Wenn ihr euch also das nächste mal an einer dieser albernen “Web 2.0 Sites” anmeldet, ist es vielleicht Klug ein starkes Passwort zu verwenden. Und wenn euch gerade keines einfällt, so könnt ihr mit den Tools die ich euch gerade vorgestellt habe, euch auf die schnelle eins generieren lassen. :-)
-
24.5.2007 / 7:42
Ein kleiner Nachtrag zu apg: Mithilfe der Befehlszeileoptionen laesst sich der Algorithmus vielfaeltig einstellen, z.B. werden nicht zwangslauefig aussprechbare Passwoerter generiert, man kann die Laenge und die Zeichentypen bestimmen. Siehe Manpage.
-
26.5.2007 / 2:30
Eigentlich gehört noch ein Link hier hin dazu.
-
14.6.2007 / 20:44
Wenn man pwsafe zur Passwortverwaltung benutzt kann man auch sehr zufaellige Passwoerter automatisch generieren lassen.
-
23.6.2007 / 14:08
Ich benutze KeePassX zur Passwortverwaltung (verschlüsselte Passwortdatei auch unter Windows und Macs mit KeePass(x) öffenbar. Zum Passwörter-Generieren benutze ich “gpg -a –gen-random 1 30″, die sind normalerweise stark genug :-)
mfg
-
3.8.2007 / 15:32
makepasswd ist ein nuetzliches Tool, welches im normalfall bei jeder Distro dabei ist und mit dem einfachen Befehl
makepasswd
wunderschoene, leicht merkbare passwoerter wie
fv7oze4
np56DYF oder
vV5sQMferstellt
-
10.10.2007 / 14:22
netter beitrag. weiter so
Hinterlasse einen Kommentar
XHTML: Folgende Tags sind erlaubt: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>
navigation
- [1] was ist [ pimp my shell ] ?
- [2] programme
- [3] skripte / dotfiles
- [4] shellshots
- [5] mitmachen
- [6] autoren
- [7] einloggen
- [8] impressum
aussehen
ältere beiträge
- 08.26 lsr – Das fehlende Listing
- 06.18 wirklich? so einfach?
- 06.17 fbcmd – update
- 06.04 worklog – die zeit im griff
- 05.30 google-reader >> snownews
- 05.28 fbcmd – facebook in der shell
- 05.28 bitlbee – alles in einem!
- 05.16 NoPaste/pastebin-Service über die Shell mit curl und sprunge.us
- 04.15 Die Heirloom-Tools – Unix unter Linux
- 02.13 dvtm – dwm für die Konsole
beitrags-archiv
- August 2010 (1)
- Juni 2010 (3)
- Mai 2010 (3)
- Mai 2008 (1)
- April 2008 (1)
- Februar 2008 (4)
- Januar 2008 (1)
- Dezember 2007 (2)
- September 2007 (1)
- August 2007 (1)
- Juli 2007 (6)
- Juni 2007 (1)
kategorien
- allgemein (17)
- berichte (7)
- fun (2)
- gnu_screen (2)
- hintergrundwissen (3)
- how-tos (11)
- internes (6)
- programme (31)
- shells (6)
- tutorials (6)
- user-skripte (2)
- vim (5)
- webseiten (5)
6 Kommentare
Zum Kommentarformular | Kommentar rss [?] | trackback uri [?]