Op oudere systemen werden alle wachtwoorden in het voor iedereen leesbare bestand /etc/passwd opgeslagen. Op nieuwere systemen worden ze opgeslagen in een alleen voor root leesbaar bestand: /etc/shadow. Op de plaats waar je in /etc/passwd het wachtwoord zou verwachten, staat dan alleen nog maar een x. Als je shadow gebruikt, kun je ook wachtwoorden langer dan 8 tekens gebruiken.
Een methode om te proberen paswoorden te achterhalen is een dictionary attack (ook wel brute force). Een grote woordenlijst wordt geprobeerd met een programma als Jack The Ripper. Alle woorden worden geencrypteerd en vergeleken met het geencrypteerde paswoord dat je probeert te ontfutselen. Komt er een overeen, dan weet je het wachtwoord. Om dit te doen moet je wel de geencrypteerde paswoord hebben. Als shadow wordt gebruikt is dat alweer wat lastiger.
Slechte wachtwoorden zijn in ieder geval het woord password (heel erg slecht), je voor- of achternaam, je gebruikersnaam, naam van een familielid, vriend(in) of huisdier, naam van je bedrijf, geboortedatum, elk willekeurig woord uit een woordenboek of een woord dat je op meerdere plaatsen gebruikt (dat doen veel mensen, omdat dat makkelijk te onthouden is). Schrijf je wachtwoord ook niet op je kalender of blaadje dat op je bureaublad ligt...Een goed wachtwoord is relatief lang (minstens 6 tekens) en bevat een combinatie van hoofd- en kleine letters en cijfers. Verander je wachtwoord ook om de zoveel tijd (bijv. om de 8 weken).
Je kunt een random wachtwoord van 6 letters en cijfers (en soms ook met een paar leestekens) laten verzinnen met head -c 6 /dev/urandom mmencode.
Probeer je een te kort of een alleen uit letters bestaand wachtwoord te gebruiken (met passwd), dan zul je een waarschuwing krijgen dat een slecht wachtwoord is. Wanneer die melding moet verschijnen, kan root instellen met linuxconf.
Als je het wachtwoord van root vergeten bent (als je die hoort te kennen omdat het je eigen systeem is), dan kun je hem veranderen door van een bootfloppy te starten of Linux in single user mode te laten opstarten door linux single achter de LILO-prompt in te tikken (vervang linux door het juiste label, aangegeven in /etc/lilo.conf). Dan kan namelijk worden ingelogd zonder wachtwoord en kun je het veranderen met passwd. Dat geeft natuurlijk wel een veiligheidsprobleem met zich mee. Je kunt LILO beveiligen door het volgende in /etc/lilo.conf op te nemen.
password="wachtwoord voor LILO hier" restricted
Denk eraan dat je /sbin/lilo opnieuw moet uitvoeren om de wijzigingen van kracht te maken. De bovenstaande regels zorgen ervoor dat er om een wachtwoord wordt gevraagd bij de LILO-prompt. Dit wachtwoord is ongeencrypteerd. Voer daarom chmod 600 /etc/lilo.conf uit om het bestand alleen voor root lees- en schrijfbaar te maken.