milter-manager - an effective anti-spam and anti-virus solution with milters
milter-manager [option ...]
milter-manager is a milter that provides an effective anti-spam and anti-virus
solution with milters.
milter-manager provides a platform to use milters effectively and
flexibly. milter-manager has embedded Ruby interpreter that is used for
dynamic milter applicable condition. milter-manager can provide the platform
by embedded Ruby interpreter.
milter-manager reads its configuration file. The current
configuration can be confirmed by --show-config option:
% milter-manager --show-config
milter-manager also provides other options that overrides
configurations specified in configuration file.
-
--help
- Shows available options and exits.
-
--connection-spec=SPEC
- Specifies a socket that accepts connections from MTA. SPEC should be
formatted as one of the followings:
- • unix:PATH
- • inet:PORT
- • inet:PORT@HOST
- • inet:PORT@[ADDRESS]
- • inet6:POST
- • inet6:PORT@HOST
- • inet6:PORT@[ADDRESS]
Examples:
- • unix:/var/run/milter/milter-manager.sock
- • inet:10025
- • inet:10025@localhost
- • inet:10025@[127.0.0.1]
- • inet6:10025
- • inet6:10025@ip6-localhost
- • inet6:10025@[::1]
This option overrides "manager.connection_spec" in
configuration file.
-
--config-dir=DIRECTORY
- Specifies a directory that includes milter-manager's configuration file.
milter-manager tries to load DIRECTORY/milter-manager.conf. If it isn't
find, milter-manager loads milter-manager.conf in default directory.
-
--pid-file=FILE
- Saves process ID of milter-manager to FILE.
This option overrides "manager.pid_file" in
configuration file.
-
--user-name=NAME
- Runs milter-manager as NAME user. milter-manager should be started by
root.
This option overrides "security.effective_user" in
configuration file.
-
--group-name=NAME
- Runs milter-manager as NAME group. milter-manager should be started by
root.
This option overrides "security.effective_group" in
configuration file.
-
--socket-group-name=NAME
- Changes group of UNIX domain socket for accepting connection by
milter-manager to NAME group. Specified group should be one of the
effective user's supplementary groups.
This option overrides "manager.unix_socket_group" in
configuration file.
-
--daemon
- Runs milter-manager as daemon process.
This option overrides "manager.daemon" in
configuration file.
-
--no-daemon
- This option cancels the prior --daemon option.
-
--show-config
- Shows the current configuration and exits. The output format can be used
in configuration file. This option is useful for confirming registered
milters and reporting your milter-manager's configuration when you report
milter-manager's problems.
-
--log-level=LEVEL
- Specifies log output items. You can specify multiple items by separating
items with "|" like "error|warning|message".
See Loglist-Level
for available levels.
-
--log-path=PATH
- Specifies log output path. If you don't specify this option, log output is
the standard output. You can use "-" to output to the standard
output.
-
--event-loop-backend=BACKEDN
- Uses BACKEND
as event loop backend. Available values are glib
or libev
NOTE: For the sake of improving milter-manager performance per
process, event-driven model based architecture pattern is choosed in
this software. If this feature is implemented by glib, it is expressed
as a callback. Note that glib's callback registration upper limit makes
the limitation of the number of communications. This limitations exist
against glib backend only.
-
--verbose
- Logs verbosely. Logs by syslog with "mail". If milter-manager
isn't daemon process, standard output is also used.
"--log-level=all" option has the same effect.
-
--version
- Shows version and exits.
The exit status is 0 if milter starts to listen and non 0 otherwise.
milter-manager can't start to listen when connection spec is invalid format or
other connection specific problems. e.g. the port number is already used,
permission isn't granted for create UNIX domain socket and so on.
-
/usr/local/etc/milter-manager/milter-manager.conf
- The default configuration file.
Milter-manager processes the following signals:
-
SIGHUP
- Milter-manager reloads its configuration file.
-
SIGUSR1
- Milter-manager reopenes log file.
The following example is good for debugging milter-manager behavior. In the
case, milter-manager works in the foreground and logs are outputted to the
standard output.
% milter-manager --no-daemon --verbose
milter-test-server (1), milter-test-client (1),
milter-performance-check (1), milter-manager-log-analyzer (1)