KADMIN(1)
β¨ KADMIN(1) β¨
okay so bestie, welcome to kadmin, straight outta the General Commands Manual, section 1 π this is the Kerberos administration utility and she is the main character of your realm, periodt.
π NAME π
kadmin β the Kerberos administration utility π§
π¦ SYNOPSIS π¦
kadmin [-p string | --principal=string] [-K string | --keytab=string]
[-c file | --config-file=file] [-k file | --key-file=file]
[-r realm | --realm=realm] [-a host | --admin-server=host]
[-s port number | --server-port=port number] [-l | --local]
[-h | --help] [-v | --version] [command]
πΈ DESCRIPTION πΈ
So like, kadmin is the program you use to make modifications to the Kerberos database β either remotely via the kadmind(8) daemon, or locally (that's the -l option, iykyk).
Supported options: π
-p string,--principal=stringβ the principal you wanna authenticate as π-K string,--keytab=stringβ the keytab for your authentication principal π-c file,--config-file=fileβ where the config file lives ποΈ-k file,--key-file=fileβ where the master key file lives ποΈ-r realm,--realm=realmβ which realm to use π-a host,--admin-server=hostβ which server to contact π‘-s port number,--server-port=port numberβ which port to use πͺ-l,--localβ local admin mode, no daemon needed bestie π«
If you don't hand her a command on the command line, kadmin will prompt you for commands to process. And some of the commands that take one or more principals as an argument β specifically delete</>, ext_keytab</>, get</>, modify</>, and passwd</> β will accept a glob style wildcard, and do the thing to all the matching principals. iconic behaviour honestly.
Commands include: β¨
π add
add [-r | --random-key] [--random-password] [-p string |
--password=string] [--key=string] [--max-ticket-life=lifetime]
[--max-renewable-life=lifetime] [--attributes=attributes]
[--expiration-time=time] [--pw-expiration-time=time]
[--policy=policy-name] principal...
Adds a brand new principal to the database π the options you don't pass on the command line? she's gonna prompt you for them. also heads up: the only policy supported by Heimdal servers is default. that's it. that's the list.
π¦ add_enctype
add_enctype [-r | --random-key] principal enctypes...
Adds a new encryption type to the principal β but ngl, only random key are supported π
π delete
delete principal...
Removes a principal. bye bestie ππ
π del_enctype
del_enctype principal enctypes...
Removes some enctypes from a principal β this is genuinely useful if the service belonging to that principal is known to not handle certain enctypes, no cap π«
π ext_keytab
ext_keytab [-k string | --keytab=string] principal...
Creates a keytab with the keys of the specified principals. Requires get-keys rights β otherwise the principal's keys are changed and saved in the keytab π so like, be aware of that.
π get
get [-l | --long] [-s | --short] [-t | --terse] [-o string |
--column-info=string] principal...
Lists the matching principals π
short prints the result as a table, while long format gives you the more verbose, extra-detail output. Which columns get printed can be picked with the -o option β that argument is a comma separated list</> of column names, optionally with an equal sign (=) and a column header appended. And which columns are printed by default differs slightly between short and long output, so like, vibe check accordingly.
The default terse output format is basically the same as -s -o principal=, just printing the names of the matched principals π«Ά
Possible column names include: principal, princ_expire_time, pw_expiration, last_pwd_change, max_life, max_rlife, mod_time, mod_name, attributes, kvno, mkvno, last_success, last_failed, fail_auth_count, policy, and keytypes. β
πΈ modify
modify [-a attributes | --attributes=attributes]
[--max-ticket-life=lifetime] [--max-renewable-life=lifetime]
[--expiration-time=time] [--pw-expiration-time=time] [--kvno=number]
[--policy=policy-name] principal...
Modifies certain attributes of a principal. Run it with no command line options and she'll prompt you. Run it with command line options and it only changes the ones you actually specified π
Only policy supported by Heimdal is default.
Possible attributes are: new-princ, support-desmd5, pwchange-service, disallow-svr, requires-pw-change, requires-hw-auth, requires-pre-auth, disallow-all-tix, disallow-dup-skey, disallow-proxiable, disallow-renewable, disallow-tgt-based, disallow-forwardable, disallow-postdated π§
Attributes may be negated with a -, e.g.,
kadmin -l modify -a -disallow-proxiable user
π« passwd
passwd [--keepold] [-r | --random-key] [--random-password] [-p string |
--password=string] [--key=string] principal...
Changes the password of an existing principal π
π¦ verify-password-quality
verify-password-quality principal password
Runs the password quality check function locally. You can run this on the host that's configured to run the kadmind process to verify that your configuration file is correct β¨ the verification is done locally β if kadmin is run in remote mode, no rpc call is done to the server.
NOTE: if the environment hasverify-password-qualityconfigured to use a back-end that stores password history (such asheimdal-history), runningverify-quality-passwordwill cause an update to the password database β meaning that merely verifying the quality of the password usingverify-quality-passwordinvalidates the use of that principal/password in the future ππ fr fr, that's a real one.
π privileges
privileges
Lists the operations you're allowed to perform π these include add, add_enctype, change-password, delete, del_enctype, get, get-keys, list, and modify.
π rename
rename from to
Renames a principal. This is normally transparent, but since keys are salted with the principal name, they'll end up with a non-standard salt β and clients that can't cope with that will fail. Kerberos 4 suffers from this π¬
π check
check [realm]
Checks the database for strange configurations on important principals π if no realm is given, the default realm is used.
π«Ά When running in local mode, the following commands can also be used:
π dump
dump [-d | --decrypt] [-fformat | --format=format] [dump-file]
Writes the database in "machine readable text" form to the specified file, or to standard out π if the database is encrypted, the dump will also have encrypted keys β unless --decrypt is used. And if --format=MIT is used then the dump will be in MIT format, otherwise it'll be in Heimdal format π§
πΈ init
init [--realm-max-ticket-life=string]
[--realm-max-renewable-life=string] realm
Initializes the Kerberos database with entries for a new realm β¨ and yes, it's possible to have more than one realm served by one server, she's versatile like that.
π¦ load
load file
Reads a previously dumped database, and re-creates that database from scratch π₯
β merge
merge file
Similar to load but it just modifies the database with the entries in the dump file π
π stash
stash [-e enctype | --enctype=enctype] [-k keyfile | --key-file=keyfile]
[--convert-file] [--master-key-fd=fd]
Writes the Kerberos master key to a file used by the KDC ππ
π SEE ALSO π
and that's the whole page bestie, you ate π this one's from HEIMDAL, dated Feb 22, 2007, filed under KADMIN(1) β go forth and admin your Kerberos, you got this π«Άβ¨π
π¦ where this page comes from
- debian bookworm: heimdal-clients 7.8.git20221117.28daf24+dfsg-2 Β· BSD-3-Clause
- debian trixie: heimdal-clients 7.8.git20221117.28daf24+dfsg-9+deb13u1 Β· BSD-3-Clause
- ubuntu jammy: heimdal-clients 7.7.0+dfsg-3ubuntu1 Β· BSD-3-Clause
- ubuntu noble: heimdal-clients 7.8.git20221117.28daf24+dfsg-5ubuntu3 Β· BSD-3-Clause
- ubuntu questing: heimdal-clients 7.8.git20221117.28daf24+dfsg-9ubuntu1
- ubuntu resolute: heimdal-clients 7.8.git20221117.28daf24+dfsg-11ubuntu1 Β· BSD-3-Clause
- ubuntu stonking: heimdal-clients 7.8.git20240113.1b4565a+dfsg-2ubuntu1 Β· BSD-3-Clause
- Copyright (c) 2000 - 2007 Kungliga Tekniska HΓΆgskolan
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms