first commit
This commit is contained in:
commit
8e920fa2b3
11
Dockerfile
Normal file
11
Dockerfile
Normal file
@ -0,0 +1,11 @@
|
||||
FROM alpine:3.8
|
||||
MAINTAINER Andrey Arapov <andrey.arapov@nixaid.com>
|
||||
|
||||
RUN apk update && \
|
||||
apk upgrade && \
|
||||
apk add opendkim runit socklog && \
|
||||
rm -rf /etc/service
|
||||
|
||||
COPY service /etc/service/
|
||||
# RUN find /etc/service -xdev -type f -name "run" -exec chmod +x '{}' \;
|
||||
ENTRYPOINT runsvdir -P /etc/service
|
35
Dockerfile.debian
Normal file
35
Dockerfile.debian
Normal file
@ -0,0 +1,35 @@
|
||||
FROM debian:stretch
|
||||
MAINTAINER Andrey Arapov <andrey.arapov@nixaid.com>
|
||||
|
||||
# To avoid problems with Dialog and curses wizards
|
||||
ENV DEBIAN_FRONTEND noninteractive
|
||||
|
||||
# Workaround the apt-get slowness when running grsecurity kernel
|
||||
# ulimit -n 1024
|
||||
RUN apt-get update && \
|
||||
apt-get -y install opendkim runit curl make gcc
|
||||
|
||||
# Compile socklog
|
||||
ENV SOCKLOG_NAME "socklog-2.1.0"
|
||||
ENV SOCKLOG_HASH "aa869a787ee004da4e5509b5a0031bcc17a4ab4ac650c2ce8d4e488123acb455"
|
||||
|
||||
RUN cd /opt && \
|
||||
curl -#L -o $SOCKLOG_NAME.tar.gz http://smarden.org/socklog/$SOCKLOG_NAME.tar.gz && \
|
||||
sha256sum $SOCKLOG_NAME.tar.gz |grep -qw $SOCKLOG_HASH && \
|
||||
tar xf $SOCKLOG_NAME.tar.gz && \
|
||||
rm -f $SOCKLOG_NAME.tar.gz && \
|
||||
cd admin/$SOCKLOG_NAME && \
|
||||
package/install && \
|
||||
package/install-man
|
||||
|
||||
RUN rm -vf /etc/service/socklog-klog /etc/service/socklog-unix
|
||||
|
||||
#RUN useradd -r -m -d /var/run/opendkim -s /bin/false opendkim
|
||||
|
||||
# tzdata - so that TZ environment variable gets processed
|
||||
# rsyslog - to log postfix service into /var/log/mail.log file
|
||||
|
||||
COPY service /etc/service/
|
||||
RUN find /etc/service -xdev -type f -name "run" -exec chmod +x '{}' \;
|
||||
|
||||
ENTRYPOINT runsvdir -P /etc/service
|
29
opendkim/opendkim.conf
Normal file
29
opendkim/opendkim.conf
Normal file
@ -0,0 +1,29 @@
|
||||
#BaseDirectory /run/opendkim
|
||||
|
||||
#LogWhy yes
|
||||
Syslog yes
|
||||
SyslogSuccess yes
|
||||
|
||||
Canonicalization relaxed/simple
|
||||
|
||||
#Domain example.com
|
||||
#Selector default
|
||||
#KeyFile /var/db/dkim/example.com.private
|
||||
|
||||
Socket inet:8891@localhost
|
||||
#Socket local:opendkim.sock
|
||||
|
||||
#ReportAddress postmaster@example.com
|
||||
#SendReports yes
|
||||
|
||||
## Hosts to sign email for - 127.0.0.1 is default
|
||||
## See the OPERATION section of opendkim(8) for more information
|
||||
#
|
||||
# InternalHosts 192.168.0.0/16, 10.0.0.0/8, 172.16.0.0/12
|
||||
|
||||
## For secondary mailservers - indicates not to sign or verify messages
|
||||
## from these hosts
|
||||
#
|
||||
# PeerList X.X.X.X
|
||||
|
||||
# PidFile /var/run/opendkim/opendkim.pid
|
80
opendkim/opendkim.conf.debian
Normal file
80
opendkim/opendkim.conf.debian
Normal file
@ -0,0 +1,80 @@
|
||||
# This is a basic configuration that can easily be adapted to suit a standard
|
||||
# installation. For more advanced options, see opendkim.conf(5) and/or
|
||||
# /usr/share/doc/opendkim/examples/opendkim.conf.sample.
|
||||
|
||||
# Log to syslog
|
||||
Syslog yes
|
||||
# Required to use local socket with MTAs that access the socket as a non-
|
||||
# privileged user (e.g. Postfix)
|
||||
UMask 007
|
||||
|
||||
# Sign for example.com with key in /etc/dkimkeys/dkim.key using
|
||||
# selector '2007' (e.g. 2007._domainkey.example.com)
|
||||
#Domain example.com
|
||||
#KeyFile /etc/dkimkeys/dkim.key
|
||||
#Selector 2007
|
||||
|
||||
# Commonly-used options; the commented-out versions show the defaults.
|
||||
#Canonicalization simple
|
||||
#Mode sv
|
||||
#SubDomains no
|
||||
|
||||
# Socket smtp://localhost
|
||||
#
|
||||
# ## Socket socketspec
|
||||
# ##
|
||||
# ## Names the socket where this filter should listen for milter connections
|
||||
# ## from the MTA. Required. Should be in one of these forms:
|
||||
# ##
|
||||
# ## inet:port@address to listen on a specific interface
|
||||
# ## inet:port to listen on all interfaces
|
||||
# ## local:/path/to/socket to listen on a UNIX domain socket
|
||||
#
|
||||
#Socket inet:8892@localhost
|
||||
Socket local:/var/run/opendkim/opendkim.sock
|
||||
|
||||
## PidFile filename
|
||||
### default (none)
|
||||
###
|
||||
### Name of the file where the filter should write its pid before beginning
|
||||
### normal operations.
|
||||
#
|
||||
PidFile /var/run/opendkim/opendkim.pid
|
||||
|
||||
|
||||
# Always oversign From (sign using actual From and a null From to prevent
|
||||
# malicious signatures header fields (From and/or others) between the signer
|
||||
# and the verifier. From is oversigned by default in the Debian pacakge
|
||||
# because it is often the identity key used by reputation systems and thus
|
||||
# somewhat security sensitive.
|
||||
OversignHeaders From
|
||||
|
||||
## ResolverConfiguration filename
|
||||
## default (none)
|
||||
##
|
||||
## Specifies a configuration file to be passed to the Unbound library that
|
||||
## performs DNS queries applying the DNSSEC protocol. See the Unbound
|
||||
## documentation at http://unbound.net for the expected content of this file.
|
||||
## The results of using this and the TrustAnchorFile setting at the same
|
||||
## time are undefined.
|
||||
## In Debian, /etc/unbound/unbound.conf is shipped as part of the Suggested
|
||||
## unbound package
|
||||
|
||||
# ResolverConfiguration /etc/unbound/unbound.conf
|
||||
|
||||
## TrustAnchorFile filename
|
||||
## default (none)
|
||||
##
|
||||
## Specifies a file from which trust anchor data should be read when doing
|
||||
## DNS queries and applying the DNSSEC protocol. See the Unbound documentation
|
||||
## at http://unbound.net for the expected format of this file.
|
||||
|
||||
TrustAnchorFile /usr/share/dns/root.key
|
||||
|
||||
## Userid userid
|
||||
### default (none)
|
||||
###
|
||||
### Change to user "userid" before starting normal operation? May include
|
||||
### a group ID as well, separated from the userid by a colon.
|
||||
#
|
||||
UserID opendkim
|
4
service/logger/finish
Executable file
4
service/logger/finish
Executable file
@ -0,0 +1,4 @@
|
||||
#!/bin/sh
|
||||
|
||||
echo "${PWD##*/}: Exitted with $1 (signal: $2)"
|
||||
[ $1 -ne 0 ] && ( echo "${PWD##*/}: rc != 0, sleeping for 5 seconds ..."; sleep 5 )
|
10
service/logger/run
Executable file
10
service/logger/run
Executable file
@ -0,0 +1,10 @@
|
||||
#!/bin/sh
|
||||
# Collect all logs which come to /dev/log
|
||||
exec 2>&1
|
||||
|
||||
echo "${PWD##*/}: started."
|
||||
|
||||
set -x
|
||||
exec chpst -Unobody socklog unix /dev/log
|
||||
# exec socklog unix /dev/log
|
||||
# exec socat UNIX-LISTEN:/dev/log,reuseaddr,fork -
|
4
service/opendkim/finish
Executable file
4
service/opendkim/finish
Executable file
@ -0,0 +1,4 @@
|
||||
#!/bin/sh
|
||||
|
||||
echo "${PWD##*/}: Exitted with $1 (signal: $2)"
|
||||
[ $1 -ne 0 ] && ( echo "${PWD##*/}: rc != 0, sleeping for 5 seconds ..."; sleep 5 )
|
6
service/opendkim/run
Executable file
6
service/opendkim/run
Executable file
@ -0,0 +1,6 @@
|
||||
#!/bin/sh
|
||||
echo "${PWD##*/}: started."
|
||||
|
||||
#chown -Rh opendkim:opendkim -- /etc/opendkim
|
||||
#exec su -s /bin/sh opendkim -c "/usr/sbin/opendkim -f -x /etc/opendkim/opendkim.conf -u opendkim -P /var/run/opendkim/opendkim.pid" 2>&1
|
||||
exec /usr/sbin/opendkim -f -x /etc/opendkim/opendkim.conf -u opendkim -P /var/run/opendkim/opendkim.pid 2>&1
|
Loading…
Reference in New Issue
Block a user