]> git.ipfire.org Git - thirdparty/cups.git/blame - man/cupsd.conf.man.in
Clean up implementation for SSLOptions
[thirdparty/cups.git] / man / cupsd.conf.man.in
CommitLineData
ef416fc2 1.\"
e0660879 2.\" cupsd.conf man page for CUPS.
ef416fc2 3.\"
bd5a2f28 4.\" Copyright 2007-2017 by Apple Inc.
e0660879 5.\" Copyright 1997-2006 by Easy Software Products.
ef416fc2 6.\"
e0660879
MS
7.\" These coded instructions, statements, and computer programs are the
8.\" property of Apple Inc. and are protected by Federal copyright
9.\" law. Distribution and use rights are outlined in the file "LICENSE.txt"
10.\" which should have been included with this file. If this file is
11.\" file is missing or damaged, see the license at "http://www.cups.org/".
ef416fc2 12.\"
7c7347a3 13.TH cupsd.conf 5 "CUPS" "28 August 2017" "Apple Inc."
ef416fc2 14.SH NAME
15cupsd.conf \- server configuration file for cups
16.SH DESCRIPTION
e0660879
MS
17The
18.I cupsd.conf
19file configures the CUPS scheduler,
20.BR cupsd (8).
2909c66c
MS
21It is normally located in the
22.I /etc/cups
25d0c3fe
MS
23directory.
24\fBNote:\fR File, directory, and user configuration directives that used to be allowed in the \fBcupsd.conf\fR file are now stored in the
25.BR cups-files.conf (5)
26file instead in order to prevent certain types of privilege escalation attacks.
ef416fc2 27.LP
25d0c3fe
MS
28Each line in the file can be a configuration directive, a blank line, or a comment.
29Configuration directives typically consist of a name and zero or more values separated by whitespace.
30The configuration directive name and values are case-insensitive.
31Comment lines start with the # character.
32.SS TOP-LEVEL DIRECTIVES
33The following top-level directives are understood by
34.BR cupsd (8):
37d9646b 35.\"#AccessLogLevel
ef416fc2 36.TP 5
25d0c3fe 37\fBAccessLogLevel config\fR
1f0275e3 38.TP 5
25d0c3fe 39\fBAccessLogLevel actions\fR
1f0275e3 40.TP 5
25d0c3fe 41\fBAccessLogLevel all\fR
1f0275e3 42Specifies the logging level for the AccessLog file.
25d0c3fe
MS
43The "config" level logs when printers and classes are added, deleted, or modified and when configuration files are accessed or updated.
44The "actions" level logs when print jobs are submitted, held, released, modified, or canceled, and any of the conditions for "config".
45The "all" level logs all requests.
46The default access log level is "actions".
37d9646b 47.\"#AutoPurgeJobs
1f0275e3 48.TP 5
25d0c3fe 49\fBAutoPurgeJobs Yes\fR
bd7854cb 50.TP 5
25d0c3fe 51\fBAutoPurgeJobs No\fR
ef416fc2 52.br
25d0c3fe
MS
53Specifies whether to purge job history data automatically when it is no longer required for quotas.
54The default is "No".
37d9646b 55.\"#BrowseLocalProtocols
ef416fc2 56.TP 5
25d0c3fe 57\fBBrowseLocalProtocols all\fR
ef416fc2 58.TP 5
25d0c3fe 59\fBBrowseLocalProtocols dnssd\fR
b19ccc9e 60.TP 5
25d0c3fe
MS
61\fBBrowseLocalProtocols none\fR
62Specifies which protocols to use for local printer sharing.
63The default is "dnssd" on systems that support Bonjour and "none" otherwise.
37d9646b 64.\"#BrowseWebIF
25d0c3fe
MS
65.TP 5
66\fBBrowseWebIF Yes\fR
67.TP 5
68\fBBrowseWebIF No\fR
b19ccc9e 69.br
25d0c3fe
MS
70Specifies whether the CUPS web interface is advertised.
71The default is "No".
37d9646b 72.\"#Browsing
b19ccc9e 73.TP 5
25d0c3fe 74\fBBrowsing Yes\fR
bd7854cb 75.TP 5
25d0c3fe 76\fBBrowsing No\fR
ef416fc2 77.br
25d0c3fe
MS
78Specifies whether shared printers are advertised.
79The default is "No".
37d9646b 80.\"#DefaultAuthType
ef416fc2 81.TP 5
25d0c3fe 82\fBDefaultAuthType Basic\fR
bd7854cb 83.TP 5
25d0c3fe 84\fBDefaultAuthType Negotiate\fR
ef416fc2 85.br
86Specifies the default type of authentication to use.
25d0c3fe 87The default is "Basic".
37d9646b 88.\"#DefaultEncryption
ef416fc2 89.TP 5
25d0c3fe 90\fBDefaultEncryption Never\fR
8b450588 91.TP 5
25d0c3fe 92\fBDefaultEncryption IfRequested\fR
8b450588 93.TP 5
25d0c3fe
MS
94\fBDefaultEncryption Required\fR
95Specifies whether encryption will be used for authenticated requests.
96The default is "Required".
37d9646b 97.\"#DefaultLanguage
8b450588 98.TP 5
25d0c3fe 99\fBDefaultLanguage \fIlocale\fR
ef416fc2 100Specifies the default language to use for text and web content.
25d0c3fe 101The default is "en".
37d9646b 102.\"#DefaultPaperSize
ef416fc2 103.TP 5
25d0c3fe 104\fBDefaultPaperSize Auto\fR
49d87452 105.TP 5
25d0c3fe 106\fBDefaultPaperSize None\fR
49d87452 107.TP 5
25d0c3fe
MS
108\fBDefaultPaperSize \fIsizename\fR
109Specifies the default paper size for new print queues. "Auto" uses a locale-specific default, while "None" specifies there is no default paper size.
110Specific size names are typically "Letter" or "A4".
111The default is "Auto".
37d9646b 112.\"#DefaultPolicy
49d87452 113.TP 5
25d0c3fe 114\fBDefaultPolicy \fIpolicy-name\fR
ef416fc2 115Specifies the default access policy to use.
25d0c3fe 116The default access policy is "default".
37d9646b 117.\"#DefaultShared
ef416fc2 118.TP 5
25d0c3fe 119\fBDefaultShared Yes\fR
3d052e43 120.TP 5
25d0c3fe 121\fBDefaultShared No\fR
3d052e43 122Specifies whether local printers are shared by default.
25d0c3fe 123The default is "Yes".
37d9646b 124.\"#DirtyCleanInterval
25d0c3fe
MS
125.TP 5
126\fBDirtyCleanInterval \fIseconds\fR
127Specifies the delay for updating of configuration and state files.
128A value of 0 causes the update to happen as soon as possible, typically within a few milliseconds.
129The default value is "30".
37d9646b 130.\"#ErrorPolicy
25d0c3fe 131.TP 5
053939b3
MS
132\fBErrorPolicy abort-job\fR
133Specifies that a failed print job should be aborted (discarded) unless otherwise specified for the printer.
134.TP 5
135\fBErrorPolicy retry-job\fR
136Specifies that a failed print job should be retried at a later time unless otherwise specified for the printer.
137.TP 5
138\fBErrorPolicy retry-this-job\fR
139Specifies that a failed print job should be retried immediately unless otherwise specified for the printer.
140.TP 5
141\fBErrorPolicy stop-printer\fR
142Specifies that a failed print job should stop the printer unless otherwise specified for the printer. The 'stop-printer' error policy is the default.
37d9646b 143.\"#FilterLimit
053939b3 144.TP 5
25d0c3fe
MS
145\fBFilterLimit \fIlimit\fR
146Specifies the maximum cost of filters that are run concurrently, which can be used to minimize disk, memory, and CPU resource problems.
147A limit of 0 disables filter limiting.
148An average print to a non-PostScript printer needs a filter limit of about 200.
149A PostScript printer needs about half that (100).
150Setting the limit below these thresholds will effectively limit the scheduler to printing a single job at any time.
151The default limit is "0".
37d9646b 152.\"#FilterNice
25d0c3fe
MS
153.TP 5
154\fBFilterNice \fInice-value\fR
155Specifies the scheduling priority (
156.BR nice (8)
157value) of filters that are run to print a job.
158The nice value ranges from 0, the highest priority, to 19, the lowest priority.
159The default is 0.
37d9646b 160.\"#GSSServiceName
25d0c3fe
MS
161.TP 5
162\fBGSSServiceName \fIname\fR
163Specifies the service name when using Kerberos authentication.
164The default service name is "http."
165.TP 5
37d9646b 166.\"#HostNameLookups
25d0c3fe
MS
167\fBHostNameLookups On\fR
168.TP 5
169\fBHostNameLookups Off\fR
170.TP 5
171\fBHostNameLookups Double\fR
172Specifies whether to do reverse lookups on connecting clients.
173The "Double" setting causes
174.BR cupsd (8)
175to verify that the hostname resolved from the address matches one of the addresses returned for that hostname.
176Double lookups also prevent clients with unregistered addresses from connecting to your server.
177The default is "Off" to avoid the potential server performance problems with hostname lookups.
178Only set this option to "On" or "Double" if absolutely required.
c4412c12
BN
179.\"#IdleExitTimeout
180.TP 5
181\fBIdleExitTimeout \fIseconds\fR
08d027c3
MS
182Specifies the length of time to wait before shutting down due to inactivity.
183The default is "60" seconds.
184Note: Only applicable when
c4412c12
BN
185.BR cupsd (8)
186is run on-demand (e.g., with \fB-l\fR).
37d9646b 187.\"#JobKillDelay
25d0c3fe
MS
188.TP 5
189\fBJobKillDelay \fIseconds\fR
190Specifies the number of seconds to wait before killing the filters and backend associated with a canceled or held job.
191The default is "30".
37d9646b 192.\"#JobRetryInterval
25d0c3fe
MS
193.TP 5
194\fBJobRetryInterval \fIseconds\fR
195Specifies the interval between retries of jobs in seconds.
196This is typically used for fax queues but can also be used with normal print queues whose error policy is "retry-job" or "retry-current-job".
197The default is "30".
37d9646b 198.\"#JobRetryLimit
3d052e43 199.TP 5
25d0c3fe
MS
200\fBJobRetryLimit \fIcount\fR
201Specifies the number of retries that are done for jobs.
202This is typically used for fax queues but can also be used with normal print queues whose error policy is "retry-job" or "retry-current-job".
203The default is "5".
37d9646b 204.\"#KeepAlive
4a4b4f99 205.TP 5
25d0c3fe 206\fBKeepAlive Yes\fR
ef416fc2 207.TP 5
25d0c3fe
MS
208\fBKeepAlive No\fR
209Specifies whether to support HTTP keep-alive connections.
210The default is "Yes".
37d9646b 211.\"#KeepAliveTimeout
ef416fc2 212.TP 5
25d0c3fe
MS
213\fBKeepAliveTimeout \fIseconds\fR
214Specifies how long an idle client connection remains open.
215The default is "30".
37d9646b 216.\"#LimitIPP
dcb445bc 217.TP 5
25d0c3fe 218\fB<Limit \fIoperation \fR...\fB> \fR... \fB</Limit>\fR
79c4c4ad 219Specifies the IPP operations that are being limited inside a Policy section. IPP operation names are listed below in the section "IPP OPERATION NAMES".
37d9646b 220.\"#Limit
bd7854cb 221.TP 5
25d0c3fe 222\fB<Limit \fImethod \fR...\fB> \fR... \fB</Limit>\fR
37d9646b 223.\"#LimitExcept
bd7854cb 224.TP 5
25d0c3fe 225\fB<LimitExcept \fImethod \fR...\fB> \fR... \fB</LimitExcept>\fR
79c4c4ad 226Specifies the HTTP methods that are being limited inside a Location section. HTTP method names are listed below in the section "HTTP METHOD NAMES".
37d9646b 227.\"#LimitRequestBody
ef416fc2 228.TP 5
25d0c3fe
MS
229\fBLimitRequestBody \fIsize\fR
230Specifies the maximum size of print files, IPP requests, and HTML form data.
231The default is "0" which disables the limit check.
37d9646b 232.\"#Listen
ef416fc2 233.TP 5
25d0c3fe 234\fBListen \fIipv4-address\fB:\fIport\fR
238c3832 235.TP 5
25d0c3fe 236\fBListen [\fIipv6-address\fB]:\fIport\fR
ef416fc2 237.TP 5
25d0c3fe 238\fBListen *:\fIport\fR
ef416fc2 239.TP 5
25d0c3fe
MS
240\fBListen \fI/path/to/domain/socket\fR
241Listens to the specified address and port or domain socket path for connections.
242Multiple Listen directives can be provided to listen on multiple addresses.
243The Listen directive is similar to the Port directive but allows you to restrict access to specific interfaces or networks.
37d9646b 244.\"#ListenBackLog
80ca4592 245.TP 5
25d0c3fe
MS
246\fBListenBackLog \fInumber\fR
247Specifies the number of pending connections that will be allowed.
248This normally only affects very busy servers that have reached the MaxClients limit, but can also be triggered by large numbers of simultaneous connections.
249When the limit is reached, the operating system will refuse additional connections until the scheduler can accept the pending ones.
250The default is the OS-defined default limit, typically either "5" for older operating systems or "128" for newer operating systems.
37d9646b 251.\"#Location
ef416fc2 252.TP 5
25d0c3fe
MS
253\fB<Location \fI/path\fB> \fR... \fB</Location>\fR
254Specifies access control for the named location.
255Paths are documented below in the section "LOCATION PATHS".
37d9646b 256.\"#LogDebugHistory
ef416fc2 257.TP 5
25d0c3fe
MS
258\fBLogDebugHistory \fInumber\fR
259Specifies the number of debugging messages that are retained for logging if an error occurs in a print job. Debug messages are logged regardless of the LogLevel setting.
37d9646b 260.\"#LogLevel
ef416fc2 261.TP 5
25d0c3fe 262\fBLogLevel \fRnone
ef416fc2 263.TP 5
25d0c3fe 264\fBLogLevel \fRemerg
ef416fc2 265.TP 5
25d0c3fe 266\fBLogLevel \fRalert
ef416fc2 267.TP 5
25d0c3fe 268\fBLogLevel \fRcrit
bd7854cb 269.TP 5
25d0c3fe 270\fBLogLevel \fRerror
ed486911 271.TP 5
25d0c3fe 272\fBLogLevel \fRwarn
ef416fc2 273.TP 5
25d0c3fe 274\fBLogLevel \fRnotice
ef416fc2 275.TP 5
25d0c3fe 276\fBLogLevel \fRinfo
178cb736 277.TP 5
25d0c3fe 278\fBLogLevel \fRdebug
bd7854cb 279.TP 5
25d0c3fe
MS
280\fBLogLevel \fRdebug2
281Specifies the level of logging for the ErrorLog file.
282The value "none" stops all logging while "debug2" logs everything.
283The default is "warn".
37d9646b 284.\"#LogTimeFormat
bd7854cb 285.TP 5
25d0c3fe 286\fBLogTimeFormat \fRstandard
bd7854cb 287.TP 5
25d0c3fe
MS
288\fBLogTimeFormat \fRusecs
289Specifies the format of the date and time in the log files.
290The value "standard" is the default and logs whole seconds while "usecs" logs microseconds.
37d9646b 291.\"#MaxClients
bd7854cb 292.TP 5
25d0c3fe
MS
293\fBMaxClients \fInumber\fR
294Specifies the maximum number of simultaneous clients that are allowed by the scheduler.
295The default is "100".
37d9646b 296.\"#MaxClientPerHost
bd7854cb 297.TP 5
25d0c3fe
MS
298\fBMaxClientsPerHost \fInumber\fR
299Specifies the maximum number of simultaneous clients that are allowed from a
300single address.
301The default is the MaxClients value.
37d9646b 302.\"#MaxCopies
bd7854cb 303.TP 5
25d0c3fe
MS
304\fBMaxCopies \fInumber\fR
305Specifies the maximum number of copies that a user can print of each job.
306The default is "9999".
37d9646b 307.\"#MaxHoldTime
25d0c3fe
MS
308.TP 5
309\fBMaxHoldTime \fIseconds\fR
310Specifies the maximum time a job may remain in the "indefinite" hold state before it is canceled.
311The default is "0" which disables cancellation of held jobs.
37d9646b 312.\"#MaxJobs
25d0c3fe
MS
313.TP 5
314\fBMaxJobs \fInumber\fR
315Specifies the maximum number of simultaneous jobs that are allowed.
316Set to "0" to allow an unlimited number of jobs.
317The default is "500".
37d9646b 318.\"#MaxJobsPerPrinter
25d0c3fe
MS
319.TP 5
320\fBMaxJobsPerPrinter \fInumber\fR
321Specifies the maximum number of simultaneous jobs that are allowed per printer.
322The default is "0" which allows up to MaxJobs jobs per printer.
37d9646b 323.\"#MaxJobsPerUser
25d0c3fe
MS
324.TP 5
325\fBMaxJobsPerUser \fInumber\fR
326Specifies the maximum number of simultaneous jobs that are allowed per user.
327The default is "0" which allows up to MaxJobs jobs per user.
37d9646b 328.\"#MaxJobTime
25d0c3fe
MS
329.TP 5
330\fBMaxJobTime \fIseconds\fR
331Specifies the maximum time a job may take to print before it is canceled.
332Set to "0" to disable cancellation of "stuck" jobs.
333The default is "10800" (3 hours).
37d9646b 334.\"#MaxLogSize
25d0c3fe
MS
335.TP 5
336\fBMaxLogSize \fIsize\fR
337Specifies the maximum size of the log files before they are rotated.
338The value "0" disables log rotation.
339The default is "1048576" (1MB).
37d9646b 340.\"#MultipleOperationTimeout
25d0c3fe
MS
341.TP 5
342\fBMultipleOperationTimeout \fIseconds\fR
343Specifies the maximum amount of time to allow between files in a multiple file print job.
344The default is "300" (5 minutes).
37d9646b 345.\"#PassEnv
25d0c3fe
MS
346.TP 5
347\fBPassEnv \fIvariable \fR[ ... \fIvariable \fR]
348Passes the specified environment variable(s) to child processes.
37d9646b 349.\"#Policy
bd7854cb 350.TP 5
25d0c3fe
MS
351\fB<Policy \fIname\fB> \fR... \fB</Policy>\fR
352Specifies access control for the named policy.
37d9646b 353.\"#Port
bd7854cb 354.TP 5
25d0c3fe
MS
355\fBPort \fInumber\fR
356Listens to the specified port number for connections.
37d9646b 357.\"#PreserveJobFiles
bd7854cb 358.TP 5
25d0c3fe 359\fBPreserveJobFiles Yes\fR
ef416fc2 360.TP 5
25d0c3fe 361\fBPreserveJobFiles No\fR
dfd5680b 362.TP 5
25d0c3fe
MS
363\fBPreserveJobFiles \fIseconds\fR
364Specifies whether job files (documents) are preserved after a job is printed.
365If a numeric value is specified, job files are preserved for the indicated number of seconds after printing.
366The default is "86400" (preserve 1 day).
37d9646b 367.\"#PreserveJobHistory
dfd5680b 368.TP 5
25d0c3fe 369\fBPreserveJobHistory Yes\fR
ef416fc2 370.TP 5
25d0c3fe 371\fBPreserveJobHistory No\fR
ef416fc2 372.TP 5
25d0c3fe
MS
373\fBPreserveJobHistory \fIseconds\fR
374Specifies whether the job history is preserved after a job is printed.
375If a numeric value is specified, the job history is preserved for the indicated number of seconds after printing.
376If "Yes", the job history is preserved until the MaxJobs limit is reached.
377The default is "Yes".
37d9646b 378.\"#ReloadTimeout
ef416fc2 379.TP 5
25d0c3fe
MS
380\fBReloadTimeout \fIseconds\fR
381Specifies the amount of time to wait for job completion before restarting the scheduler.
382The default is "30".
37d9646b 383.\"#ServerAdmin
ef416fc2 384.TP 5
25d0c3fe
MS
385\fBServerAdmin \fIemail-address\fR
386Specifies the email address of the server administrator.
387The default value is "root@ServerName".
37d9646b 388.\"#ServerAlias
ef416fc2 389.TP 5
25d0c3fe 390\fBServerAlias \fIhostname \fR[ ... \fIhostname \fR]
ef416fc2 391.TP 5
25d0c3fe
MS
392\fBServerAlias *\fR
393The ServerAlias directive is used for HTTP Host header validation when clients connect to the scheduler from external interfaces.
394Using the special name "*" can expose your system to known browser-based DNS rebinding attacks, even when accessing sites through a firewall.
395If the auto-discovery of alternate names does not work, we recommend listing each alternate name with a ServerAlias directive instead of using "*".
37d9646b 396.\"#ServerName
dcb445bc 397.TP 5
25d0c3fe
MS
398\fBServerName \fIhostname\fR
399Specifies the fully-qualified hostname of the server.
400The default is the value reported by the
401.BR hostname (1)
402command.
37d9646b 403.\"#ServerTokens
ef416fc2 404.TP 5
25d0c3fe 405\fBServerTokens None\fR
ef416fc2 406.TP 5
25d0c3fe 407\fBServerTokens ProductOnly\fR
dfd5680b 408.TP 5
25d0c3fe 409\fBServerTokens Major\fR
01ce6322 410.TP 5
25d0c3fe 411\fBServerTokens Minor\fR
ef416fc2 412.TP 5
25d0c3fe 413\fBServerTokens Minimal\fR
ef416fc2 414.TP 5
25d0c3fe 415\fBServerTokens OS\fR
ef416fc2 416.TP 5
25d0c3fe
MS
417\fBServerTokens Full\fR
418Specifies what information is included in the Server header of HTTP responses.
419"None" disables the Server header.
420"ProductOnly" reports "CUPS".
421"Major" reports "CUPS 2".
422"Minor" reports "CUPS 2.0".
423"Minimal" reports "CUPS 2.0.0".
053939b3 424"OS" reports "CUPS 2.0.0 (UNAME)" where UNAME is the output of the
25d0c3fe
MS
425.BR uname (1)
426command.
427"Full" reports "CUPS 2.0.0 (UNAME) IPP/2.0".
428The default is "Minimal".
37d9646b 429.\"#SetEnv
bd7854cb 430.TP 5
25d0c3fe
MS
431\fBSetEnv \fIvariable value\fR
432Set the specified environment variable to be passed to child processes.
37d9646b 433.\"#SSLListen
bd7854cb 434.TP 5
25d0c3fe 435\fBSSLListen \fIipv4-address\fB:\fIport\fR
ef416fc2 436.TP 5
25d0c3fe 437\fBSSLListen [\fIipv6-address\fB]:\fIport\fR
ef416fc2 438.TP 5
25d0c3fe
MS
439\fBSSLListen *:\fIport\fR
440Listens on the specified address and port for encrypted connections.
37d9646b 441.\"#SSLOptions
0af14961 442.TP 5
f2e87147 443\fBSSLOptions \fR[\fIAllowDH\fR] [\fIAllowRC4\fR] [\fIAllowSSL3\fR] [\fIDenyCBC\fR] [\fIDenyTLS1.0\fR]
63aefcd5
MS
444.TP 5
445\fBSSLOptions None\fR
446Sets encryption options.
447By default, CUPS only supports encryption using TLS v1.0 or higher using known secure cipher suites.
c61b78bd
PE
448The \fIAllowDH\fR option enables cipher suites using the horribly insecure anonymous Diffie-Hellman key negotiation which is vulnerable to man-in-the-middle attacks.
449The \fIAllowRC4\fR option enables the insecure 128-bit RC4 cipher suites, which are required for some older clients that do not implement newer ones.
450The \fIAllowSSL3\fR option enables the insecure SSL v3.0 protocol, which is required for some older clients that do not support TLS v1.0.
f2e87147
MS
451The \fIDenyCBC\fR option disables all CBC cipher suites.
452The \fIDenyTLS1.0\fR option disables TLS v1.0 support - this sets the minimum protocol version to TLS v1.1.
37d9646b 453.\"#SSLPort
63aefcd5 454.TP 5
25d0c3fe
MS
455\fBSSLPort \fIport\fR
456Listens on the specified port for encrypted connections.
37d9646b 457.\"#StrictConformance
ef416fc2 458.TP 5
25d0c3fe 459\fBStrictConformance Yes\fR
ef416fc2 460.TP 5
25d0c3fe
MS
461\fBStrictConformance No\fR
462Specifies whether the scheduler requires clients to strictly adhere to the IPP specifications.
463The default is "No".
37d9646b 464.\"#Timeout
ef416fc2 465.TP 5
25d0c3fe
MS
466\fBTimeout \fIseconds\fR
467Specifies the HTTP request timeout.
468The default is "300" (5 minutes).
37d9646b 469.\"#WebInterface
ef416fc2 470.TP 5
25d0c3fe 471\fBWebInterface yes\fR
ef416fc2 472.TP 5
25d0c3fe
MS
473\fBWebInterface no\fR
474Specifies whether the web interface is enabled.
475The default is "No".
476.SS HTTP METHOD NAMES
477The following HTTP methods are supported by
478.BR cupsd (8):
ef416fc2 479.TP 5
25d0c3fe
MS
480GET
481Used by a client to download icons and other printer resources and to access the CUPS web interface.
88f9aafc 482.TP 5
25d0c3fe
MS
483HEAD
484Used by a client to get the type, size, and modification date of resources.
e07d4801 485.TP 5
25d0c3fe
MS
486OPTIONS
487Used by a client to establish a secure (SSL/TLS) connection.
ef416fc2 488.TP 5
25d0c3fe
MS
489POST
490Used by a client to submit IPP requests and HTML forms from the CUPS web interface.
bd7854cb 491.TP 5
25d0c3fe
MS
492PUT
493Used by a client to upload configuration files.
494.SS IPP OPERATION NAMES
495The following IPP operations are supported by
496.BR cupsd (8):
bd7854cb 497.TP 5
25d0c3fe
MS
498CUPS\-Accept\-Jobs
499Allows a printer to accept new jobs.
bd7854cb 500.TP 5
25d0c3fe
MS
501CUPS\-Add\-Modify\-Class
502Adds or modifies a printer class.
bd7854cb 503.TP 5
25d0c3fe
MS
504CUPS\-Add\-Modify\-Printer
505Adds or modifies a printer.
bd7854cb 506.TP 5
25d0c3fe
MS
507CUPS\-Authenticate\-Job
508Releases a job that is held for authentication.
bd7854cb 509.TP 5
25d0c3fe
MS
510CUPS\-Delete\-Class
511Deletes a printer class.
ef416fc2 512.TP 5
25d0c3fe
MS
513CUPS\-Delete\-Printer
514Deletes a printer.
ef416fc2 515.TP 5
25d0c3fe
MS
516CUPS\-Get\-Classes
517Gets a list of printer classes.
ef416fc2 518.TP 5
25d0c3fe
MS
519CUPS\-Get\-Default
520Gets the server default printer or printer class.
ef416fc2 521.TP 5
25d0c3fe
MS
522CUPS\-Get\-Devices
523Gets a list of devices that are currently available.
a29fd7dd 524.TP 5
25d0c3fe
MS
525CUPS\-Get\-Document
526Gets a document file for a job.
a29fd7dd 527.TP 5
25d0c3fe
MS
528CUPS\-Get\-PPD
529Gets a PPD file.
e0660879 530.TP 5
25d0c3fe
MS
531CUPS\-Get\-PPDs
532Gets a list of installed PPD files.
e0660879 533.TP 5
25d0c3fe
MS
534CUPS\-Get\-Printers
535Gets a list of printers.
536.TP 5
537CUPS\-Move\-Job
538Moves a job.
539.TP 5
540CUPS\-Reject\-Jobs
541Prevents a printer from accepting new jobs.
542.TP 5
543CUPS\-Set\-Default
544Sets the server default printer or printer class.
545.TP 5
546Cancel\-Job
547Cancels a job.
548.TP 5
549Cancel\-Jobs
550Cancels one or more jobs.
551.TP 5
552Cancel\-My\-Jobs
553Cancels one or more jobs creates by a user.
554.TP 5
555Cancel\-Subscription
556Cancels a subscription.
557.TP 5
558Close\-Job
559Closes a job that is waiting for more documents.
560.TP 5
561Create\-Job
562Creates a new job with no documents.
563.TP 5
564Create\-Job\-Subscriptions
565Creates a subscription for job events.
566.TP 5
567Create\-Printer\-Subscriptions
568Creates a subscription for printer events.
569.TP 5
570Get\-Job\-Attributes
571Gets information about a job.
572.TP 5
573Get\-Jobs
574Gets a list of jobs.
575.TP 5
576Get\-Notifications
577Gets a list of event notifications for a subscription.
578.TP 5
579Get\-Printer\-Attributes
580Gets information about a printer or printer class.
581.TP 5
582Get\-Subscription\-Attributes
583Gets information about a subscription.
584.TP 5
585Get\-Subscriptions
586Gets a list of subscriptions.
587.TP 5
588Hold\-Job
589Holds a job from printing.
590.TP 5
591Hold\-New\-Jobs
592Holds all new jobs from printing.
593.TP 5
594Pause\-Printer
595Stops processing of jobs by a printer or printer class.
596.TP 5
597Pause\-Printer\-After\-Current\-Job
598Stops processing of jobs by a printer or printer class after the current job is finished.
599.TP 5
600Print\-Job
601Creates a new job with a single document.
602.TP 5
603Purge\-Jobs
604Cancels one or more jobs and deletes the job history.
605.TP 5
606Release\-Held\-New\-Jobs
607Allows previously held jobs to print.
608.TP 5
609Release\-Job
610Allows a job to print.
611.TP 5
612Renew\-Subscription
613Renews a subscription.
614.TP 5
615Restart\-Job
616Reprints a job, if possible.
617.TP 5
618Send\-Document
619Adds a document to a job.
620.TP 5
621Set\-Job\-Attributes
622Changes job information.
623.TP 5
624Set\-Printer\-Attributes
625Changes printer or printer class information.
626.TP 5
627Validate\-Job
628Validates options for a new job.
629.SS LOCATION PATHS
630The following paths are commonly used when configuring
631.BR cupsd (8):
632.TP 5
633/
634The path for all get operations (get-printers, get-jobs, etc.)
635.TP 5
636/admin
637The path for all administration operations (add-printer, delete-printer, start-printer, etc.)
638.TP 5
639/admin/conf
640The path for access to the CUPS configuration files (cupsd.conf, client.conf, etc.)
641.TP 5
642/admin/log
643The path for access to the CUPS log files (access_log, error_log, page_log)
644.TP 5
645/classes
646The path for all printer classes
647.TP 5
648/classes/name
649The resource for the named printer class
650.TP 5
651/jobs
652The path for all jobs (hold-job, release-job, etc.)
653.TP 5
654/jobs/id
adffc545 655The path for the specified job
25d0c3fe
MS
656.TP 5
657/printers
658The path for all printers
659.TP 5
660/printers/name
661The path for the named printer
662.TP 5
663/printers/name.png
664The icon file path for the named printer
665.TP 5
666/printers/name.ppd
667The PPD file path for the named printer
668.SS DIRECTIVES VALID WITHIN LOCATION AND LIMIT SECTIONS
669The following directives may be placed inside Location and Limit sections in the \fBcupsd.conf\fR file:
670.TP 5
671\fBAllow all\fR
672.TP 5
673\fBAllow none\fR
674.TP 5
675\fBAllow \fIhost.domain.com\fR
676.TP 5
677\fBAllow *.\fIdomain.com\fR
678.TP 5
679\fBAllow \fIipv4-address\fR
680.TP 5
681\fBAllow \fIipv4-address\fB/\fInetmask\fR
682.TP 5
683\fBAllow \fIipv4-address\fB/\fImm\fR
e0660879 684.TP 5
25d0c3fe 685\fBAllow [\fIipv6-address\fB]\fR
e0660879 686.TP 5
25d0c3fe 687\fBAllow [\fIipv6-address\fB]/\fImm\fR
e0660879 688.TP 5
25d0c3fe 689\fBAllow @IF(\fIname\fB)\fR
e0660879 690.TP 5
25d0c3fe
MS
691\fBAllow @LOCAL\fR
692Allows access from the named hosts, domains, addresses, or interfaces.
693The Order directive controls whether Allow lines are evaluated before or after Deny lines.
e0660879 694.TP 5
25d0c3fe 695\fBAuthType None\fR
e0660879 696.TP 5
25d0c3fe 697\fBAuthType Basic\fR
e0660879 698.TP 5
25d0c3fe 699\fBAuthType Default\fR
e0660879 700.TP 5
25d0c3fe
MS
701\fBAuthType Negotiate\fR
702Specifies the type of authentication required.
703The value "Default" corresponds to the DefaultAuthType value.
e0660879 704.TP 5
25d0c3fe 705\fBDeny all\fR
e0660879 706.TP 5
25d0c3fe 707\fBDeny none\fR
e0660879 708.TP 5
25d0c3fe 709\fBDeny \fIhost.domain.com\fR
e0660879 710.TP 5
25d0c3fe 711\fBDeny *.\fIdomain.com\fR
e0660879 712.TP 5
25d0c3fe 713\fBDeny \fIipv4-address\fR
e0660879 714.TP 5
25d0c3fe 715\fBDeny \fIipv4-address\fB/\fInetmask\fR
e0660879 716.TP 5
25d0c3fe 717\fBDeny \fIipv4-address\fB/\fImm\fR
e0660879 718.TP 5
25d0c3fe 719\fBDeny [\fIipv6-address\fB]\fR
e0660879 720.TP 5
25d0c3fe 721\fBDeny [\fIipv6-address\fB]/\fImm\fR
e0660879 722.TP 5
25d0c3fe 723\fBDeny @IF(\fIname\fB)\fR
e0660879 724.TP 5
25d0c3fe
MS
725\fBDeny @LOCAL\fR
726Denies access from the named hosts, domains, addresses, or interfaces.
727The Order directive controls whether Deny lines are evaluated before or after Allow lines.
e0660879 728.TP 5
25d0c3fe 729\fBEncryption IfRequested\fR
e0660879 730.TP 5
25d0c3fe 731\fBEncryption Never\fR
e0660879 732.TP 5
25d0c3fe
MS
733\fBEncryption Required\fR
734Specifies the level of encryption that is required for a particular location.
735The default value is "IfRequested".
e0660879 736.TP 5
25d0c3fe
MS
737\fBOrder allow,deny\fR
738Specifies that access is denied by default. Allow lines are then processed followed by Deny lines to determine whether a client may access a particular resource.
e0660879 739.TP 5
25d0c3fe
MS
740\fBOrder deny,allow\fR
741Specifies that access is allowed by default. Deny lines are then processed followed by Allow lines to determine whether a client may access a particular resource.
e0660879 742.TP 5
25d0c3fe
MS
743\fBRequire group \fIgroup-name \fR[ \fIgroup-name \fR... ]
744Specifies that an authenticated user must be a member of one of the named groups.
e0660879 745.TP 5
25d0c3fe
MS
746\fBRequire user {\fIuser-name\fR|\fB@\fIgroup-name\fR} ...
747Specifies that an authenticated user must match one of the named users or be a member of one of the named groups.
748The group name "@SYSTEM" corresponds to the list of groups defined by the SystemGroup directive in the
749.BR cups-files.conf (5)
750file.
751The group name "@OWNER" corresponds to the owner of the resource, for example the person that submitted a print job.
f80e6f38 752Note: The 'root' user is not special and must be granted privileges like any other user account.
e0660879 753.TP 5
25d0c3fe
MS
754\fBRequire valid-user\fR
755Specifies that any authenticated user is acceptable.
e0660879 756.TP 5
25d0c3fe
MS
757\fBSatisfy all\fR
758Specifies that all Allow, AuthType, Deny, Order, and Require conditions must be satisfied to allow access.
e0660879 759.TP 5
25d0c3fe
MS
760\fBSatisfy any\fR
761Specifies that any a client may access a resource if either the authentication (AuthType/Require) or address (Allow/Deny/Order) conditions are satisfied.
762For example, this can be used to require authentication only for remote accesses.
763.SS DIRECTIVES VALID WITHIN POLICY SECTIONS
764The following directives may be placed inside Policy sections in the \fBcupsd.conf\fR file:
e0660879 765.TP 5
25d0c3fe 766\fBJobPrivateAccess all\fR
e0660879 767.TP 5
25d0c3fe 768\fBJobPrivateAccess default\fR
e0660879 769.TP 5
25d0c3fe
MS
770\fBJobPrivateAccess \fR{\fIuser\fR|\fB@\fIgroup\fR|\fB@ACL\fR|\fB@OWNER\fR|\fB@SYSTEM\fR} ...
771Specifies an access list for a job's private values.
772The "default" access list is "@OWNER @SYSTEM".
773"@ACL" maps to the printer's requesting-user-name-allowed or requesting-user-name-denied values.
774"@OWNER" maps to the job's owner.
775"@SYSTEM" maps to the groups listed for the SystemGroup directive in the
776.BR cups-files.conf (5)
777file.
e0660879 778.TP 5
25d0c3fe 779\fBJobPrivateValues all\fR
e0660879 780.TP 5
25d0c3fe 781\fBJobPrivateValues default\fR
e0660879 782.TP 5
25d0c3fe 783\fBJobPrivateValues none\fR
e0660879 784.TP 5
25d0c3fe
MS
785\fBJobPrivateValues \fIattribute-name \fR[ ... \fIattribute-name \fR]
786Specifies the list of job values to make private.
787The "default" values are "job-name", "job-originating-host-name", "job-originating-user-name", and "phone".
e0660879 788.TP 5
25d0c3fe 789\fBSubscriptionPrivateAccess all\fR
10d09e33 790.TP 5
25d0c3fe 791\fBSubscriptionPrivateAccess default\fR
10d09e33 792.TP 5
25d0c3fe
MS
793\fBSubscriptionPrivateAccess \fR{\fIuser\fR|\fB@\fIgroup\fR|\fB@ACL\fR|\fB@OWNER\fR|\fB@SYSTEM\fR} ...
794Specifies an access list for a subscription's private values.
795The "default" access list is "@OWNER @SYSTEM".
796"@ACL" maps to the printer's requesting-user-name-allowed or requesting-user-name-denied values.
797"@OWNER" maps to the job's owner.
798"@SYSTEM" maps to the groups listed for the SystemGroup directive in the
799.BR cups-files.conf (5)
800file.
10d09e33 801.TP 5
25d0c3fe 802\fBSubscriptionPrivateValues all\fR
10d09e33 803.TP 5
25d0c3fe 804\fBSubscriptionPrivateValues default\fR
10d09e33 805.TP 5
25d0c3fe 806\fBSubscriptionPrivateValues none\fR
10d09e33 807.TP 5
25d0c3fe
MS
808\fBSubscriptionPrivateValues \fIattribute-name \fR[ ... \fIattribute-name \fR]
809Specifies the list of subscription values to make private.
810The "default" values are "notify-events", "notify-pull-method", "notify-recipient-uri", "notify-subscriber-user-name", and "notify-user-data".
7c7347a3
MS
811.SS DEPRECATED DIRECTIVES
812The following directives are deprecated and will be removed in a future release of CUPS:
813.\"#Classification
814.TP 5
815\fBClassification \fIbanner\fR
816.br
817Specifies the security classification of the server.
818Any valid banner name can be used, including "classified", "confidential", "secret", "topsecret", and "unclassified", or the banner can be omitted to disable secure printing functions.
819The default is no classification banner.
820.\"#ClassifyOverride
821.TP 5
822\fBClassifyOverride Yes\fR
823.TP 5
824\fBClassifyOverride No\fR
825.br
826Specifies whether users may override the classification (cover page) of individual print jobs using the "job-sheets" option.
827The default is "No".
828.\"#PageLogFormat
829.TP 5
830\fBPageLogFormat \fIformat-string\fR
831Specifies the format of PageLog lines.
832Sequences beginning with percent (%) characters are replaced with the corresponding information, while all other characters are copied literally.
833The following percent sequences are recognized:
834.nf
835
836 "%%" inserts a single percent character.
837 "%{name}" inserts the value of the specified IPP attribute.
838 "%C" inserts the number of copies for the current page.
839 "%P" inserts the current page number.
840 "%T" inserts the current date and time in common log format.
841 "%j" inserts the job ID.
842 "%p" inserts the printer name.
843 "%u" inserts the username.
844
845.fi
846The default is the empty string, which disables page logging.
847The string "%p %u %j %T %P %C %{job-billing} %{job-originating-host-name} %{job-name} %{media} %{sides}" creates a page log with the standard items.
848.\"#RIPCache
849.TP 5
850\fBRIPCache \fIsize\fR
851Specifies the maximum amount of memory to use when converting documents into bitmaps for a printer.
852The default is "128m".
25d0c3fe
MS
853.SH CONFORMING TO
854The \fBcupsd.conf\fR file format is based on the Apache HTTP Server configuration file format.
855.SH EXAMPLES
856Log everything with a maximum log file size of 32 megabytes:
857.nf
858
859 AccessLogLevel all
860 LogLevel debug2
861 MaxLogSize 32m
862
863.fi
864Require authentication for accesses from outside the 10. network:
865.nf
866
867 <Location />
868 Order allow,deny
869 Allow from 10./8
870 AuthType Basic
871 Require valid-user
872 Satisfy any
873 </Location>
874.fi
ef416fc2 875.SH SEE ALSO
25d0c3fe
MS
876.BR classes.conf (5),
877.BR cups-files.conf (5),
878.BR cupsd (8),
879.BR mime.convs (5),
880.BR mime.types (5),
881.BR printers.conf (5),
882.BR subscriptions.conf (5),
883CUPS Online Help (http://localhost:631/help)
ef416fc2 884.SH COPYRIGHT
bd5a2f28 885Copyright \[co] 2007-2017 by Apple Inc.