opendkim.conf

package: opendkim

title: opendkim.conf(5)

summary: Configuration file for opendkim

text:
# opendkim.conf(5)

## NAME
opendkim.conf - Configuration file for opendkim

## LOCATION
/etc/opendkim.conf

## DESCRIPTION
opendkim(8) implements the DKIM specification for signing and verifying e-mail messages on a per-domain basis. This file is its configuration file.

Blank lines are ignored. Lines containing a hash ("#") character are truncated at the hash character to allow for comments in the file.

Other content should be the name of a parameter, followed by white space, followed by the value of that parameter, each on a separate line.

For parameters that are Boolean in nature, only the first byte of the value is processed. For positive values, the following are accepted: "T", "t", "Y", "y", "1". For negative values, the following are accepted: "F", "f", "N", "n", "0".

Many, but not all, of these parameters are also available as command line options to opendkim(8). However, new parameters are generally not added as command line options so the complete set of options is available here, and thus use of the configuration file is encouraged. In some future release, the set of available command line options is likely to get trimmed.

See the opendkim(8) man page for details about how and when the configuration file contents are reloaded.

Some of these parameters are listed as having a type of "dataset". See the opendkim(8) man page for a description of such parameters.

Unless otherwise stated, Boolean values default to "false", integer values default to 0, and string and dataset values default to being undefined.

## PARAMETERS
AllowSHA1Only (Boolean)

Permit verify mode when only SHA1 support is available. RFC6376 requires that verifiers implement both SHA1 and SHA256 support. Setting this feature changes the absence of SHA256 support from an error to a warning.

AlwaysAddARHeader (Boolean)

Add an "Authentication-Results:" header field even to unsigned messages from domains with no "signs all" policy. The reported DKIM result will be "none" in such cases. Normally unsigned mail from non-strict domains does not cause the results header field to be added.

AuthservID (string)

Sets the "authserv-id" to use when generating the Authentication-Results: header field after verifying a message. The default is to use the name of the MTA processing the message. If the string "HOSTNAME" is provided, the name of the host running the filter (as returned by the gethostname(3) function) will be used.

AuthservIDWithJobID (Boolean)

If "true", requests that the authserv-id portion of the added Authentication-Results: header fields contain the job ID of the message being evaluated.

AutoRestart (Boolean)

Automatically re-start on failures. Use with caution; if the filter fails instantly after it starts, this can cause a tight fork(2) loop.

AutoRestartCount (integer)

Sets the maximum automatic restart count. After this number of automatic restarts, the filter will give up and terminate. A value of 0 implies no limit; this is the default.

AutoRestartRate (string)

Sets the maximum automatic restart rate. If the filter begins restarting faster than the rate defined here, it will give up and terminate. This is a string of the form n/t[u] where n is an integer limiting the count of restarts in the given interval and t[u] defines the time interval through which the rate is calculated; t is an integer and u defines the units thus represented ("s" or "S" for seconds, the default; "m" or "M" for minutes; "h" or "H" for hours; "d" or "D" for days). For example, a value of "10/1h" limits the restarts to 10 in one hour. There is no default, meaning restart rate is not limited.

Background (Boolean)

Causes opendkim to fork and exits immediately, leaving the service running in the background. The default is "true".

BaseDirectory (string)

If set, instructs the filter to change to the specified directory using chdir(2) before doing anything else. This means any files referenced elsewhere in the configuration file can be specified relative to this directory. It's also useful for arranging that any crash dumps will be saved to a specific location.

BodyLengthDB (dataset)

Requests that opendkim include a "l=" body length tag when the set contains any of the envelope recipient addresses. The addresses presented are tested against the database in various forms as described under the SigningTable setting (below). This feature of the protocol exists to improve the likelihood that a signature will survive transit through a mailing list server, as they commonly append footers to messages. Note, however, that this creates a potential security issue since someone could add arbitrary text to the signed message and the signature would still validate. See the DKIM specification for details.

BogusKey (string)

Instructs the filter to treat a passing signature associated with a bogus (forged) key in a special way. Possible values are neutral (return a "neutral" result), none (take no special action) and fail (return a "fail" result; this is the default). (Not enabled for this installation.)

CaptureUnknownErrors (Boolean)

When set, and on systems where MTA quarantine is available, the filter will request quarantine of a message that results in an internal error or resource exhaustion.

Canonicalization (string)

Selects the canonicalization method(s) to be used when signing messages. When verifying, the message's DKIM-Signature: header field specifies the canonicalization method. The recognized values are relaxed and simple as defined by the DKIM specification. The default is simple. The value may include two different canonicalizations separated by a slash ("/") character, in which case the first will be applied to the header and the second to the body.

ChangeRootDirectory (string)

Requests that the operating system change the effective root directory of the process to the one specified here prior to beginning execution. chroot(2) requires superuser access. A warning will be generated if UserID is not also set.

ClockDrift (integer)

Sets the tolerance in seconds to be applied when determining whether a signature was either expired or generated in the future. The default is 300.

Diagnostics (Boolean)

Requests the inclusion of "z=" tags in signatures, which encode the original header field set for use by verifiers when diagnosing verification failures. Not recommended for normal operation.

DiagnosticDirectory (string)

Directory into which to write diagnostic reports when message verification fails on a message bearing a "z=" tag. If not set (the default), these files are not generated.

DisableCryptoInit (Boolean)

If set, skips initialization of the SSL library initialization steps, which are normaly required in multi-threaded environments. This assumes some other library opendkim is using will do the required initialization and shutdown.

DNSConnect (Boolean)

Requests that the asynchronous resolver start using TCP immediately rather than using UDP until TCP is actually needed. Does not work with all resolvers.

DNSTimeout (integer)

Sets the DNS timeout in seconds. A value of 0 causes an infinite wait. The default is 5. Ignored if not using an asynchronous resolver package. See also the NOTES section below.

Domain (dataset)

A set of domains whose mail should be signed by this filter. Mail from other domains will be verified rather than being signed. This parameter is not required if a SigningTable is in use; in that case, the list of signed domains is implied by the lines in that file.

This parameter is ignored if a KeyTable is defined.

DomainKeysCompat (boolean)

If set, backward compatibility with DomainKeys (RFC4870) key records is enabled. When not set, such keys are considered to be syntactically invalid. The default is "false".

DontSignMailTo (dataset)

A set of e-mail address, mail to which should never be signed by the filter. Note that this is an "any" feature; if any one of the recipients of the message matches a member of this list, the message will not be signed.

EnableCoredumps (boolean)

On systems that have such support, make an explicit request to the kernel to dump cores when the filter crashes for some reason. Some modern UNIX systems suppress core dumps during crashes for security reasons if the user ID has changed during the lifetime of the process. Currently only supported on Linux.

ExemptDomains (dataset)

Specifies a set of domains, mail from which should be ignored entirely by the filter. This is similar to the PeerList setting except that it bases its decision on the sender of the message as identified from the header fields or other message data, not the identity of the SMTP client sending the message.

ExternalIgnoreList (dataset)

Identifies a set of "external" hosts that may send mail through the server as one of the signing domains without credentials as such. This has the effect of suppressing the "external host (hostname) tried to send mail as (domain)" log messages. Entries in the data set should be of the same form as those of the PeerList option below. The set is empty by default.

FinalPolicyScript (string)

Gives the name of a Lua script that should be run after the entire message has been received. This can be used to enact local policy decisions such as message rejection, quarantine, rerouting, etc. based on signatures found on the message, the results of attempts to verify them, and other properties of the message or signatures. See opendkim-lua(3) for details. (Not enabled for this installation.)

FixCRLF (Boolean)

Requests that the DKIM library convert bare CRs and LFs to CRLFs during body canonicalization, anticipating that an MTA somewhere before delivery will do that conversion anyway. The default is to leave them as-is.

IdentityHeader (string)

This specifies the header field where an identity is stored. (Experimental feature not enabled for this installation.)

IdentityHeaderRemove (Boolean)

Remove the IdentityHeader after signing. (Experimental feature not enabled for this installation.)

IgnoreMalformedMail (boolean)

Silently passes malformed messages without alteration. This includes messages that fail the RequiredHeaders check, if enabled. The default is to pass those messages but add an Authentication-Results field indicating that they were malformed.

Include (string)

Names a file to be opened and read as an additional configuration file. Nesting is allowed to a maximum of five levels.

InternalHosts (dataset)

Identifies a set internal hosts whose mail should be signed rather than verified. Entries in this data set follow the same form as those of the PeerList option below. If not specified, the default of "127.0.0.1" is applied. Naturally, providing a value here overrides the default, so if mail from 127.0.0.1 should be signed, the list provided here should include that address explicitly.

KeepAuthResults (boolean)

Suppresses removal of Authentication-Results header fields containing DKIM results apparently added by this filter (usually the result of a misconfiguration or a forgery).

KeepTemporaryFiles (boolean)

Instructs the filter to create temporary files containing the header and body canonicalizations of messages that are signed or verified. The location of these files can be set using the TemporaryDirectory parameter. Intended only for debugging verification problems.

KeyFile (string)

Gives the location of a PEM-formatted private key to be used for signing all messages. Ignored if a KeyTable is defined.

KeyTable (dataset)

Gives the location of a file mapping key names to signing keys. If present, overrides any KeyFile setting in the configuration file. The data set named here maps each key name to three values: (a) the name of the domain to use in the signature's "d=" value; (b) the name of the selector to use in the signature's "s=" value; and (c) either a private key or a path to a file containing a private key. If the first value consists solely of a percent sign ("%") character, it will be replaced by the apparent domain of the sender when generating a signature. If the third value starts with a slash ("/") character, or "./" or "../", then it is presumed to refer to a file from which the private key should be read, otherwise it is itself a PEM-encoded private key or a base64-encoded DER private key; a "%" in the third value in this case will be replaced by the apparent domain name of the sender. The SigningTable (see below) is used to select records from this table to be used to add signatures based on the message sender.

LDAPAuthMechanism (string)

Names the authentication mechanism to use when connecting to an LDAP server. The default is the empty string, meaning "simple" authentication should be done.

LDAPAuthName (string)

Specifies the authenticating name to use when using SASL to authenticate to an LDAP server. Requires SASL support be installed on the local system. There is no default.

LDAPAuthRealm (string)

Specifies the authentication realm to use when using SASL to authenticate to an LDAP server. Requires SASL support be installed on the local system. There is no default.

LDAPAuthUser (string)

Specifies the authenticating user to use when using SASL to authenticate to an LDAP server. Requires SASL support be installed on the local system. There is no default.

LDAPBindPassword (string)

Specifies the password to use when conducting an LDAP "bind" operation. There is no default.

LDAPBindUser (string)

Specifies the user ID to use when conducting an LDAP "bind" operation. There is no default.

LDAPDisableCache (Boolean)

Suppresses creation of a local cache in front of LDAP queries.

LDAPKeepaliveIdle (integer)

Sets the number of seconds a connection to an LDAP server needs to remain idle before TCP starts sending keepalive probes. If not specified, the LDAP library default is used.

LDAPKeepaliveInterval (integer)

Sets the interval in seconds between TCP keepalive probes. If not specified, the LDAP library default is used.

LDAPKeepaliveProbes (integer)

Sets the maximum number of keepalive probes TCP should send before abandoning the connection. If not specified, the LDAP library default is used.

LDAPTimeout (integer)

Sets the time in seconds after which an LDAP operation should be abandoned. The default is 5.

LDAPUseTLS (Boolean)

Indicates whether or not a TLS connection should be established when contacting an LDAP server. The default is "False".

LogResults (boolean)

If logging is enabled (see Syslog below), requests that the results of evaluation of all signatures that were at least partly intact (i.e., the "d=", "s=", and "b=" tags could be extracted).

LogWhy (boolean)

If logging is enabled (see Syslog below), issues very detailed logging about the logic behind the filter's decision to either sign a message or verify it. The logic behind the decision is non-trivial and can be confusing to administrators not familiar with its operation. A description of how the decision is made can be found in the OPERATIONS section of the opendkim(8) man page. This causes a large increase in the amount of log data generated for each message, so it should be limited to debugging use and not enabled for general operation.

MacroList (dataset)

Defines a set of MTA-provided macros that should be checked to see if the sender has been determined to be a local user and therefore whether or not the message should be signed. If a value is specified matching a macro name in the data set, the value of the macro must match a value specified (matching is case-sensitive), otherwise the macro must be defined but may contain any value. The set is empty by default, meaning macros are not considered when making the sign-verify decision. The general format of the value is value1[|value2[|...]]; if one or more value is defined then the macro must be set to one of the listed values, otherwise the macro must be set but can contain any value. In order for the macro and its value to be available to the filter for checking, the MTA must send it during the protocol exchange. This is either accomplished via manual configuration of the MTA to send the desired macros or, for MTA/filter combinations that support the feature, the filter can request those macros that are of interest. The latter is a feature negotiated at the time the filter receives a connection from the MTA and its availability depends upon the version of milter used to compile the filter and the version of the MTA making the connection.

This data set must be of type "file" or "csl".

MaximumHeaders (integer)

Defines the maximum number of bytes the header block of a message may consume before the filter will reject the message. This mitigates a denial-of-service attack in which a client connects to the MTA and begins feeding an unbounded number of header fields of arbitrary size; since the filter keeps a cache of these, the attacker could cause the filter to allocate an unspecified amount of memory. The default is 65536; a value of 0 removes the limit.

MaximumSignaturesToVerify (integer)

Defines the maximum number of signatures on a message for which verification should be conducted. The default is three. Signatures are selected from the top of the message downward. If TrustSignaturesFrom is set, signatures from domains in that data set are always verified, which may consume part or all of, or even exceed, this limit.

MaximumSignedBytes (integer)

Specifies the maximum number of bytes of message body to be signed. Messages shorter than this limit will be signed in their entirety. Setting this value implies use of BodyLengthDB for all addresses.

MilterDebug (integer)

Sets the debug level to be requested from the milter library. The default is 0.

Minimum (string)

Instructs the verification code to fail messages for which a partial signature was received. There are three possible formats: min indicating at least min bytes of the message must be signed (or if the message is smaller than min then all of it must be signed); min% requiring that at least min percent of the received message must be signed; and min+ meaning there may be no more than min bytes of unsigned data appended to the message for it to be considered valid.

MinimumKeyBits (integer)

Establishes a minimum key size for acceptable signatures. Signatures with smaller key sizes, even if they otherwise pass DKIM validation, will me marked as invalid. The default is 1024, which accepts all signatures. A value of 0 causes the default to be used.

Mode (string)

Selects operating modes. The string is a concatenation of characters that indicate which mode(s) of operation are desired. Valid modes are s (signer) and v (verifier). The default is sv except in test mode (see the opendkim(8) man page) in which case the default is v. When signing mode is enabled, one of the following combinations must also be set: (a) Domain, KeyFile, Selector, no KeyTable, no SigningTable; (b) KeyTable, SigningTable, no Domain, no KeyFile, no Selector; (c) KeyTable, SetupPolicyScript, no Domain, no KeyFile, no Selector.

MTA (dataset)

A set of MTA names (a la the sendmail(8) DaemonPortOptions Name parameter) whose mail should be signed by this filter. There is no default, meaning MTA name is not considered when making the sign-verify decision.

MTACommand (string)

Specifies the path to an executable to be used for sending mail such as that generated by SendReports. The default is /usr/sbin/sendmail. The executable should accept typical sendmail(8) command line options "-t" (take addresses from message body) and "-f" (set envelope sender), accept the new message on its standard input, and return a non-zero exit status on any error.

MultipleSignatures (Boolean)

Allow addition of multiple signatures when a signing table is in use. See SigningTable for more information.

MustBeSigned (dataset)

Specifies a set of header fields that, if present, must be covered by the DKIM signature when verifying a message. If a header field in this set is present in the message and is not signed, the filter will treat even an otherwise valid signature as invalid. The default is an empty list.

Nameservers (string)

Provides a comma-separated list of IP addresses that are to be used when doing DNS queries to retrieve DKIM keys, VBR records, etc. These override any local defaults built in to the resolver in use, which may be defined in /etc/resolv.conf or hard-coded into the software.

NoHeaderB (Boolean)

If set, this feature suppresses the use of "header.b" tags in added Authentication-Results header fields. The default is "false", which means those tags will be applied.

OmitHeaders (dataset)

Specifies a set of header fields that should be omitted when generating signatures. If an entry in the list names any header field that is mandated by the DKIM specification, the entry is ignored. A set of header fields is listed in the DKIM specification (RFC6376, Section 5.4) as "SHOULD NOT" be signed; the default list for this parameter contains those fields (Return-Path, Received, Comments, Keywords, Bcc, Resent-Bcc and DKIM-Signature). To omit no headers, simply use the string "." (or any string that will match no header field names). Specifying a list with this parameter replaces the default entirely, unless one entry is "*" in which case the list is interpreted as a delta to the default; for example, "*,+foobar" will use the entire default list plus the name "foobar", while "*,-Bcc" would use the entire default list except for the "Bcc" entry.

On-BadSignature (string)

Selects the action to be taken when a signature fails to validate. Possible values (with abbreviated forms in parentheses): accept (a) accept the message; discard (d) discard the message; quarantine (q) quarantine the message; reject (r) reject the message; tempfail (t) temp-fail the message. The default is accept. Note that the "t" (testing) flag in a DKIM key bypasses this behaviour; a bad signature that references a testing flag will still be delivered, though the added Authentication-Results field will indicate both the failed result and the test mode so that consumers of the message can take appropriate action.

On-Default (string)

Selects the action to be taken when any verification or internal error of any kind is encountered. This is processed before the other "On-" values so it can be used as a blanket setting followed by specific overrides.

On-DNSError (string)

Selects the action to be taken when a transient DNS error is encountered. Possible values are the same as those for On-BadSignature. The default is tempfail.

On-InternalError (string)

Selects the action to be taken when an internal error of some kind is encountered. Possible values are the same as those for On-BadSignature. The default is tempfail.

On-KeyNotFound (string)

Selects the action to be taken when the key referenced by a signature is not present in the DNS. Possible values are the same as those for On-BadSignature. The default is accept.

On-NoSignature (string)

Selects the action to be taken when a message arrives unsigned. Possible values are the same as those for On-BadSignature. The default is accept.

On-Security (string)

Selects the action to be taken when a message arrives containing properties that may be a security concern. Possible values are the same as those for On-BadSignature. The default is tempfail.

On-SignatureError (string)

Selects the action to be taken when a message cannot be signed because of issues with the message or the key provided for signing. Possible values are the same as those for On-BadSignature. The default is reject.

OversignHeaders (dataset)

Specifies a set of header fields that should be included in all signature header lists (the "h=" tag) once more than the number of times they were actually present in the signed message. The set is empty by default. The purpose of this, and especially of listing an absent header field, is to prevent the addition of important fields between the signer and the verifier. Since the verifier would include that header field when performing verification if it had been added by an intermediary, the signed message and the verified message were different and the verification would fail. Note that listing a field name here and not listing it in the SignHeaders list is likely to generate invalid signatures.

PeerList (dataset)

Identifies a set of "peers" that identifies clients whose connections should be accepted without processing by this filter. The set should contain on each line a hostname, domain name (e.g. ".example.com"), IP address, an IPv6 address (including an IPv4 mapped address), or a CIDR-style IP specification (e.g. "192.168.1.0/24"). An entry beginning with a bang ("!") character means "not", allowing exclusions of specific hosts that are otherwise members of larger sets. Host and domain names are matched first, then the IP or IPv6 address depending on the connection type. More precise entries are preferred over less precise ones, i.e. "192.168.1.1" will match before "!192.168.1.0/24". The text form of IPv6 addresses will be forced to lowercase when queried (RFC5952), so the contents of this data set should also use lowercase. The IP address portion of an entry may optionally contain square brackets; both forms (with and without) will be checked.

PidFile (string)

Specifies the path to a file that should be created at process start containing the process ID.

POPDBFile (dataset)

Requests that the filter consult a set for IP addresses that should be allowed for signing. This feature was designed for POP-before-SMTP datastores. (Not enabled for this installation.)

Quarantine (Boolean)

Requests that messages which fail verification be quarantined by the MTA. (Requires a sufficiently recent version of the milter library.)

QueryCache (Boolean)

Instructs the DKIM library to maintain its own local cache of keys and policies retrieved from DNS, rather than relying on the nameserver for caching service. Useful if the nameserver being used by the filter is not local. (Not enabled for this installation.)

RedirectFailuresTo (address)

Messages bearing signatures that failed to verify are redirected to the specified address. The original envelope recipient set is recorded in the header before redirection occurs. By default, no redirection is done.

RemoveARAll (Boolean)

Removes all Authentication-Results: header fields that also satisfy the requirements of RemoveARFrom below. By default, only those containing a DKIM result are removed.

RemoveARFrom (dataset)

Defines a set of hostnames whose Authentication-Results: header fields should be removed before the message is passed for delivery. By default only those header fields matching the local host's canonical name will be removed. Matching is only done on full hostnames (e.g. "host.example.com") or on domain names (e.g. ".example.com").

RemoveOldSignatures (Boolean)

Removes all existing signatures when operating in signing mode.

ReplaceHeaders (data set)

Defines a set of header fields that should be affected by the text replacement rules defined by the ReplaceRules setting. By default, all header fields are included. (Experimental feature not enabled for this installation.)

ReplaceRules (string)

Specifies a file containing a list of text replacement rules that are applied to the message header fields to replace certain content expected to be changed as the message passes through local MTAs. This can be used to accommodate expected changes such as are made to From: fields by MTA "masquerade" features. Each entry in the file consists of a POSIX regular expression, followed by a tab (ASCII 9), followed by the text that should be used to replace the text matching the expression. The '#' character denotes the beginning of a comment and text from that point on in a single line is ignored. Blank lines are also skipped. (Experimental feature not enabled for this installation.)

ReportAddress (string)

Specifies the string to use in the From: header field for outgoing reports (see SendReports below). If not specified, the executing user and local hostname will be used to construct the address.

ReportBccAddress (string)

Specifies address(es) to include in a Bcc: header field on outgoing reports (see SendReports below). If multiple addresses are required, they should be comma separated.

RequestReports (boolean)

When signing, includes a request for signature evaluation failures in the signature. (See RFC6651 for details.)

RequiredHeaders (boolean)

Checks all messages for compliance with RFC5322 header field count requirements. Non-compliant messages are rejected.

RequireSafeKeys (boolean)

When reading a key file, a message will be logged if the key file has the read or write bit set other than for the owner or for a group that the executing process is in. With this feature set to "true", the filter will further consider this an error and refuse to make use of the file's contents. The default is "true".

ResignAll (boolean)

Where ResignMailTo triggers a re-signing action, this flag indicates whether or not all mail should be signed (if set) versus only verified mail being signed (if not set). The default is "false". (Experimental feature not enabled for this installation.)

ResignMailTo (dataset)

Checks each message recipient against the specified dataset for a matching record. The full address is checked in each case, then the hostname, then each domain preceded by ".". If there is a match, the value returned is presumed to be the name of a key in the KeyTable (if defined) to be used to re-sign the message in addition to verifying it. If there is a match without a KeyTable, the default key is applied. (Experimental feature not enabled for this installation.)

ResolverConfiguration (string)

Provides the given string as configuration information to the underlying resolver. For the standard UNIX resolver, this is unused; for Unbound, the string contains a filename that is considered to be a configuration file. There is no default.

ResolverTracing (Boolean)

Requests resolver tracing features be enabled, if available. The effect of this depends on how debugging features of the resolver might be implemented. Currently only effective with the OpenDKIM asynchronous resolver library.

ScreenPolicyScript (string)

Gives the name of a Lua script that should be run after all of the header fields have been processed for a message; in particular, this is useful after all DKIM signatures have been detected and initial evaluation has been done. The script has access to all of the header fields and connection information and can that certain signatures be ignored based on that information. See opendkim-lua(3) for details. (Not enabled for this installation.)

SelectCanonicalizationHeader (string)

Defines a header field name which, if present, adjusts which canonicalization will be used to generate an outgoing signature. Overrides the Canonicalization setting if the header field is present. The default is "X-Canonicalization".

Selector (string)

Defines the name of the selector to be used when signing messages. See the DKIM specification for details. Used only when signing with a single key; see the SigningTable parameter below for more information. This parameter is ignored if a KeyTable is defined.

SenderHeaders (dataset)

Specifies an ordered list of header fields that should be searched to determine the sender of a message. The first header field found is the one whose value is used. This is mainly used when signing for deciding which signing request(s) to make. By default, the "From" header field is the only one checked. See the OmitHeaders setting for a description of possible values.

SenderMacro (string)

Use the milter macro string to determine the sender of the message. (Experimental feature not enabled for this installation.)

SendReports (Boolean)

If true, when a signature verification fails and the signature included a reporting request ("r=y") and the signing domain advertises a reporting address (i.e. ra=user) in a reporting record in the DNS, the filter will send a structured report to that address containing details needed to reproduce the problem. See RFC6651 for a complete description of this mechanism.

SetupPolicyScript (string)

Gives the name of a Lua script that should be run once all header fields for a message have arrived. The script has access to all of the header fields and connection information and can request DKIM verification or signing based on that information. See opendkim-lua(3) for details. (Not enabled for this installation.)

SignatureAlgorithm (string)

Selects the signing algorithm to use when generating signatures. Use 'opendkim -V' to see the list of supported algorithms. The default is rsa-sha256 if it is available, otherwise it will be rsa-sha1.

SignatureTTL (integer)

Sets the time-to-live, in seconds, of signatures generated by the filter. If not set, no expiration time is added to signatures.

SignHeaders (dataset)

Specifies the set of header fields that should be included when generating signatures. If the list omits any header field that is mandated by the DKIM specification, those fields are implicitly added. By default, those fields listed in the DKIM specification as "SHOULD" be signed (RFC6376, Section 5.4) will be signed by the filter. See the OmitHeaders configuration option for more information about the format and interpretation of this field.

SigningTable (dataset)

Defines a table used to select one or more signatures to apply to a message based on the address found in the From: header field. Keys in this table vary depending on the type of table used; values in this data set should include one field that contains a name found in the KeyTable (see above) that identifies which key should be used in generating the signature, and an optional second field naming the signer of the message that will be included in the "i=" tag in the generated signature. Note that the "i=" value will not be included in the signature if it conflicts with the signing domain (the "d=" value). If the first field contains only a "%" character, it will be replaced by the domain found in the From: header field. Similarly, within the optional second field, any "%" character will be replaced by the domain found in the From: header field.

If this table specifies a regular expression file ("refile"), then the keys are wildcard patterns that are matched against the address found in the From: header field. Entries are checked in the order in which they appear in the file.

For all other database types, the full user@host is checked first, then simply host, then user@.domain (with all superdomains checked in sequence, so "foo.example.com" would first check "user@foo.example.com", then "user@.example.com", then "user@.com"), then .domain, then user@*, and finally *.

In any case, only the first match is applied, unless MultipleSignatures is enabled in which case all matches are applied.

SMTPURI (string)

Specifies a URI (e.g., "smtp://localhost") to which mail should be sent via SMTP when notifications are generated. (Not enabled for this installation.)

Socket (string)

Specifies the socket that should be established by the filter to receive connections from sendmail(8) in order to provide service. socketspec is in one of two forms: local:path, which creates a UNIX domain socket at the specified path, or inet:port[@host] or inet6:port[@host] which creates a TCP socket on the specified port and in the specified protocol family. If the host is not given as either a hostname or an IP address, the socket will be listening on all interfaces. A literal IP address must be enclosed in square brackets. This option is mandatory either in the configuration file or on the command line.

SoftStart (Boolean)

If set, the inability to connect and authenticate to an LDAP or SQL server will not prevent the filter from starting, and reconnections will be attempted for each query. The default is "False".

SoftwareHeader (Boolean)

Causes opendkim to add an "DKIM-Filter" header field indicating the presence of this filter in the path of the message from injection to delivery. The product's name, version, and the job ID are included in the header field's contents. Note that the header field is not added if the Mode setting causes the message to be ignored (e.g., if only signing mode is enabled and the configuration causes the message not to be signed, or only verify mode is enabled and configuration would otherwise have caused the message to be signed, then it will not have this header field added).

Statistics (filename)

This specifies a file in which to store DKIM transaction statistics. See opendkim-stats(8) for a mechanism to parse the file's contents, and opendkim-importstats() for a mechanism to translate the file's contents into SQL database insertions. (Experimental feature not enabled for this installation.)

StatisticsName (string)

Defines the name to be used as the reporting host in statistics logs. By default, the local host's name returned by gethostname(3) is used. (Experimental feature not enabled for this installation.)

StatisticsPrefix (string)

When AnonymousStatistics is enabled, this string may be specified and will be prepended to all data before hashing for more complete anonymization. This means two records from different sources referencing the same source will still produce different hashes, meaning such correlation is now only possible within the data from a single repoter.

StrictHeaders (Boolean)

If set, instructs the DKIM library to refuse processing of a message if the header field count does not conform to RFC5322 Section 3.6.

StrictTestMode (Boolean)

Selects strict CRLF mode during testing (see the -t command line flag in the opendkim(8) man page); messages for which all header fields and body lines are not CRLF-terminated are considered malformed and will produce an error.

SubDomains (Boolean)

Sign subdomains of those listed by the Domain parameter as well as the actual domains.

Syslog (Boolean)

Log via calls to syslog(3) any interesting activity.

SyslogFacility (string)

Log via calls to syslog(3) using the named facility. The facility names are the same as the ones allowed in syslog.conf(5). The default is "mail".

SyslogSuccess (Boolean)

Log via calls to syslog(3) additional entries indicating successful signing or verification of messages.

TemporaryDirectory (string)

Specifies the directory in which temporary canonicalization files should be written. The default is to use the libdkim default location, currently /tmp.

TestDNSData (data set)

Provides a data set whose keys will be treated as DNS record names and values as TXT record contents. Intended for use during automated testing.

TestPublicKeys (string)

Names a file from which public keys should be read. Intended for use only during automated testing.

TrustAnchorFile (string)

Specifies a file from which trust anchor data should be read when doing DNS queries and applying the DNSSEC protocol. This is currently ignored unless the underlying library is compiled to use Unbound; see the documentation at at http://unbound.net for the expected format of this file.

TrustSignaturesFrom (dataset)

This value consists of a set of domains that are considered trustworthy in terms of third-party signatures. That is, if a message arrives with a signature from a domain that doesn't match the domain in the From: header, this setting determines whether or not that signature will be trusted. If this value is undefined, all signatures are trusted.

UMask (integer)

Requests a specific permissions mask to be used for file creation. This only really applies to creation of the socket when Socket specifies a UNIX domain socket, and to the PidFile (if any); temporary files are created by the mkstemp(3) function that enforces a specific file mode on creation regardless of the process umask. See umask(2) for more information.

UnprotectedKey (string)

Instructs the filter to treat a passing signature associated with a key found in an insecure (i.e. not protected by DNSSEC) DNS record in a special way. Possible values are neutral (return a "neutral" result), none (take no special action; this is the default) and fail (return a "fail" result). (Not enabled for this installation.)

UserID (string)

Attempts to become the specified userid before starting operations. The value is of the form userid[:group]. The process will be assigned all of the groups and primary group ID of the named userid unless an alternate group is specified.

VBR-Certifiers (string)

The default certifiers if not specified in X-VBR-Certifiers header field. (Experimental feature not enabled for this installation.)

VBR-PurgeFields (string)

If set, arranges to remove X-VBR-Certifiers and X-VBR-Type fields on messages prior to sending them. (Experimental feature not enabled for this installation.)

VBR-TrustedCertifiers (string)

A colon or comma sparated list of trusted certifiers to accept when verifying VBR-Info header field. (Experimental feature not enabled for this installation.)

VBR-TrustedCertifiersOnly (Boolean)

By default, the certifiers that are in both the trusted certifiers list (above) and those in the message's VBR-Info header field will be checked for vouching. With this option set, the trusted certifiers will be checked and the ones claimed by the message will be ignored. (Experimental feature not enabled for this installation.)

VBR-Type (string)

This default VBR type if not specified in the X-VBR-Type header field. (Experimental feature not enabled for this installation.)

WeakSyntaxChecks (Boolean)

Requests that the library continue processing messages even if syntax errors are discovered early in message analysis. This means, for example, that a signed message with a mangled From: field will still proceed to verification even if the author's domain could not be determined.

## NOTES
When using DNS timeouts (see the DNSTimeout option above), be sure not to use a timeout that is larger than the timeout being used for interaction between sendmail and the filter. Otherwise, the MTA could abort a message while waiting for a reply from the filter, which in turn is still waiting for a DNS reply.

Features that involve specification of IPv4 addresses or CIDR blocks will use the inet_addr(3) function to parse that information. Users should be familiar with the way that function handles the non-trivial cases (for example, "192.0.2/24" and "192.0.2.0/24" are not the same thing).

## FILES
/etc/opendkim.conf

Default location of this file.

## VERSION
This man page covers version 2.11.0 of opendkim.

## COPYRIGHT
Copyright (c) 2007, 2008, Sendmail, Inc. and its suppliers. All rights reserved.

Copyright (c) 2009-2015, The Trusted Domain Project. All rights reserved.

## SEE ALSO
opendkim(8), opendkim-lua(3), sendmail(8)

RFC5451 - Message Header Field for Indicating Message Authentication Status

RFC5617 - DKIM Author Domain Signing Practises

RFC5965 - An Extensible Format for Email Feedback Reports

RFC6008 - Authentication-Results Registration for Differentiating among Cryptographic Results

RFC6376 - DomainKeys Identified Mail

RFC6651 - Extensions to DomainKeys Identified Mail (DKIM) for Failure Reporting


opendmarc.conf

package: opendmarc

title: opendmarc.conf(5)

summary: Configuration file for opendmarc

text:
# opendmarc.conf(5)

## NAME
opendmarc.conf - Configuration file for opendmarc

## LOCATION
/etc/opendmarc.conf

## DESCRIPTION
opendmarc(8) implements the proposed DMARC specification for message authentication, policy enforcement, and reporting. This file is its configuration file.

Blank lines are ignored. Lines containing a hash ("#") character are truncated at the hash character to allow for comments in the file.

Other content should be the name of a parameter, followed by white space, followed by the value of that parameter, each on a separate line.

For parameters that are Boolean in nature, only the first byte of the value is processed. For positive values, the following are accepted: "T", "t", "Y", "y", "1". For negative values, the following are accepted: "F", "f", "N", "n", "0".

Some, but not all, of these parameters are also available as command line options to opendmarc(8). However, new parameters are generally not added as command line options so the complete set of options is available here, and thus use of the configuration file is encouraged. In some future release, the set of available command line options is likely to get trimmed.

See the opendmarc(8) man page for details about how and when the configuration file contents are reloaded.

Unless otherwise stated, Boolean values default to "false", integer values default to 0, and string and dataset values default to being undefined.

## PARAMETERS
AuthservID (string)

Sets the "authserv-id" to use when generating the Authentication-Results: header field after verifying a message. The default is to use the name of the MTA processing the message. If the string "HOSTNAME" is provided, the name of the host running the filter (as returned by the gethostname(3) function) will be used.

AuthservIDWithJobID (Boolean)

If "true", requests that the authserv-id portion of the added Authentication-Results: header fields contain the job ID of the message being evaluated.

AutoRestart (Boolean)

Automatically re-start on failures. Use with caution; if the filter fails instantly after it starts, this can cause a tight fork(2) loop.

AutoRestartCount (integer)

Sets the maximum automatic restart count. After this number of automatic restarts, the filter will give up and terminate. A value of 0 implies no limit; this is the default.

AutoRestartRate (string)

Sets the maximum automatic restart rate. If the filter begins restarting faster than the rate defined here, it will give up and terminate. This is a string of the form n/t[u] where n is an integer limiting the count of restarts in the given interval and t[u] defines the time interval through which the rate is calculated; t is an integer and u defines the units thus represented ("s" or "S" for seconds, the default; "m" or "M" for minutes; "h" or "H" for hours; "d" or "D" for days). For example, a value of "10/1h" limits the restarts to 10 in one hour. There is no default, meaning restart rate is not limited.

Background (Boolean)

Causes opendmarc to fork and exits immediately, leaving the service running in the background. The default is "true".

BaseDirectory (string)

If set, instructs the filter to change to the specified directory using chdir(2) before doing anything else. This means any files referenced elsewhere in the configuration file can be specified relative to this directory. It's also useful for arranging that any crash dumps will be saved to a specific location.

ChangeRootDirectory (string)

Requests that the operating system change the effective root directory of the process to the one specified here prior to beginning execution. chroot (2) requires superuser access. A warning will be generated if UserID is not also set.

CopyFailuresTo (string)

Adds the specified recipient to the message's envelope if it fails the DMARC evaluation.

DomainWhitelist (string)

A brief list of whitelisted domains for which ARC signature headers are trusted as determined by evaluating entries in the "arc.chain" field found in a locally generated Authentication-Results header. This list will be concatenated with DomainWhitelistFile (if provided).

DomainWhitelistFile (string)

A comprehensive list of whitelisted domains for which ARC signature headers are trusted as determined by evaluating entries in the "arc.chain" field found in a locally generated Authentication-Results header. This list will be concatenated with DomainWhitelist (if provided).

DomainWhitelistSize (integer)

Sets the capacity of the whitelisted domains data structure. The value specifies the maximum number of entries including domains listed in the DomainWhitelist configuration parameter and the domains listed in the DomainWhiteListFile. The final size will be increased by approximately 20% to increase the efficiency of the hashing algorithm.

DNSTimeout (integer)

Sets the DNS timeout in seconds. A value of 0 causes an infinite wait. The default is 5. Ignored if not using an asynchronous resolver package.

EnableCoredumps (Boolean)

On systems that have such support, make an explicit request to the kernel to dump cores when the filter crashes for some reason. Some modern UNIX systems suppress core dumps during crashes for security reasons if the user ID has changed during the lifetime of the process. Currently only supported on Linux.

FailureReports (Boolean)

Enables generation of failure reports when the DMARC test fails and the purported sender of the message has requested such reports. Reports are formatted per RFC6591.

FailureReportsBcc (string)

When failure reports are enabled and one is to be generated, always send one to the address(es) specified here. If a failure report is requested by the domain owner, the address(es) are added in a Bcc: field. If no request is made, they address(es) are used in a To: field. There is no default.

FailureReportsOnNone (Boolean)

Supplementary to the previous setting, enables generation of failure reports for sending domains that publish a "none" policy.

FailureReportsSentBy (string)

Sets the value of the From: field to be used when sending failure reports (see above). The default is to use the userid of the user executing the filter and the local host name to construct an email address.

HistoryFile (string)

If set, specifies the location of a text file to which records are written that can be used to generate DMARC aggregate reports. Records are batches of rows containing information about a single received message, and include all relevant information needed to generate a DMARC aggregate report. It is expected that this will not be used in its raw form, but rather periodically imported into a relational database from which the aggregate reports can be extracted using opendmarc-importstats(8).

HoldQuarantinedMessages (Boolean)

If set, the milter will signal to the mta that messages with p=quarantine, which fail dmarc authentication, should be held in the MTA's "Hold" or "Quarantine" queue. The name varies by MTA. If false, messsages will be accepted and passed along with the regular mail flow, and the quarantine will be left up to downstream MTA/MDA/MUA filters, if any, to handle by re-evaluating the headers, including the Authentication-Results header added by this filter. The default is "false".

HoldQuarantinedMessages (Boolean)

If set, the milter will signal to the mta that messages with p=quarantine, which fail dmarc authentication, should be held in the MTA's "Hold" or "Quarantine" queue. The name varies by MTA. If false, messsages will be accepted and passed along with the regular mail flow, and the quarantine will be left up to downstream MTA/MDA/MUA filters, if any, to handle by re-evaluating the headers, including the Authentication-Results header added by this filter. The default is "false".

IgnoreAuthenticatedClients (Boolean)

If set, causes mail from authenticated clients (i.e., those that used SMTP AUTH) to be ignored by the filter. The default is "false".

IgnoreHosts (string)

Specifies the path to a file that contains a list of hostnames, IP addresses, and/or CIDR expressions identifying hosts whose SMTP connections are to be ignored by the filter. If not specified, defaults to "127.0.0.1" only.

IgnoreMailFrom (string)

Gives a list of domain names whose mail (based on the From: domain) is to be ignored by the filter. The list should be comma-separated. Matching against this list is case-insensitive. The default is an empty list, meaning no mail is ignored.

MilterDebug (integer)

Sets the debug level to be requested from the milter library. The default is 0.

PidFile (string)

Specifies the path to a file that should be created at process start containing the process ID.

PublicSuffixList (string)

Specifies the path to a file that contains top-level domains (TLDs) that will be used to compute the Organizational Domain for a given domain name, as described in the DMARC specification. If not provided, the filter will not be able to determine the Organizational Domain and only the presented domain will be evaluated. This file should be periodically updated. One location to retrieve the file from is https://publicsuffix.org/list/

RecordAllMessages (Boolean)

If set and HistoryFile is in use, all received messages are recorded to the history file. If not set (the default), only messages for which the From: domain published a DMARC record will be recorded in the history file.

RejectFailures (Boolean)

If set, messages will be rejected if they fail the DMARC evaluation, or temp-failed if evaluation could not be completed. By default, no message will be rejected or temp-failed regardless of the outcome of the DMARC evaluation of the message. Instead, an Authentication-Results header field will be added. The default is "false".

RejectMultiValueFrom (Boolean)

If set, messages with multiple addresses in the From: field of the message will be rejected unless all domain names in that field are the same. They will otherwise be ignored by the filter (the default).

ReportCommand (string)

Indicates the shell command to which failure reports should be passed for delivery when FailureReports is enabled. Defaults to /usr/sbin/sendmail.

RequiredHeaders (Boolean)

If set, the filter will ensure the header of the message conforms to the basic header field count restrictions laid out in RFC5322, Section 3.6. Messages failing this test are rejected without further processing. A From: field from which no domain name could be extracted will also be rejected.

Socket (string)

Specifies the socket that should be established by the filter to receive connections from sendmail(8) in order to provide service. socketspec is in one of two forms: local:path, which creates a UNIX domain socket at the specified path, or inet:port[@host] or inet6:port[@host] which creates a TCP socket on the specified port for the appropriate protocol family. If the host is not given as either a hostname or an IP address, the socket will be listening on all interfaces. This option is mandatory either in the configuration file or on the command line. If an IP address is used, it must be enclosed in square brackets.

SoftwareHeader (Boolean)

Causes opendmarc to add a "DMARC-Filter" header field indicating the presence of this filter in the path of the message from injection to delivery. The product's name, version, and the job ID are included in the header field's contents.

SPFIgnoreResults (Boolean)

Causes the filter to ignore any SPF results in the header of the message. This is useful if you want the filter to perform SPF checks itself, or because you don't trust the arriving header. The default is "false".

SPFSelfValidate (Boolean)

Causes the filter to perform a fallback SPF check itself when it can find no SPF results in the message header. If SPFIgnoreResults is also set, it never looks for SPF results in headers and always performs the SPF check itself when this is set. The default is "false".

Syslog (Boolean)

Log via calls to syslog(3) any interesting activity.

SyslogFacility (string)

Log via calls to syslog(3) using the named facility. The facility names are the same as the ones allowed in syslog.conf(5). The default is "mail".

TrustedAuthservIDs (string)

Provides a list of authserv-ids that are to be used to identify Authentication-Results header fields whose contents are to be assumed as valid input for the DMARC assessment. To provide a list, separate values by commas. If the string "HOSTNAME" is provided, the name of the host running the filter (as returned by the gethostname(3) function) will be used. Matching against this list is case-insensitive. The default is to use the value of AuthservID.

UMask (integer)

Requests a specific permissions mask to be used for file creation. This only really applies to creation of the socket when Socket specifies a UNIX domain socket, and to the PidFile (if any); temporary files are created by the mkstemp(3) function that enforces a specific file mode on creation regardless of the process umask. See umask(2) for more information.

UserID (string)

Attempts to become the specified userid before starting operations. The value is of the form userid[:group]. The process will be assigned all of the groups and primary group ID of the named userid unless an alternate group is specified.

## FILES
/etc/opendmarc.conf

Default location of this file.

## VERSION
This man page covers version 1.4.2 of opendmarc.

## COPYRIGHT
Copyright (c) 2012-2015, 2018, 2021, The Trusted Domain Project. All rights reserved.

## SEE ALSO
opendmarc(8), opendmarc-importstats(8), sendmail(8)

RFC4408 - Sender Policy Framework

RFC5451 - Message Header Field for Indicating Message Authentication Status

RFC5965 - An Extensible Format for Email Feedback Reports

RFC6376 - DomainKeys Identified Mail

RFC6591 - Authentication Failure Reporting Using the Abuse Reporting Format

branch: sisyphus


ods-kasp

package: opendnssec

title: ods-kasp(5)

summary: OpenDNSSEC kasp specification

text:
# ods-kasp(5)

## NAME
ods-kasp - OpenDNSSEC kasp specification

## SYNOPSIS
/etc/opendnssec/kasp.xml

## DESCRIPTION
The kasp file describes the parameters of the DNSSEC Key and Signing Policy (KASP), the policy used to sign zones. Each policy comprises a series of parameters that define the way the zone is signed.

KASP Parameters

A policy has a set of common parameters to identify the policy.

Policy Name

The name is used to link a policy to a zone that needs to be signed. Each policy must have a unique name. The policy named "default" is special, as it is associated with all zones that do not have a policy explicitly associated with them.

Policy Description

A policy can have a description associated with it.

Signatures Parameters

This section lists the parameters for the signatures created using the policy.

Signature Resign Interval

This is the interval between runs of the signer. For example, a zone that has a Re-sign Interval of PT2H (2 hours) is handled by the signer every 2 hours.

Signature Refresh Interval

The Refresh Interval is describing when a signature should be refreshed. As signatures are typically valid for much longer than the interval between runs of the signer, there is no need to regenerate the signatures each time the signer is running. This means that the Re-sign Interval must be smaller than the Refresh Interval. In order to make refreshing signatures possible, the Re-sign Interval should be at least half of the Refresh Interval. In the case a signer runs and detects that there is no change to the data being signed, signatures may be refreshed. A signature will be refreshed when the time until the signature expiration is closer than the Refresh Interval.

Signature Validity

The Signature Validity describes how long the signatures are valid for. This parameter groups two elements of information. The Default Signature Validity is the validity interval for all RRSIG records except those related to NSEC or NSEC3 records. For these records, the validity period is given by the value of the Denial Signature Validity.

Signature Jitter

The Signature Jitter (j) is the value added to or subtracted from the expiration time of signatures to ensure that not all signatures expire at the same time. The actual value of the jitter is a random value, uniformly ranging between Minus Signature Jitter and Signature Jitter [-j...j]. This value is added to Signature Validity to determine the signature expiration time.

Signature Inception Offset

This is a duration subtracted from the time at which a record is signed to give the inception time of the RRSIG record. This is required to allow for clock skew between the signing system and the system on which the signature is checked. Without it, the possibility exists that the checking system could retrieve a signature whose start time is later than the current time. The relationship between these elements is shown below in Figure 1.

Inception Signing Expiration

time time time

| | | | |

|---------------------|---------------------------|.......|.......|

| | | | |

[ +/- Jitter ]

| Inception offset | |

|<------------------->| Validity Interval |

| |<--------------------------------->|

Inception Signing reuse reuse new Expiration

time time signature time

| | | | | |

|---------------------|-----------------------------------|

| | | | | |

<-----> <-----> <----->

Re-sign Interval

|Refresh Interval|

|<-------------->|

| |

Figure 1: Signature Timing Parameters

Authenticated Denial of Existence Parameters

Authenticated denial of existence - proving that domain names do not exist in the zone - is discussed in this section. Below, the list of the parameters is given for creating NSEC or NSEC3 records using the policy.

NSEC or NSEC3

If the NSEC scheme is used to implement authenticated denial of existence, there are no record elements we can tune. If NSEC3 [RFC5155] is used, there are some more options.

NSEC3 Opt-Out

Whether to enable or disable "opt-out". This is an optimisation that means that NSEC3 records are only created for authoritative data or for secure delegations; insecure delegations have no NSEC3 records. For zones where a majority of the entries are delegations that are not signed - typically TLDs during the take-up phase of DNSSEC - this reduces the number of DNSSEC records in the zone.

NSEC3 Re-salt Interval

The is the interval between generating new salt values for the hashing algorithm.

NSEC3 Hash Parameters

The NSEC3 Hash Parameters tells parameters related to NSEC3.

NSEC3 Hash Algorithm

The NSEC3 Hash Algorithm tells what hashing algorithm should be used to create the NSEC3 records.

NSEC3 Hash Iterations

The NSEC3 Hash Iterations shows how many iterations of the hash function should be performed over the original owner name.

NSEC3 Hash Salt Length

The NSEC3 Hash Salt Length provides the length of the salt value to be generated.

Key Parameters

This section covers parameters related to keys. There are a number of parameters relating to both zone-signing keys (ZSK) and key-signing keys (KSK).

DNSKEY TTL

This is the time-to-live value for the DNSKEY resource records.

Key Retire Safety

The Key Retire Safety is the retire safety margin for the keys. This interval is a safety margin added to calculated timing values to ensure that keys are retired without there being a chance of signatures created with the keys being considered invalid.

Key Publish Safety

The Key Publish is the publish safety margins for the keys. This interval is the safety margin added to calculated timing values to ensure that keys are published and without there being a chance of signatures created with the keys being considered invalid.

Key Sharing

If multiple zones are associated with a policy, a key may be shared between zones. For example, if you have 100 zones then you will only use one set of keys instead of 100 sets. This will safe space in your HSM.

Key Purging Interval

Key Purging is the event where keys marked as dead (as defined by draft-ietf-dnsop-dnssec- key-timing [key-timing]) will be automatically purged from the key database. The Key Purging Interval is the interval of when Key Purging is done.

KSK Parameters

There are parameters specific for the KSK.

KSK Algorithm

The KSK Algorithm determines the algorithm used for KSKs.

KSK Lifetime

The KSK Lifetime determines how long the KSK is used for before it is must be rolled.

KSK Repository

The KSK Repository determines the location of the KSKs.

Manual KSK Rollover

It may be desirable to force that a key rollover will only be initiated on the command by the operator. Note that if KSK rollover is done automatically, there is currently still a step for the KSK that needs manual intervention, where the corresponding DS record for the key needs to be published to the parent before the rollover is completed.

ZSK Parameters

The same parameters for the KSK are available for the ZSK. The split between the series of parameters is that with a ZSK/KSK Split Signing Scheme, the values for the parameters may be different.

ZSK Algorithm

The ZSK Algorithm determines the algorithm used for ZSKs.

ZSK Lifetime

The ZSK Lifetime determines how long the ZSK is used for before it is must be rolled.

ZSK Repository

The ZSK Repository determines the location of the ZSKs.

Manual ZSK Rollover

The ZSK rollover will be fully automatic if Manual ZSK Rollover is disabled.

Zone Parameters

General information concerning the zones is described here.

Propagation Delay

The Propagation Delay is the amount of time needed for information changes at the master server for the zone to work its way through to all the secondary nameservers.

SOA Parameters

These parameters are necessary for maintaining the SOA record in the signed zone. These values will override values set for the SOA record in the input zone.

SOA TTL

This is the time-to-live of the SOA record.

SOA MINIUM

This is value for the MINIMUM RDATA element in the SOA record.

SOA Serial

This represents the format of the serial number in the signed zone. This is one of the following:

counter: Use an increasing counter (but use the serial from the unsigned zone

if possible).

datecounter: Use increasing counter in YYYYMMDDxx format (xx is the number of

increments within each day, starting at 00).

unixtime: The serial number is set to the "Unix time" (seconds since 00:00 on

1 January 1970 (UTC)) at which the signer is run.

keep: Keep the serial from the unsigned zone (do not re-sign unless it has been

incremented). This way, no signed zone is created unless the zone operator

explicitly initiated a zone update.

Parent Zone Parameters

If a DNSSEC zone is in a chain of trust, digest information about the KSKs used in the zone will be stored in DS records in the parent zone. To properly roll keys, timing information about the parent zone must be configured.

Propagation Delay

The Propagation Delay parameter related to the parent zone is the interval between the time a new KSK is published in the zone and the time that the DS record appears in the parent zone. In reality, this is a variable value. The value for the Propagation Delay in the policy should be a estimate.

DS TTL

This represents the DS time-to-live. The DS TTL should be set to the TTL of the DS record in the parent zone.

SOA Parameters

The SOA Parameters related to the parent zone gives information about the parent's SOA record. These are necessary to calculate the timings in particular rollover scenarios.

SOA TTL

This should be set to the time-to-live of the parent zone SOA record.

SOA MINIUM

This should be set to the value of the MINIMUM RDATA element in the parent zone SOA record.

## SEE ALSO
ods-control(8), ods-enforcerd(8), ods-enforcer(8), ods-signerd(8), pds-signer(8), ods-ksmutil(1), ods-kaspcheck(1), ods-timing(5), ods-hsmutil(1), ods-hsmspeed(1), opendnssec(7), ISO 8601, http://www.opendnssec.org/

## AUTHORS
OpenDNSSEC was written by NLnet Labs as part of the OpenDNSSEC project. http://www.opendnssec.org/


ods-timing

title: ods-timing(5)

summary: OpenDNSSEC timing specification

text:
# ods-timing(5)

## NAME
ods-timing - OpenDNSSEC timing specification

## SYNOPSIS
/etc/opendnssec/conf.xml

/etc/opendnssec/kasp.xml

/etc/opendnssec/zonelist.xml

## DESCRIPTION
The configuration files of OpenDNSSEC need to have timing descriptions, notably for periods. These descriptions follow ISO 8601 with exceptions for the duration of a month and a year, as these periods would be allowed to vary if ISO 8601 were strictly adhered to.

Durations are represented by the format P[n]Y[n]M[n]DT[n]H[n]M[n]S. In these representations, the [n] is replaced by the value for each of the date and time elements that follow the [n]. Leading zeros are not required. The capital letters P, Y, M, W, D, T, H, M and S are designators for each of the date and time elements and are not replaced

P

is the duration designator (historically called "period") placed at the start of the duration representation.

Y

is the year designator that follows the value for the number of years.

M

is the month designator that follows the value for the number of months.

W

is the week designator that follows the value for the number of weeks.

D

is the day designator that follows the value for the number of days.

T

is the time designator that precedes the time components of the representation.

H

is the hour designator that follows the value for the number of hours.

M

is the minute designator that follows the value for the number of minutes.

S

is the second designator that follows the value for the number of seconds.

For example, P3Y6M4DT12H30M5S represents a duration of "three years, six months, four days, twelve hours, thirty minutes, and five seconds". Date and time elements including their designator may be omitted if their value is zero, and lower order elements may also be omitted for reduced precision. For example, P23DT23H and P4Y are both acceptable duration representations.

## EXCEPTION
A year or month vary in duration depending on the current date. For OpenDNSSEC, we assume fixed values.

One month

is assumed to be 31 days.

One year

is assumed to be 365 days.

This exception may or may not change in future releases of OpenDNSSEC. The reason for making this exception is to avoid complicating this software in a way that may not meet any practical need.

## SEE ALSO
ods-control(8), ods-enforcerd(8), ods-enforcer(8), ods-signerd(8), ods-signer(8), ods-kasp(5), ods-kaspcheck(1), ods-timing(5), ods-hsmspeed(1), ods-hsmutil(1), opendnssec(7), ISO 8601, http://www.opendnssec.org/

## AUTHORS
OpenDNSSEC was made by the OpenDNSSEC project, to be found on http://www.opendnssec.org/


doas.conf

package: opendoas

title: doas.conf(5)

summary: doas configuration file

text:
# doas.conf(5)

## NAME
doas.conf — doas configuration file

## DESCRIPTION
The doas(1) utility executes commands as other users according to the rules in the doas.conf configuration file.

The rules have the following format:

permit|deny [options] identity [as target] [cmd command [args ...]]

Rules consist of the following parts:

permit|deny

The action to be taken if this rule matches.

options

Options are: nopass

The user is not required to enter a password.

nolog

Do not log successful command execution to syslogd(8).

persist

After the user successfully authenticates, do not ask for a password again for some time.

keepenv

Environment variables other than those listed in doas(1) are retained when creating the environment for the new process.

setenv { [variable ...] [variable=value ...] }

Keep or set the space-separated specified variables. Variables may also be removed with a leading ‘-’ or set using the latter syntax. If the first character of value is a ‘$’ then the value to be set is taken from the existing environment variable of the indicated name. This option is processed after the default environment has been created.

identity

The username to match. Groups may be specified by prepending a colon (‘:’). Numeric IDs are also accepted.

as target

The target user the running user is allowed to run the command as. The default is all users.

cmd command

The command the user is allowed or denied to run. The default is all commands. Be advised that it is best to specify absolute paths. If a relative path is specified, only a restricted PATH will be searched.

args [argument ...]

Arguments to command. The command arguments provided by the user need to match those specified. The keyword args alone means that command must be run without any arguments.

The last matching rule determines the action taken. If no rule matches, the action is denied.

Comments can be put anywhere in the file using a hash mark (‘#’), and extend to the end of the current line.

The following quoting rules apply:

- The text between a pair of double quotes (‘"’) is taken as is.

- The backslash character (‘\’) escapes the next character, including new line characters, outside comments; as a result, comments may not be extended over multiple lines.

- If quotes or backslashes are used in a word, it is not considered a keyword.

## FILES
/etc/doas.conf

doas(1) configuration file.

/etc/examples/doas.conf

Example configuration file.

## EXAMPLES
The following example permits user aja to install packages from a preferred mirror; group wheel to execute commands as any user while keeping the environment variables PS1 and SSH_AUTH_SOCK and unsetting ENV; permits tedu to run procmap as root without a password; and additionally permits root to run unrestricted commands as itself while retaining the original PATH.

```
permit persist setenv { PKG_CACHE PKG_PATH } aja cmd pkg_add
permit setenv { -ENV PS1=$DOAS_PS1 SSH_AUTH_SOCK } :wheel
permit nopass tedu as root cmd /usr/sbin/procmap
permit nopass keepenv setenv { PATH } root as root
```

## SEE ALSO
doas(1), syslogd(8)

## HISTORY
The doas.conf configuration file first appeared in OpenBSD 5.8.

## AUTHORS
Ted Unangst <tedu@openbsd.org>


package: openipmi-lanserv

title: ipmi_lan(5)

summary: IPMI LAN Interface config file

text:
# ipmi_lan(5)

## NAME
ipmi/lan.conf - IPMI LAN Interface config file

## SYNOPSIS
/etc/ipmi/lan.conf

## DESCRIPTION
The ipmi_sim and ipmilan commands are configured using this configuration file.

## CONFIGURATION ITEMS
The following fields are used in many commands:

boolean May be "true", "false", "on" or "off".

priv An IPMI privilege level. This may be "callback", "user", "operator", or "admin".

auth An IPMI authorization type. This may be "none" for no authentication, "straight" for straight, in-the-clear password authentication, "md2" for use MD2 message digest authentication, or "md5" for using MD5 message digest authentication.

## FILE STRUCTURE
Blank lines and lines starting with `#' are ignored.

The following commands are allowed the configuration file:

name "name"

Set a name for the BMC. This will control other things, like the default value of the ipmi_sim startup command file and the place where persistent data is stored.

user usernum enabled username password max-priv max-session

usernum specifies the user number for the user. Note that user number 0 is invalid, and user number 1 is the special "anonymous" user, whose username is ignored. This value may be up to 63, the maximum possible IPMI user. If you want anonymous access, you must have a user number 1. enabled is a boolean that specified whether the user is enabled or not.

username specifies the name of the user, specified as a name.

password specifies the password of the user, specified as a name.

max-priv specifies the maximum privilege level allowed for the user.

max.sessions specifies the maximum number of session the user may open.

startcmd "cmd"

specifies a command to execute when a power on is requested. This lets a virtual machine be started that can then connect back to the simulator. The simulator does management of the process here, and the power on state of the process depends on if the process exists or not. If a poweroff is requested, if the process is connected to a VM serial interface, a graceful shutdown is first requested. If the process does not terminate in a specified amount of time, a SIGTERM is sent to the process. The SIGTERM is sent immediately if there is no connection. If the process doesn't go way in another specified amount of time, a SIGKILL is sent.

startnowtrue|false

If true, start the startcmd at the startup of the simulator. Otherwise wait until a poweron is issued.

poweroff_wait seconds

specifies the amount of time to wait for the startcmd to do a graceful shutdown on a powerdown request. The simulator will send a request to the target, wait this amount of time, and then do a SIGTERM kill on the process. If this is zero, a SIGTERM will not be done (nor will a SIGKILL). Note that if the simulator does not have a connection to the VM, the graceful shutdown is skipped and a SIGTERM is done immediately. Default time is 60 seconds.

kill_wait seconds

specifies the amount of time to wait for SIGTERM to kill the process. If the process does not terminate in this period of time, send a SIGKILL kill. If this is zero, don't send the SIGKILL. Default time is 20 seconds.

console address port

specifies that a console port be opened at the given address and port. You can telnet to the console and execute emulation commands. Note that this is a pretty huge security hole, it should only be used for debugging in a captive environment.

serial channel addr port [option [option [...]]]

channel specifies the channel number or type. This may be kcs, smic, or bt or it may be 15. Currently, only the system interface channel (channel 15) is supported for serial interfaces, if the others are specified it is channel 15 and the given interface is reported in channel configuration commands. addr specifies the IP address to listen on for connections.

port specifies the port to listen on for connections.

Valid options are:

codec name specifies which codec to use on the serial port. Valid options are: TerminalMode, Direct, RadisysAscii, and VM. The first three are implementations of IPMI serial interfaces on certain systems and might be used for simulations of that system. The VM is probably the most interesting; it is designed to be used with a virtual machine like qemu.

oem name specified implementation of some OEM custom commands and options on the interface. Valid options oare PigeonPoint and Radisys.

attn c1[,c2[...]] specifies a list of characters, separated by commas, to use as the attention character on the interface. Generally the default is correct. The characters are specified as decimal, octal, or hex digits in C style.

ipmb addr specifies the IPMI address of the interface. The default, 0x20, is usually correct, but when emulating ATCA systems this might be required.

sol device default_baud [history=size[,backupfile=filename]] [historyfru=frunum]

Allow a Serial Over LAN (SOL) connection to the given device. This will be over interface 1 for the MC.

device is the full path to the device name. It can also be in the form "tcp:address:port" or "telnet:address:port" to do connections over tcp (without or with telnet processing). This is useful for providing SOL access to qemu ports.

default_baud sets the initial default baud rate to use. This is overriden by the persistent SOL settings.

history creates a history device on SOL interface 2. The size is the size of the buffer. Data from the device is stored in the history buffer all the time. Connecting to SOL interface 2 will cause the full history buffer to be dumped. If backupfile is specified, then the history is made persistent. However, it is only stored when a catchable signal or normal shutdown is done, so a poweroff or fatal signal will cause the data to be lost.

historyfru makes the history available via the given FRU number on the MC.

Note that if the connection fails to come up, the simulator will continue to try to connect. This way you can fix UDP serial ports or qemu sessions and it will automatically reconnect.

loadlib "module" ["options"]

Load the given shared object into the program.

module is the full path to the module. It must be in quotes.

options is an optional string in quotes that passes options to the module. The contents of the string are not specified, the module defines that.

The module may have a number of functions that are called:

ipmi_sim_module_print_version(sys_data_t *sys, char *options) is called when ipmi_sim is started with the version print option. This way the versions of all loaded modules may be printed. The module should print it's version. You must provide this function.

ipmi_sim_module_init(sys_data_t *sys, char *options) is called after the configuration file is read and before any other initialization is done. The module should do most of its initialization here. You must provide this function.

ipmi_sim_module_post_init(sys_data_t *sys) is called after ipmi_sim has finished initializing. This function is optional.

sys parameter is used for most functions interfacing to the main ipmi_sim code, like logging, timers, and a few of the MC calls. The contents are opaque to the module.

startlan channel

Starts a LAN configuration area. This specifies the settings for a LAN connection using the given channel. This may be specified more than once in a file to support multiple LAN connections. Commands following this, up to endlan, are LAN-specific commands listed below. channel specifies the channel to set the LAN configuration for.

## LAN CONFIGURATION COMMANDS
The following commands are only valid inside a startlen area.

addr IP-address [UDP-port]

IP-address specifies the IP address to use for an IP port. Up to 4 addresses may be specified. If no address is specified, it defaults to one port at 0.0.0.0 (for every address on the machine) at port 623. UDP-port specifies an optional port to listen on. It defaults to 623 (the standard port).

PEF_alerting boolean

Turn PEF alerting on or off (not currently supported).

per_msg_auth boolean

Turn per-message authentication on or off.

priv_limit priv

The maximum privilege allowed on this interface.

allowed_auths_callback [auth [auth [...]]]

auth specifies allowed authorization levels for the callback privilege level. Only the levels specified on this line are allowed for the authorization level. If this line is not present, callback authorization cannot be used.

allowed_auths_user [auth [auth [...]]]

auth specifies allowed authorization levels for the user privilege level. Only the levels specified on this line are allowed for the authorization level. If this line is not present, user authorization cannot be used.

allowed_auths_operator [auth [auth [...]]]

auth specifies allowed authorization levels for the operator privilege level. Only the levels specified on this line are allowed for the authorization level. If this line is not present, operator authorization cannot be used.

allowed_auths_admin [auth [auth [...]]]

auth specifies allowed authorization levels for the admin privilege level. Only the levels specified on this line are allowed for the authorization level. If this line is not present, user authorization cannot be used.

guid name

Allows the 16-byte GUID for the IPMI LAN connection to be specified. If this is not specified, then the GUID command is not supported.

## FILES
/etc/ipmi_lan.conf

## SEE ALSO
ipmilan(8),ipmi_sim(1)

## KNOWN PROBLEMS
IPMI is unnecessarily complicated.

## AUTHOR
Corey Minyard <cminyard@mvista.com>


title: ipmi_sim_cmd(5)

text:
# ipmi_sim_cmd(5)

## DESCRIPTION
The ipmi_sim emulation is set up using these commands. They can be read from a command file, run from the command line, or executed inside the simulator after it is started.

This may be a little confusing, but the network interfaces are configured by the ipmi_lan configuration file, and the various management controllers, sensors, etc. are specified using this file. Plus, this can be used to configure the simulator after it is up, set sensor values, inject events, and things of that nature.

## GENERAL COMMANDS
Blank lines and lines starting with `#' are ignored. Long lines may be broken up by putting a '´ at the end of the line to be continued.

quit

Exit the simulator

include "file"

Include the given file.

define name "value"

Define the given name as a variable with the given value. This variable may be used later by doing $name. This cannot be used in quotes, but quotes may be broken up and the variable put between them. For instance, if you say:

define MCNUM "40"

you can use it later as in

mc_add $MCNUM 1 no-device-sdrs 00 00 00 0xc9 0x009000 0x0002

or

sensor_add $MCNUM 0 21 12 0x6f poll 1000 file "/sys/dev/sens1-"$MCNUM"-1"

sleep time

Pause the command interface for the given number of seconds. This does not affect the execution of the simulator.

debug options

Set the debugging output. Valid options are: msg Dump messages.

raw Dump raw I/O

Entering nothing turns of debugging.

read_cmds filename

Execute the commands in the given file.

## MC COMMANDS
mc_add IPMBAddress DeviceID HasDeviceSDRs DeviceRevision MajorFWRev MinorFWRev DeviceSupport ManufacturerID ProductID

Add an MC to the simulator. All values are hexadecimal. These are mostly values for the ``Get Device ID'' command, see the spec for details. Note that the MC is not enabled after being added, you must add it. Note that some of these values control the capabilities of the MC. For instance, HasDeviceSDRs sets whether device SDR repository commands will work.

You may use has-device-sdrs or no-device-sdrs in the HasDeviceSDRs field.

mc_add_fru_data mc-addr DeviceID FRUSize (data [byte1 [byte2 [...]]] | file offset filename)

Set the FRU data for a given MC and device id. Data may be supplied directly here, or it may be given as a file. The offset is the start from the beginning of the file where the data is kept.

mc_dump_fru_data mc-addr DeviceID

Dump the FRU data for a given MC and device id.

mc_delete mc-addr

Remove the MC from the system.

mc_disable mc-addr

Disable the MC, but don't remove it.

mc_enable mc-addr

Enable the given MC.

mc_setbmc mc-addr

Set the BMC's address.

mc_set_guid mc-addr guid

Set the GUID value. The guid may be a string (in quotes) or a hexadecimal string.

sel_enable mc-addr max-entries flags

Enable the System Event Log on the given MC. The flags is a byte this is returned from the ``Get SEL Info'' command; it controls various aspects of the SEL. See the spec for details.

sel_add mc-addr RecordType byte1 byte2 ... byte13

Add an entry to the MC's SEL.

main_sdr_add mc-addr byte1 [byte2 [...]]

Add an entry to the main SDR of the MC.

device_sdr_add mc-addr LUN byte1 [byte2 [...]]

Add an entry to the device SDR of the MC.

## SENSOR COMMANDS
sensor_add mc-addr LUN sensor-num sensor-type event-reading-code [poll poll_rate poll_type poll_type_options] [event-only]

Add a sensor to the given MC and LUN. The type of sensor is set by the event reading code.

If poll is specified, then the sensor will be polled for data. Only the file poll type is currently supported. The value is a number read from a file. It has the following options, all optional:

div=val will divide the read value by the given number. This is done after the multiply operation.

mult=val will multiply the read value by the given number. This is done after the subtraction.

sub=val will subtract the value by the given number. This is done after the mask.

mask=val will mask (bitwise and) the value by the given number.

base=value Specify the base of the value read from the file. By default this is zero, meaning "C" conventions are used.

initstate=value sets what the event state is initially set to. This is useful for discrete sensors with bits that should normally be set to "1", like a presence bit, to keep the program from issuing an event every time the program starts.

raw specifies that the data from the file is a raw value. Only length bytes are read from offset.

ascii specifies that the data from the file is in ASCII. This is the default. The offset value is used, but no the length.

length=val specifies the length of the data to read from the file. The maximum value is 4,and this is only used for raw data.

depends=<mc_addr>,<lun>,<sensor_number>,<bit> specifies a discrete sensor bit that must be set to 1 for the sensor to be active. Generally, you use the presence bit of a sensor to mark whether other sensors on the device are actually present. Each of the other sensors would have one of these pointing to the presence bit.

event-only specifies that the sensor will not be readable, it will only generate events (specified with a type 3 SDR).

sensor_set_bit mc-addr LUN sensor-num bit-to-set bit-value generate-event

Set the given bit to bit-value (0 or 1) for the sensor by bit number, either the threshold for analog or the discrete sensor bit. If generate-event is non-zero and the sensor has events enabled for that bit, then generate an event.

sensor_set_bit_clr_rest mc-addr LUN sensor-num bit-to-set bit-value generate-event

Like sensor_set_bit, but automatically clears all other bits.

sensor_set_value mc-addr LUN sensor-num value generate-event

Set the byte value for an analog sensor. If the sensor exceeds a threshold, the sensor has events enabled, and generate-event is non-zero, then generate an event for the condition.

sensor_set_hysteresis mc-addr LUN sensor-num support positive negative

Set the hysteresis capabilities of the sensor. It must be an analog sensor. The support value is the hysteresis capability, the same as the hysteresis support value in the sensor SDR. The positive and negative hysteresis values are also set by this command. The support value may also be none, readable, settable, or fixed instead of the numbers.

sensor_set_threshold mc-addr LUN sensor-num threshold-support threshold-enabled [value5 [value4 [... [value0]]]]

Set the threshold support for a sensor. It must be an analog sensor. The threshold-support value is the same as the threshold access support value in the sensor SDR. The threshold-enabled values is a string of ``0'' and ``1'' characters that enable the 6 corresponding thresholds; the rightmost value is value 0, the leftmost is value 5. Optionally, the threshold values may be specified as their byte values.

The threshold-support value may also be none, readable, settable, or fixed to make it a bit more readable. The thresholds are:

0 - lower non critical

1 - lower critical

2 - lower non recoverable

3 - upper non critical

4 - upper critical

5 - upper non recoverable

sensor_set_event_support mc-addr LUN sensor-num events-enable scanning event-support assert-support deassert-support assert-enabled deassert-enabled

Set the event support of a sensor. The events-enable will enable global events on the sensor if non-zero, otherwise they are disabled. The scanning values set the scanning value for the sensor. The event-support value sets the event capabilities in the sensor, this is the same as the ``sensor event message control support'' value in the sensor SDR. The assert-support, deassert-support, assert-enabled, and deassert-enabled are all bitmasks (a string of ``0'' and ``1'' characters) that set their corresponding sensor bit's capability to generate events (support) and whether it will generate events now (enabled).

Note that all bitmasks have the rightmost digit as the zeroth bit, and the leftmost digit as the highest order bit. Note that you must specify 15 bits here, even if you don't use all of them.

Note that you may use enable or disable in the events-enable field, and you may use scanning or no-scanning in the scanning field.

For event-support, you may use per-state, entire-sensor, global or none instead of a number.

For a threshold sensor, the values are:

0

- lower non-critical going low

1

- lower non-critical going high

2

- lower critical going low

3

- lower critical going high

4

- lower non-recoverable going low

5

- lower non-recoverable going high

6

- upper non-critical going low

7

- upper non-critical going high

8

- upper critical going low

9

- upper critical going high

1

- upper non-recoverable going low

1

- upper non-recoverable going high

Note that the "lower going high" and "upper going low" values are not supported, since they are simply stupid.

## ATCA OEM COMMANDS
These are for emulation of special ATCA capabilities.

atca_enable

The system is an ATCA system, enables the other ATCA capabilities. Note that you should do this *before* creating any MCs (this should really be first) because the MCs are set up a little differently for ATCA mode. This causes the MCs to be able to handle PICMG commands properly, sets up 2 LEDs by default, and enables proper hot-swap handling, including the blue LED. By default the blue LED supports local control and the other LEDs do not and are red.

In ATCA mode, to drive the hot-swap state machine, you should use sensor_set_bit_clr_rest to set the hot-swap state.

atca_set_site hardware-address site-type site-number

Sets the given values for an ATCA system, the values returned by the get address commands.

mc_set_num_leds mc-addr count

Set the number of ATCA LEDs the MC has.

mc_set_power mc-addr power gen-event

Set the ATCA power setting for the MC as its numeric value. If gen-event is non-zero, generate an event for the change.

## FILES
/etc/ipmi/lan.conf

## SEE ALSO
ipmi_sim(1)

## KNOWN PROBLEMS
IPMI is unnecessarily complicated. Hords of capabilities are not yet implemented.

## AUTHOR
Corey Minyard <cminyard@mvista.com>


title: openl2tpd.conf(5)

summary: OpenL2TP configuration file

text:
# openl2tpd.conf(5)

## NAME
openl2tpd.conf - OpenL2TP configuration file

## SYNOPSIS
This document describes the configuration file syntax of OpenL2TP.

## DESCRIPTION
The configuration file syntax is the same as that written by l2tpconfig's config save command. The file contains a number of l2tpconfig create and modify commands, though the commands aren't processed by l2tpconfig - they are processed by openl2tpd directly when it starts up and again if it receives a SIGHUP signal.

The preferred way to save and restore openl2tpd configuration information is to use the l2tpconfig utility's config save and config restore commands. The local configuration file support is usually enabled only when l2tpconfig is not available.

See l2tpconfig(1) for a list of all available create and modify commands.

A # character on the first line is used to begin a comment line.

A \ character at the end of a line is used to break a long command into multiple lines.

Commands are processed in order. If a tunnel create command references a named peer profile, the profile must be created before the tunnel create command.

A config file written by the config save command of the l2tpconfig utility may be copied to /etc/openl2tpd.conf if desired, in order to have the configuration automatically applied when openl2tpd restarts. However, the preferred method to reload saved configuration is to use l2tpconfig config restore file=xxx.

## EXAMPLES

```
tunnel profile create profile_name=one \
	hello_timeout=30
tunnel create tunnel_name=one dest_ipaddr=10.1.2.3 \
	profile_name=one
```

## SEE ALSO
l2tpconfig(1), openl2tp(7), openl2tpd(8),