CERTMONGER(8)
β¨ NAME β¨
okay bestie, say hi to dogtag-submit π
this whole page is CERTMONGER(8) from the System Manager's Manual β section 8, admin-girl territory, we love that for us π
π¦ SYNOPSIS π¦
dogtag-submit -E EE-URL -A AGENT-URL [-d DIR] [-n NAME] [-i FILE] [-C
DIR] [-c FILE] [-k FILE] [-p FILE] [-P PIN] [-s serial (hex)] [-D serial
(decimal)] [-S state] [-T profile] [-O param=value] [-N | -R] [-t] [-o
option=value] [-a] [-u username] [-U userdn] [-W PASSWORD] [-w FILE] [-Y
PIN] [-y FILE] [-v] [csrfile]
πΈ DESCRIPTION πΈ
so dogtag-submit is the little helper that certmonger calls when it needs to do certificate enrollment and renewal requests against Dogtag servers. it's not normally run interactively β like, it's a behind-the-scenes girly β but you can run it by hand if you're troubleshooting. no cap π«Ά
the preferred move is to ask for a renewal of an already-issued certificate, using its serial number. where does that serial come from? either:
- the
CERTMONGER_CERTIFICATEenvironment variable, which can hold a PEM-formatted certificate, or - the
-sor-Doption on the command line.
if no serial number is provided, then the client will try to get a brand new certificate by submitting a signing request to the CA. new cert, who dis β¨
the signing request that's getting submitted should be in a file whose name you pass as an argument, or fed into dogtag-submit via stdin. either works, pick your vibe.
heads up bestie: certmonger does not yet support retrieving trust information from Dogtag CAs. it's giving "not yet", not "never" π
π OPTIONS π
-E EE-URL,--ee-url=EE-URLβ the top-level URL for the end-entity interface the CA provides, and it's through this one that the initial enrollment request gets submitted. typically it'shttp://SERVER:EEPORT/ca/ee/ca.-A AGENT-URL,--agent-url=AGENT-URLβ the top-level URL for the agent interface the CA provides, through which the request can be approved using agent credentials. typically it'shttps://SERVER:AGENTPORT/ca/agent/ca.-i FILE,--cafile=FILEβ where the file lives that holds a copy of the CA's certificate. the CA server's certificate gets verified against it. π-C DIR,--capath=DIRβ where the directory lives that holds a copy of the CA's certificate(s). again, the CA server's certificate gets verified against it.-D SERIAL,--serial=SERIALβ the serial number of an already-issued certificate that the client should try to get a new certificate for, in decimal form, if one can't be read from theCERTMONGER_CERTIFICATEenvironment variable.-s SERIAL,--hex-serial=SERIALβ same idea, but the serial number is in hexadecimal form, if one can't be read from theCERTMONGER_CERTIFICATEenvironment variable.-S STATE,--state=STATEβ a cookie value handed over by a previous instance of this helper, for when the helper is being asked to continue a multi-step enrollment process. if theCERTMONGER_COOKIEenvironment variable is set, its value is used instead. πͺ-T NAME,--profile=NAMEβ the name of the type of certificate the client should request from the CA, if it's not renewing a certificate (per the-soption above). if theCERTMONGER_CA_PROFILEenvironment variable is set, its value is used. otherwise the default value iscaServerCert.-O param=value,--approval-options=param=valueβ an extra parameter to pass to the server when approving the signing request using agent credentials. by default, any server-supplied default settings are applied. you can use this either to override a server-supplied default setting, or to supply one that otherwise wouldn't have been used. requires the-Aoption.-N,--force-newβ even if an already-issued certificate is sitting in theCERTMONGER_CERTIFICATEenvironment variable, or a serial number has been provided, don't attempt to renew a certificate using its serial number. instead, attempt to obtain a new certificate using the signing request. the default behavior is to request a renewal if possible.-R,--force-renewβ negates the effect of the-Nflag. it's the "actually, no, go back" button π-t,--profile-listβ instead of attempting to obtain a new certificate, query the server for a list of the enabled enrollment profiles. window shopping, iconic.-o param=value,--submit-option=param=valueβ when initially submitting a request to the CA, add the specified parameter and value along with any request parameters that would otherwise be sent.-a,--agent-submitβ use agent credentials (specified using some combination of the-d,-n,-c, and-kflags) to authenticate to the CA when initially submitting a request to the CA, or when retrieving the list of enabled enrollment profiles. this is typically required when the enrollment profile being used usesAgentCertAuth-based authentication, and requires that the URL specified using the-Eflag be an HTTPS URL, or when the URL specified using the-Eflag is an HTTPS URL.-u username,--uid=usernameβ when initially submitting a request to the CA, supply the specified value as a user name. this is typically required when the enrollment profile being used usesUidPwdDirAuth-based orNISAuth-based authentication.-U userdn,--upn=userdnβ when initially submitting a request to the CA, supply the specified value as the DN (distinguished name) of the user's entry in a directory server which the CA is configured to use for checking the user's password. this is typically required when the enrollment profile being used usesUdnPwdDirAuth-based authentication.-W PASSWORD,--userpwd=PASSWORDβ when initially submitting a request to the CA, supply the specified value as the password for the user whose name is specified with the-uoption, or whose DN is specified with the-Uoption. this is typically only required when the enrollment profile being used usesUidPwdDirAuth-based,UserPwdDirAuth-based, orNISAuth-based authentication. β οΈ if the URL specified using the-Eflag is not an HTTPS URL, this value will not be encrypted.-w FILE,--userpwdfile=FILEβ when initially submitting a request to the CA, read a password from the specified file and supply it for the user whose name is specified with the-uoption, or whose DN is specified with the-Uoption. this is typically only required when the enrollment profile being used usesUidPwdDirAuth-based,UserPwdDirAuth-based, orNISAuth-based authentication. β οΈ if the URL specified using the-Eflag is not an HTTPS URL, this value will not be encrypted.-Y PIN,--userpin=PINβ when initially submitting a request to the CA, supply the specified value as the PIN for the user whose name is specified with the-uoption, or whose DN is specified with the-Uoption. this is typically only required when the enrollment profile being used usesUidPwdPinDirAuth-based authentication. β οΈ if the URL specified using the-Eflag is not an HTTPS URL, this value will not be encrypted.-y FILE,--userpinfile=FILEβ when initially submitting a request to the CA, read a PIN from the specified file and supply it for the user whose name is specified with the-uoption, or whose DN is specified with the-Uoption. this is typically only required when the enrollment profile being used usesUidPwdPinDirAuth-based authentication. β οΈ if the URL specified using the-Eflag is not an HTTPS URL, this value will not be encrypted.-v,--verboseβ bumps the logging level up. use it twice for even more logging. this one is mainly useful for troubleshooting, i.e. when everything is on fire and you need the receipts π₯
π AGENT KEY AND CERTIFICATE OPTIONS π
these are the options that give the location for the private key and public certificate the client should use to authenticate to the CA's agent interface. which values you use depends on which cryptography library your copy of libcurl was linked with β iykyk.
-d DIR,--dbdir=DIRβ use an NSS database in the specified directory for this certificate and key. only valid with-n.-n NAME,--nickname=NAMEβ use the NSS key with this nickname. only valid with-d.-c FILE,--certfile=FILEβ the PEM file that contains the public certificate. only valid with-k.-k FILE,--keyfile=FILEβ the PEM file that contains the private certificate. only valid with-c.-p FILE,--sslpinfile=FILEβ the name of a file which contains a PIN/password which will be needed in order to make use of the agent credentials.-P PIN,--sslpin=PINβ the name of a file which contains a PIN/password which will be needed in order to make use of the agent credentials.
π EXIT STATUS π
0β if the certificate was issued. the certificate will be printed. π slay.1β if the CA is still thinking. a cookie (state) value will be printed. πͺ2β if the CA rejected the request. an error message may be printed. π3β if the CA was unreachable. an error message may be printed.4β if critical configuration information is missing. an error message may be printed.5β if the CA is still thinking. a suggested poll delay (specified in seconds) and a cookie (state) value will be printed. β³17β if the CA indicates that the client needs to attempt enrollment using a new key pair. πβ¨
π BUGS π
found one? please file tickets for any that you find at https://fedorahosted.org/certmonger/ β the maintainers want the tea, fr fr.
π SEE ALSO π
certmonger(8) getcert(1) getcert-add-ca(1) getcert-add-scep-ca(1) getcert-list-cas(1) getcert-list(1) getcert-modify-ca(1) getcert-refresh-ca(1) getcert-refresh(1) getcert-rekey(1) getcert-remove-ca(1) getcert-resubmit(1) getcert-start-tracking(1) getcert-status(1) getcert-stop-tracking(1) certmonger-certmaster-submit(8) certmonger-dogtag-ipa-renew-agent-submit(8) certmonger-ipa-submit(8) certmonger-local-submit(8) certmonger-scep-submit(8) certmonger_selinux(8)
and that's the whole page bestie π this one came from the certmonger Manual, it's dated October 27, 2015, and its manual page name is CERTMONGER(8). go forth, renew those certs, and stay encrypted πβ¨π¦
π¦ where this page comes from
- alpine 3.24: certmonger-doc 0.79.21-r0 Β· GPL-3.0-or-later
- centos-stream 10: certmonger 0.79.21-1.el10 Β· GPL-3.0-or-later
- centos-stream 9: certmonger 0.79.21-1.el9 Β· GPLv3+
- debian bookworm: certmonger 0.79.17-2 Β· GPL-3.0-or-later WITH OpenSSL exception
- debian trixie: certmonger 0.79.20-2 Β· GPL-3.0-or-later WITH OpenSSL exception
- fedora 43: certmonger 0.79.20-5.fc43 Β· GPL-3.0-or-later
- fedora 43: certmonger 0.79.21-1.fc43 Β· GPL-3.0-or-later
- fedora 44: certmonger 0.79.21-4.fc44 Β· GPL-3.0-or-later
- opensuse-leap 16.0: certmonger 0.79.19-160000.2.2 Β· GPL-3.0-or-later
- opensuse-leap 16.0: certmonger 0.79.19-160000.2.2 Β· GPL-3.0-or-later
- opensuse-leap 16.0: certmonger 0.79.19-160000.2.2 Β· GPL-3.0-or-later
- opensuse-leap 16.0: certmonger 0.79.19-160000.2.2 Β· GPL-3.0-or-later
- ubuntu jammy: certmonger 0.79.14+git20211010-2ubuntu1 Β· GPL-3.0-or-later WITH OpenSSL exception
- ubuntu noble: certmonger 0.79.19-1build4 Β· GPL-3.0-or-later WITH OpenSSL exception
- ubuntu questing: certmonger 0.79.20-2build1
- ubuntu resolute: certmonger 0.79.21-1 Β· GPL-3.0-or-later WITH OpenSSL exception
- ubuntu stonking: certmonger 0.79.21-1build1 Β· GPL-3.0-or-later WITH OpenSSL exception
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms