diff --git a/dockerfiles/email/postfix/Dockerfile b/dockerfiles/email/postfix/Dockerfile
index 73b9ee1718c44479a5d433e24a8e58c57756d39a..5fb169afd91eea0927803eb2d6730b383bff2e2b 100644
--- a/dockerfiles/email/postfix/Dockerfile
+++ b/dockerfiles/email/postfix/Dockerfile
@@ -6,7 +6,10 @@ RUN apt-get update && \
       postfix-pcre \
       postfix-mysql \
       supervisor \
-      ca-certificates && \
+      ca-certificates \
+      opendkim \
+      opendkim-tools \
+      opendmarc && \
     rm -rf /var/lib/apt/lists/*
 
 COPY install.sh /install.sh
@@ -24,7 +27,7 @@ RUN \
     smtpd_banner="\$myhostname ESMTP Hi, I'm a hosted by an IndieHoster (Debian/Postfix; see https://indiehosters.net/)" \
     mydestination=localhost && \
   /opt/editconf.py /etc/postfix/master.cf -s -w \
-    "submission=inet n       -       -       -       -       smtpd -o syslog_name=postfix/submission -o smtpd_tls_ciphers=high -o smtpd_tls_protocols=!SSLv2,!SSLv3 -o cleanup_service_name=authclean" && \
+    "submission=inet n       -       -       -       -       smtpd -o syslog_name=postfix/submission -o smtpd_milters=inet:127.0.0.1:8891 -o smtpd_tls_ciphers=high -o smtpd_tls_protocols=!SSLv2,!SSLv3 -o cleanup_service_name=authclean" && \
   /opt/editconf.py /etc/postfix/master.cf -s -w \
     "authclean=unix  n       -       -       -       0       cleanup -o header_checks=pcre:/etc/postfix/outgoing_mail_header_filters" && \
  /opt/editconf.py /etc/postfix/main.cf \
@@ -56,7 +59,21 @@ RUN \
     virtual_alias_maps=mysql:/etc/postfix/virtual-alias-maps.cf \ 
     local_recipient_maps=\$virtual_mailbox_maps && \
   /opt/editconf.py /etc/postfix/main.cf \
-    mynetworks="127.0.0.0/8 172.17.42.0/24"
+    mynetworks="127.0.0.0/8 172.17.42.0/24" && \
+  /opt/editconf.py /etc/opendmarc.conf -s \
+    "Syslog=true" \
+    "Socket=inet:8893@[127.0.0.1]" && \
+  /opt/editconf.py /etc/postfix/main.cf \
+    "smtpd_milters=inet:127.0.0.1:8891 inet:127.0.0.1:8893"\
+    non_smtpd_milters=\$smtpd_milters \
+    milter_default_action=accept && \
+  echo "MinimumKeyBits          1024" >> /etc/opendkim && \
+  echo "ExternalIgnoreList      refile:/etc/opendkim/TrustedHosts" >> /etc/opendkim && \
+  echo "InternalHosts           refile:/etc/opendkim/TrustedHosts" >> /etc/opendkim && \
+  echo "KeyTable                refile:/etc/opendkim/KeyTable" >> /etc/opendkim && \
+  echo "SigningTable            refile:/etc/opendkim/SigningTable" >> /etc/opendkim && \
+  echo "Socket                  inet:8891@localhost" >> /etc/opendkim && \
+  echo "RequireSafeKeys         false" >> /etc/opendkim
 
 #RUN /opt/editconf.py /etc/postfix/main.cf \
 #smtp_tls_security_level=dane \
diff --git a/dockerfiles/email/postfix/install.sh b/dockerfiles/email/postfix/install.sh
index d62a5ad9d2ce6b86237b7f2ca63a146d7848449c..f7cb48b1681978d0fd68f1316ed11f449e9b9eb4 100644
--- a/dockerfiles/email/postfix/install.sh
+++ b/dockerfiles/email/postfix/install.sh
@@ -16,7 +16,10 @@ sed -i "s/##HOSTNAME##/$HOSTNAME/" /etc/postfix/main.cf
 
 /opt/mysql-check.sh
 
-chown -R postfix:postfix /var/spool/postfix/dovecot
+if [ ! -f /etc/opendkim/TrustedHosts ]; then
+  mkdir -p /etc/opendkim
+  echo "127.0.0.1" > /etc/opendkim/TrustedHosts
+fi
 
-EOF
+chown -R postfix:postfix /var/spool/postfix/dovecot
 
diff --git a/unit-files/postfix.service b/unit-files/postfix.service
index 99f821c51b88f60dacfac47e537ec565d5f8fa39..cf470f50a39e920d885c078cbd3c05c638e3495a 100644
--- a/unit-files/postfix.service
+++ b/unit-files/postfix.service
@@ -24,6 +24,7 @@ ExecStart=/usr/bin/docker run \
   -v /data/runtime/postfix:/data \
   -v /data/runtime/mail:/var/mail \
   -v /data/domains/mail/TLS:/ssl \
+  -v /data/domains/mail/opendkim:/etc/opendkim \
   --volumes-from=dovecot \
   -p 25:25 \
   -p 587:587 \
diff --git a/utils/add_email_to.sh b/utils/add_email.sh
similarity index 79%
rename from utils/add_email_to.sh
rename to utils/add_email.sh
index ffb79f695115737b60e6905176b7736058e1fb05..7db0d0d1ecf213580c569597a2b6454f9bb6aca1 100755
--- a/utils/add_email_to.sh
+++ b/utils/add_email.sh
@@ -1,22 +1,27 @@
 #!/bin/bash -ex
 
-DOMAIN=$1
+EMAIL=$1
 PASSWORD=`echo $RANDOM date | md5sum | base64 | cut -c-10`
 MYSQL_PASS=`cat /data/domains/mail/mysql/.env | cut -d= -f2`
 
+DOMAIN=$(echo ${EMAIL} | cut -f2 -d@)
+
 /usr/bin/docker run \
   --rm \
   --name add_email_support_to_$DOMAIN \
   --link mysql-mail:db \
-  pierreozoux/mysql \
+  indiepaas/mysql \
     mysql \
       -uadmin \
       -p$MYSQL_PASS \
       -h db \
-        -e "INSERT INTO servermail.virtual_domains (name) VALUES ('$DOMAIN');" \
         -e "INSERT INTO servermail.virtual_users (domain_id, password , email) \
           VALUES( \
             (SELECT id FROM servermail.virtual_domains WHERE name='$DOMAIN'), \
             ENCRYPT('$PASSWORD', CONCAT('\$6\$', SUBSTRING(SHA(RAND()), -16))), \
-            'contact@$DOMAIN');"
+            '$EMAIL');"
+
+echo "Email added with success"
+echo "Pass: $PASSWORD"
+
 
diff --git a/utils/add_email_alias.sh b/utils/add_email_alias.sh
index 60036b242cfcff01739e7babc4badc70ebff804e..5bd7ab160e62874ef57d34e7bdf48b1d266b2e1e 100755
--- a/utils/add_email_alias.sh
+++ b/utils/add_email_alias.sh
@@ -9,7 +9,7 @@ MYSQL_PASS=`cat /data/domains/mail/mysql/.env | cut -d= -f2`
   --rm \
   --name add_email_support_to_$DOMAIN \
   --link mysql-mail:db \
-  pierreozoux/mysql \
+  indiepaas/mysql \
     mysql \
       -uadmin \
       -p$MYSQL_PASS \
diff --git a/utils/add_email_support.sh b/utils/add_email_support.sh
new file mode 100755
index 0000000000000000000000000000000000000000..3c8643fd934534992e2a0be53615ac9970225096
--- /dev/null
+++ b/utils/add_email_support.sh
@@ -0,0 +1,40 @@
+#!/bin/bash -ex
+
+DOMAIN=$1
+MYSQL_PASS=`cat /data/domains/mail/mysql/.env | cut -d= -f2`
+
+/usr/bin/docker run \
+  --rm \
+  --name add_email_support_to_$DOMAIN \
+  --link mysql-mail:db \
+  indiepaas/mysql \
+    mysql \
+      -uadmin \
+      -p$MYSQL_PASS \
+      -h db \
+        -e "INSERT INTO servermail.virtual_domains (name) VALUES ('$DOMAIN');"
+
+mkdir -p /data/domains/mail/opendkim/keys/$DOMAIN
+
+/usr/bin/docker run \
+  --rm \
+  --name opendkim-genkey \
+  indiepaas/postfix \
+    /usr/bin/opendkim-genkey -D /etc/opendkim/keys/$DOMAIN/ -d $DOMAIN -s mail && chown -R opendkim: /etc/opendkim/keys
+
+mv /data/domains/mail/opendkim/keys/$DOMAIN/mail.private /data/domains/mail/opendkim/keys/$DOMAIN/mail
+
+echo mail._domainkey.$DOMAIN $DOMAIN:mail:/etc/opendkim/keys/$DOMAIN/mail >> /data/domains/mail/opendkim/KeyTable
+
+echo *@$DOMAIN mail._domainkey.$DOMAIN >> /data/domains/mail/opendkim/SigningTable
+
+echo $DOMAIN >> /data/domains/mail/opendkim/TrustedHosts
+echo galaxy.$DOMAIN >> /data/domains/mail/opendkim/TrustedHosts
+
+echo "Domain installed with success."
+echo "Please add the followig records to it's DNS."
+
+cat /data/domains/mail/opendkim/keys/$DOMAIN/mail.txt
+
+echo "And don't forget spf :)"
+