Warum verkürzt / etc / shadow das Kennwort, das ich mit dem Befehl useradd -p festgelegt habe?


21
[root@P-dude dude]# useradd -p $6$Ic2PVlwi$2nf.IRWTMy0FHrPzaCjkahfu9IIxnzxPZL7yg8SsvOdbjEpoI0G8uy7AqduYKQOn2R/rnnaalRmfPMy.a0 bwong20

[root@P-dude dude]# cat /etc/shadow | grep pswayze
pswayze:nf.IRWTMy0FHrPzaCjkahfu9IIxnzxPZL7yg8SsvOdbjEpoI0G8uy7AqduYKQOn2R/rnnaalRmfPMy.a0:16924:0:99999:7:::

Ich bin nicht sicher, warum das System die ersten vierzehn Zeichen aus meinem verschlüsselten Passwort entfernt. Das Passwort in meiner /etc/shadowDatei ist kürzer als das, was ich als Argument angegeben habeuseradd -p


Natürlich sollte es selbstverständlich sein, dass Sie ein anderes Passwort verwenden müssen, nachdem Sie diesen Hash aufgedeckt haben. ;)
Wildcard

Antworten:


67

Da $es sich bei der Shell um ein Sonderzeichen handelt, sollten Sie das Kennwort in einfache Anführungszeichen setzen:

useradd -p '$6$Ic2PVlwi$2nf.IRWTMy0FHrPza6mh5wjomwbYtIIxnzxPZL7yg8SsvOdbjEpoI0G8uy7AqduYKQOn2R/rnnaalRmfPMy.a0' bwong20

Ohne diese wird die Shell versuchen, zu expandieren $6, $Ic2PVlwiund $2auf ihre jeweiligen Variablenwerte und da die Variablen nicht gesetzt sind, führen sie zu leeren Zeichenfolgen für jede von ihnen. Verkettet mit dem Rest der verschlüsselten Kennwortzeichenfolge.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.