JOHN(8)
β¨ JOHN(8) β¨
okay bestie, buckle UP, because this is the manual page for john, aka John the Ripper, living in section 8 (System Manager's Manual) π
. It's the tool that finds weak passwords of your users, and it is literally the main character of password auditing. Let's get into it π
πΈ NAME πΈ
john β a tool to find weak passwords of your users ππ
π¦ SYNOPSIS π¦
john [options] password-files
π DESCRIPTION π
So this manual page documents the john command, briefly. Ngl, it was written for the Debian GNU/Linux distribution because the original program does not have a manual page β we're the ones giving it the glow-up β¨.
john, better known as John the Ripper, is a tool to find weak passwords of users in a server. John can use a dictionary or some search pattern, as well as a password file, to check for passwords. John supports different cracking modes and understands many ciphertext formats, like several DES variants, MD5 and blowfish. It can also be used to extract AFS and Windows NT passwords. versatile icon behavior, honestly π
π USAGE π
To use John, you just need to supply it a password file and the desired options. If no mode is specified, john will try single first, then wordlist and finally incremental. the pipeline ate, fr fr π₯
Once John finds a password, it will be printed to the terminal and saved into a file called ~/.john/john.pot. John will read this file when it restarts, so it doesn't try to crack already done passwords. no repeats, we respect the hustle π
To see the cracked passwords, use:
john -show passwd
Important: do this under the same directory where the password was cracked (when using the cronjob, /var/lib/john), otherwise it won't work. like, it will simply NOT work, bestie, don't test it π
While cracking, you can press any key for status, or Ctrl+C to abort the session, saving point information to a file (~/.john/john.rec by default). By the way, if you press Ctrl+C twice, John will abort immediately without saving π«£. The point information is also saved every 10 minutes (configurable in the configuration file, ~/.john/john.ini or ~/.john/john.conf) in case of a crash. safety net, iconic π
To continue an interrupted session, run:
john -restore
Now, you may notice that many accounts have a disabled shell β you can make John ignore these (assume that shell is called /etc/expired):
john -show -shells:-/etc/expired passwd
You might want to mail all the users who got weak passwords, to tell them to change the passwords. It's not always a good idea though (unfortunately, lots of people seem to ignore such mail, it can be used as a hint for crackers, etc), but anyway, I'll assume you know what you're doing π. Get a copy of the mailer script supplied with John, so you won't change anything that's under /usr/sbin; edit the message it sends, and possibly the mail command inside it (especially if the password file is from a different box than you got John running on). Then run:
./mailer passwd
Anyway, you probably should have a look at /usr/share/doc/john/OPTIONS for a list of all the command line options, and at /usr/share/doc/john/EXAMPLES for more John usage examples with other cracking modes. homework but make it cute πβ¨
π OPTIONS π
All the options recognized by john start with a single dash (`-`). A summary of options is included below. every single one, we're not skipping, periodt π
-external:MODEβ Enables an external mode, using external functions defined in~/john.ini's[List.External:MODE]section.-format:NAMEβ Allows you to override the ciphertext format detection. Currently, valid format names areDES,BSDI,MD5,BF,AFS,LM. You can use this option when cracking or with-test. Note that John can't crack password files with different ciphertext formats at the same time. one format at a time bestie, don't be greedy π€-groups:[-]GID[,..]β Tells John to load users of the specified group(s) only.-incremental[:MODE]β Enables the incremental mode, using the specified~/john.inidefinition (section[Incremental:MODE], or[Incremental:All]by default).-makechars:FILEβ Generates a charset file, based on character frequencies from~/.john/john.pot, for use with the incremental mode. The entire~/.john/john.potwill be used for the charset file unless you specify some password files. You can also use an externalfilter()routine with this option.-restore[:FILE]β Continues an interrupted cracking session, reading point information from the specified file (~/.john/john.recby default). the comeback era π«Ά-rulesβ Enables wordlist rules, that are read from[List.Rules:Wordlist]in/etc/john/john.conf(or the alternative configuration file you might specify on the command line). This option requires the-wordlistoption to be passed as well. no-wordlist, no-rules, they're a package deal π-salts:[-]COUNTβ This feature sometimes allows you to achieve better performance. For example you can crack only some salts using-salts:2faster, and then crack the rest using-salts:-2. Total cracking time will be about the same, but you will get some passwords cracked earlier. girl math that actually works π-savemem:LEVELβ You might need this option if you don't have enough memory, or don't want John to affect other processes too much. Level 1 tells John not to waste memory on login names, so you won't see them while cracking. Higher levels have a performance impact: you should probably avoid using them unless John doesn't work or gets into swap otherwise.-session:FILEβ Allows you to specify another point information file's name to use for this cracking session. This is useful for running multiple instances of John in parallel, or just to be able to recover an older session later, not always continue the latest one. multitasking queen π-shells:[-]SHELL[,..]β This option is useful to load accounts with a valid shell only, or not to load accounts with a bad shell. You can omit the path before a shell name, so-shells:cshwill match both/bin/cshand/usr/bin/csh, while-shells:/bin/cshwill only match/bin/csh. specific vs vibes, your call π-showβ Shows the cracked passwords in a convenient form. You should also specify the password files. You can use this option while another John is cracking, to see what it did so far.-singleβ Enables the "single crack" mode, using rules from[List.Rules:Single].-status[:FILE]β Prints status of an interrupted or running session. To get an up to date status information of a detached running session, send that copy of John aSIGHUPbefore using this option.-stdinβ These are used to enable the wordlist mode (reading from stdin).-stdout[:LENGTH]β When used with a cracking mode, except for "single crack", makes John print the words it generates to stdout instead of cracking. While applying wordlist rules, the significant password length is assumed to be LENGTH, or unlimited by default.-testβ Benchmarks all the enabled ciphertext format crackers, and tests them for correct operation at the same time. This option does not need any file passed as argument. Its only function is to benchmark the systemjohnis running on. it's giving benchmark era π₯-users:[-]LOGIN|UID[,..]β Allows you to filter a few accounts for cracking, etc. A dash before the list can be used to invert the check (that is, load all the users that aren't listed).-wordlist:FILEβ These are used to enable the wordlist mode, reading words from FILE.
π§ MODES π§
John can work in the following modes:
πΈ Wordlist πΈ
John will simply use a file with a list of words that will be checked against the passwords. See RULES for the format of wordlist files.
π Single crack π
In this mode, john will try to crack the password using the login/GECOS information as passwords.
π Incremental π
This is the most powerful mode. John will try any character combination to resolve the password. Details about these modes can be found in the MODES file in john's documentation, including how to define your own cracking methods. build your own, main character energy β¨
π FILES π
/etc/john/john.confβ is where you configure howjohnwill behave./etc/john/john-mail.msgβ has the message sent to users when their passwords are successfully cracked./etc/john/john-mail.confβ is used to configure howjohnwill send messages to users that had their passwords cracked.
π SEE ALSO π
mailer(8), unafs(8), unique(8), unshadow(8),
The programs and the configuration files are documented fully by John's documentation, which should be available in /usr/share/doc/john or other location, depending on your system.
π«Ά AUTHOR π«Ά
This manual page was written by Jordi Mallach <jordi@debian.org> and Jeronimo Pellegrini <pellegrini@mpcnet.com.br>, for the Debian GNU/Linux system (but may be used by others).
John the Ripper was written by Solar Designer <solar@openwall.com>. The complete list of contributors can be found in the CREDITS file in the documentation directory. legends only π
and that's a wrap, bestie π this was the john page from the System Manager's Manual, brought to you by the fine humans behind john on June 09, 2008 π
stay safe, stay cracked (the passwords, not you) πβ¨
π¦ where this page comes from
- debian bookworm: john 1.9.0-2 Β· GPL-2.0-only
- debian trixie: john 1.9.0-2 Β· GPL-2.0-only
- ubuntu noble: john 1.9.0-2build1 Β· GPL-2.0-only
- ubuntu questing: john 1.9.0-2build1
- ubuntu resolute: john 1.9.0-3build1 Β· GPL-2.0-only
- ubuntu stonking: john 1.9.0-3build1 Β· GPL-2.0-only
- copyright 1999-2001 by Jordi Mallach <jordi@debian.org>
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms