smtp

Name

smtp — SMTP frontend for local delivery

Synopsis

smtp [-c config]

Description

The SMTP server accepts network connection requests and performs zero or more SMTP transactions per connection. Each received message is given to one configured flusher plugin, of which there currently is also just one to choose from, message_enqueue(4gx).

smtp(8gx) is the equivalent of the Postfix smtpd(8) process. message_enqueue(4gx) is the approximate equivalent of the Postfix cleanup(8) process.

Options

-c config

Read configuration directives from the given file. If this option is not specified, /etc/gromox/smtp.cfg will be read if it exists.

-?

Display option summary.

Configuration file directives

block_interval_sessions
The amount of time a source IP address is blocked from connecting to the service because it tried to queue too many messages.
Default: 1 minute
config_file_path
Colon-separated list of directories which will be scanned when locating further configuration files, especially those used by plugin instances.
Default: /etc/gromox/smtp:/etc/gromox
console_server_ip
An IPv6 address (or v4-mapped address) to expose the management console frontend on.
Default: ::1
console_server_port
The TCP port number to expose the management console frontend on.
Default: 5566
context_average_mem

Default: 256K

context_max_mem

Default: 2M

context_num

Default: 200

data_file_path
Colon-separated list of directories which will be scanned when locating data files.
Default: /usr/share/gromox/smtp
default_domain

Default: (system domainname)

domain_list_valid

Default: false if server mode is 0 (incoming), true otherwise

flusher_plugin_path
Filename of a flusher plugin to load and use. (Only one can be in use at any time.)
Default: libgxf_message_enqueue.so
host_id

Default: (system hostname)

listen_port
The TCP port to export the SMTP protocol service on.
Default: 25
listen_ssl_port
The TCP port to expose the implicit-TLS SMTP protocol service on.
Default: (unset)
mail_max_length
Maximum permitted length of a message.
Default: 64M
running_identity
An unprivileged user account to switch the process to after startup. To inhibit the switch, assign the empty value.
Default: gromox
service_plugin_ignore_errors
If set to yes, service plugins that fail to load on startup are ignored. If set to no, the daemon will exit if any plugin cannot be loaded.
Default: no
service_plugin_list
Path to a text file which lists the filenames of service plugins to load, one per line.
Default: (unspecified)
service_plugin_path
Path to a secondary directory where service plugins will be loaded from if a primary search in standard directories (as per ld.so(8)) was unsuccessful.
Default: /usr/lib/gromox
smtp_certificate_passwd
The password to unlock TLS certificates.
Default: (unset)
smtp_certificate_path
Filesystem path to a certificate file for use with encrypted connection. The complete certificate chain should be present (as there is no other config directive to pull CA certs in).
Default: (unset)
smtp_conn_timeout
If an SMTP connection stalls for the given period, the connection is terminated.
Default: 3 minutes
smtp_force_starttls
This flag controls whether clients must utilize TLS, either by way of implicit TLS (cf. listen_ssl_port), or through the STARTTLS command.
Default: false
smtp_max_mail_num
The maximum number of messages that a client is allowed to queue within one connection before its source IP address is blocked.
Default: 10
smtp_private_key_path
Filesystem path to the key file needed to unlock the TLS certificate.
Default: (unset)
smtp_support_pipeline
This flag controls the offering of the PIPELINING extension (RFC 2920) to clients.
Default: true
smtp_support_starttls
This flag controls the offering of the STARTTLS extension (RFC 3027) to clients.
Default: false
state_path
Directory for runtime variadic data.
Default: /var/lib/gromox
thread_charge_num
The maximum number of connections that each thread is allowed to process.
Default: 40
thread_init_num
The minimum number of client processing threads to keep around.
Default: 1

Files

  • data_file_path/smtp_code.txt: Mapping from internal SMTP error codes to textual descriptions.

  • /usr/lib/gromox/libgxs_*.so: flusher plugins

  • /usr/lib/gromox/libgxs_*.so: service plugins

See also

gromox(7), delivery(8gx), message_enqueue(4gx), midb_agent(4gx)