CentOS 6 では syslogd が rsyslog に置き換わっている。jail を利用する場合などでは追加のソケットが必要になるが、これを指定する方法。syslogd の -a オプションに相当するもの。
/etc/rsyslog.conf
$ModLoad imuxsock
$AddUnixListenSocket /chroot/dev/logUnix Socket Input rsyslog
$ModLoad imuxsock
$AddUnixListenSocket /chroot/dev/log
# mkdir /var/db/dkim
# dkim-genkey -d <domain name> -D /var/db/dkim -s <selector name>
# chown -R mailnull:mail /var/db/dkim/milterdkim_enable="YES"
milterdkim_flags="-b s"
Domain <domain name>
SubDomains Yes
KeyFile /var/db/dkim/<selector name>.private
InternalHosts /usr/local/etc/mail/internal.conf
Selector <selector name>
Socket local:/var/run/milterdkim/dkim-milter.sock
Canonicalization relaxed/simple
127.0.0.1
192.168.1.1/24
milterenma_enable="YES"
milter.postfix: true
miltermanager_enable="YES"
smtpd_milters = unix:/var/run/milter-manager/milter-manager.sock
milter_default_action = accept # milter がこけたら通すように
% /usr/local/sbin/milter-manager --show-config
package.platform = "freebsd"
package.options = nil
security.privilege_mode = false
security.effective_user = "mailnull"
security.effective_group = nil
manager.connection_spec = "unix:/var/run/milter-manager/milter-manager.sock"
manager.unix_socket_mode = 0660
manager.unix_socket_group = nil
manager.remove_unix_socket_on_create = true
manager.remove_unix_socket_on_close = true
manager.daemon = false
manager.pid_file = nil
manager.maintenance_interval = 100
manager.suspend_time_on_unacceptable = 5
manager.max_connections = 0
manager.max_file_descriptors = 0
manager.custom_configuration_directory = nil
controller.connection_spec = "unix:/var/run/milter-manager/milter-manager-controller.sock"
controller.unix_socket_mode = 0660
controller.unix_socket_group = nil
controller.remove_unix_socket_on_create = true
controller.remove_unix_socket_on_close = true
define_applicable_condition("S25R") do |condition|
condition.description = "Selective SMTP Rejection"
end
define_applicable_condition("Remote Network") do |condition|
condition.description = "Apply milter only if connected from remote network"
end
define_applicable_condition("Sendmail Compatible") do |condition|
condition.description = "Make a milter depends on Sendmail workable with Postfix"
end
define_applicable_condition("Authenticated") do |condition|
condition.description = "Apply a milter only when sender is authorized"
end
define_applicable_condition("Unauthenticated") do |condition|
condition.description = "Apply a milter only when sender is not authorized"
end
define_milter("milter-enma") do |milter|
milter.connection_spec = "inet:10025@127.0.0.1"
milter.description = nil
milter.enabled = true
milter.fallback_status = "accept"
milter.evaluation_mode = false
milter.applicable_conditions = ["Remote Network", "Unauthenticated"]
milter.command = "/usr/local/etc/rc.d/milter-enma"
milter.command_options = "start"
milter.user_name = nil
milter.connection_timeout = 300.0
milter.writing_timeout = 10.0
milter.reading_timeout = 10.0
milter.end_of_message_timeout = 300.0
end
define_milter("milter-dkim") do |milter|
milter.connection_spec = "unix:/var/run/milterdkim/dkim-milter.sock"
milter.description = nil
milter.enabled = true
milter.fallback_status = "accept"
milter.evaluation_mode = false
milter.applicable_conditions = []
milter.command = "/usr/local/etc/rc.d/milter-dkim"
milter.command_options = "start"
milter.user_name = nil
milter.connection_timeout = 300.0
milter.writing_timeout = 10.0
milter.reading_timeout = 10.0
milter.end_of_message_timeout = 300.0
end