Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
amavisd-milter(8)	    System Manager's Manual	     amavisd-milter(8)

NAME
       amavisd-milter -	sendmail milter	for amavis

SYNOPSIS
       amavisd-milter		 [-Bfhv][-d debug-level]	    [-D	deliv-
       ery-care-of][-m max-conns]  [-M max-wait][-p pidfile]  [-P][-q backlog]
       [-s socket][-t timeout] [-S socket][-T timeout] [-w directory]

DESCRIPTION
       The  amavisd-milter is a	sendmail milter	(mail filter) for amavis 2.4.3
       and above and sendmail 8.13 and above.

       With the	amavisd-milter,	a full amavis functionality is available,  in-
       cluding	adding spam and	virus information header fields, modifying the
       Subject,	adding address extensions and removing certain recipients from
       delivery, while delivering the same message to the rest.

       For more	information you	can visit amavisd-milter website:

	      https://github.com/prehor/amavisd-milter

   Options
       The options are as follows:

       -B     Uses the milter macro {daemon_name} as the policy	bank name (see
	      POLICY BANKS (#policy-banks) below).

       -d debug-level
	      Set the debug level.  The	debugging traces become	more  detailed
	      as the debug level increases.  Maximum is	9.

       -D delivery-care-of
	      Set  AM.PDP  request  attribute  delivery_care_of	to client (de-
	      fault) or	server.

       When the	client method is used, then amavisd-milter is responsible  for
       forwarding  the	message	to the recipients.  This method	does not allow
       personalized header or body modification.

       When the	server method is used, then amavis is responsible for forward-
       ing the message to the recipients and may personalize the  headers  and
       the  body  of  the  messages.  $forward_method variable in amavisd.conf
       must point to a place willing to	accept	the  message  without  further
       checking	in amavis.

       -f     Run  amavisd-milter  in the foreground (i.e.  do not daemonize).
	      Print debuging messages to the terminal.

       -h     Print the	help page and exit.

       -m max-conns
	      Maximum concurrent amavis	connections  (default  0  =  unlimited
	      number of	connections).  It must be the same as the $max_servers
	      variable in amavisd.conf.

       -M timeout
	      Timeout for message processing in	seconds	(default 300 seconds =
	      5	minutes).  Must	be less	then timeout for a response to the fi-
	      nal "." that terminates a	message	on sending MTA.	 Sendmail uses
	      default  value  1	hour, postfix 10 minutes and qmail 20 minutes.
	      Recommended value	is less	than 10	minutes.

       If you use other	milters	(especially time-consuming), the timeout  must
       be sufficient to	process	message	in all milters.

       -p pidfile
	      Use this pid file.

       -P     When  the	 amavis	 fails,	 the  message  will  be	passed through
	      unchecked.

       -q backlog
	      Sets the incoming	socket backlog used by listen(2).   If	it  is
	      not set or set to	zero, the operating system default is used.

       -s socket
	      Communication  socket  between sendmail and amavisd-milter.  The
	      protocol spoken over this	socket is MILTER  (Mail	 FILTER).   It
	      must  have the same vale as the INPUT_MAIL_FILTER	macro in send-
	      mail.mc.

       The socket must be in format proto:address:

	      	{unix|local}:/path/to/file - A named pipe.

	      	inet:port@{hostname|ip-address}	- An IPV4 socket.

	      	inet6:port@{hostname|ip-address} - An IPV6 socket.

       -S socket
	      Communication socket between  amavisd-milter  and	 amavis.   The
	      protocol	spoken over this socket	is AM.PDP (AMavis Policy Dele-
	      gation  Protocol).   It  must  have  the	same  value   as   the
	      $unix_socketname variable	in amavisd.conf.

       The socket must be in format proto:address:

	      	{unix|local}:/path/to/file - A named pipe.

	      	inet:port@{hostname|ip-address}	- An IPV4 socket.

	      	inet6:port@{hostname|ip-address} - An IPV6 socket.

       -t timeout
	      Sendmail	connection  timeout  in	seconds	(default 600 = 10 min-
	      utes).  It must have the	same  vale  as	the  INPUT_MAIL_FILTER
	      macro  in	 sendmail.mc  and must be greater than or equal	to the
	      amavis connection	timeout.

       If you use other	milters	(especially time-consuming), the timeout  must
       be sufficient to	process	message	in all milters.

       -T timeout
	      Amavis connection	timeout	in seconds (default 600	= 10 minutes).
	      Must be sufficient to process message in amavis.	Usually, it is
	      a	good idea to set them to the same value	as sendmail connection
	      timeout.

       -v     Report the version number	and exit.

       -w directory
	      Set working directory.

POLICY BANKS
       If  the option -B is enabled, amavisd-milter uses the value of the mil-
       ter macro {daemon_name} as the name of the amavis policy	bank.  Usualy,
       this milter macro is set	to name	of the MTA.

       When remote client is authenticated, amavisd-milter uses	authentication
       information as the name of the amavis policy banks:

       SMTP_AUTH
	      Remote client has	been authenticated.

       SMTP_AUTH_<MECH>
	      The remote client	authentication mechanism.

       SMTP_AUTH_<MECH>_<BITS>
	      The number of bits used for the key of the symmetric cipher when
	      authentication mechanism uses it.

EXAMPLES
   Configuring amavis
       In the amavisd.conf file	set protocol and amavis	socket to:

	      $protocol	= "AM.PDP";			 # Use AM.PDP protocol
	      $unix_socketname = "$MYHOME/amavisd.sock"; # Listen on Unix socket
	      ### $inet_socket_port = 10024;		 # Do not listen on TCP	port

       Then (re)start the amavisd daemon.

   Configuring Postfix
       Add the following entries to Postfix main.cf*:

	      smtpd_milters = local:<AMAVISD_MILTER.SOCK>
	      milter_connect_macros = j	{client_name} {daemon_name} v
	      milter_protocol =	6

       Then (re)start the Postfix daemon.

   Configuring sendmail
       Add the following entries to file sendmail.mc:

	      define(`confMILTER_MACROS_CONNECT',
		confMILTER_MACROS_CONNECT`, {client_resolve}')
	      define(`confMILTER_MACROS_ENVFROM',
		confMILTER_MACROS_ENVFROM`, r, b')
	      INPUT_MAIL_FILTER(`amavisd-milter',
		`S=local:<AMAVISD_MILTER.SOCK>,	F=T, T=S:10m;R:10m;E:10m')

       Then rebuild sendmail.cf	file, install it and  (re)start	 the  sendmail
       daemon.

   Running amavisd-milter
       This examples assumes that amavis is running as user vscan.  The	actual
       name is shown in	the $daemon_user variable in amavisd.conf.

   Limiting maximum concurrent connections to amavisd
       To limit	the maximum concurrent connections to amavis, run amavisd-mil-
       ter with	this options:

	      su - vscan -c "amavisd-milter -m 4"

   Troubleshooting
       For  troubleshooting,  run amavisd-milter on the	foreground and set the
       debug level to the appropriate value:

	      su - vscan -c "amavisd-milter -f -d 4"

       Debug levels are:

        1 - Not errors	but unexpected states (connection abort	etc).

        2 - Main states in message processing.

        3 - All amavisd-milter	debug messages.

        4-9 - Milter communication debugging (set smfi_setdbg to 1-6).

SEE ALSO
        https://github.com/prehor/amavisd-milter

        https://www.ijs.si/software/amavisd/

        https://www.sendmail.org

AUTHORS
       This manual page	was written by Petr Rehor and is based on Jerzy	 Sakol
       initial work.

BUGS
       Issues can be reported by using GitHub at:

	      https://github.com/prehor/amavisd-milter/issues

       Full  detailed information on how to report issues, please see the Con-
       tribution Guidelines at:

	      https://github.com/prehor/amavisd-milter/blob/master/CONTRIBUT-
	      ING.md

       Enhancements, requests and problem reports are welcome.

       If you run into problems, first check the GitHub	issues before creating
       a new one.  It is very likely that someone  has	encountered  the  same
       problem and it has already been solved.

Version	1.7.0						     amavisd-milter(8)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=amavisd-milter&sektion=8&manpath=FreeBSD+Ports+14.3.quarterly>

home | help