Dodaje servere za webmail u mynetwork, fix za dupliciranje IPv6 localhost adrese
[postfix-cn.git] / debian / postinst
index 89372df..cde2e48 100755 (executable)
@@ -7,6 +7,7 @@ set -e
 
 # Load CARNet Tools
 . /usr/share/carnet-tools/functions.sh
+
 # Load Debconf
 . /usr/share/debconf/confmodule
 
@@ -41,8 +42,6 @@ if echo $rbl | grep -q dnsbl.njabl.org; then
 fi
 
 db_get postfix-cn/matchgecos || true
-
-db_get postfix-cn/matchgecos || true
 matchgecos="$RET"
 
 hostname="`hostname`"
@@ -60,15 +59,41 @@ netaddr="$RET"
 cp -pf /etc/postfix/master.cf /etc/postfix/master.cf.dpkg-tmp.$$
 cp -pf /etc/postfix/main.cf /etc/postfix/main.cf.dpkg-tmp.$$
 
-# srediti master.cf za TLS
+# srediti master.cf za TLS & submission & retry
 if [ -f /etc/postfix/master.cf ]; then
   cp_check_and_sed '^#tlsmgr' \
                    's/^#tlsmgr/tlsmgr/g' \
                    /etc/postfix/master.cf || true
 
+  cp_check_and_sed '^#submission' \
+                   's/^#submission/submission/g' \
+                   /etc/postfix/master.cf || true
+
+  cp_check_and_sed '^#retry' \
+                   's/^#retry/retry/g' \
+                   /etc/postfix/master.cf || true
+
   cp_check_and_sed '^#smtps' \
                    's/^#smtps/smtps/g' \
                    /etc/postfix/master.cf || true
+
+  cp_check_and_sed '^#  -o' \
+                   's/^#  -o/  -o/g' \
+                   /etc/postfix/master.cf || true
+
+  for option in  "-o milter_macro_daemon_name=ORIGINATING" \
+                 "-o smtpd_recipient_restrictions=" \
+                 "-o smtpd_reject_unlisted_recipient=no" \
+                 "-o smtpd_relay_restrictions=permit_sasl_authenticated,reject" \
+                 "-o smtpd_sasl_auth_enable=yes" \
+                 "-o smtpd_tls_security_level=encrypt" \
+                 "-o smtpd_tls_wrappermode=yes" \
+                 "-o syslog_name=postfix/smtps" \
+                 "-o syslog_name=postfix/submission"; do
+  cp_check_and_sed "^#   $option" \
+                   "s/#   $option/$option/g" \
+                   /etc/postfix/master.cf || true
+  done
 fi
 
 # ovo manje/vise uzima kao default, ali u slucaju da je multihomed stroj,
@@ -82,10 +107,11 @@ postconf -e append_dot_mydomain="yes"
 postconf -e append_at_myorigin="yes"
 
 # dodaj 127.0.0.0/8, netaddr i ipv6-localhost
+# dodaje izlazne servere za webmail --zelja
 mynetworks="`postconf -h mynetworks`"
-for i in "127.0.0.0/8" "$netaddr" "[::1]/128"; do
+for i in "127.0.0.0/8" "\[::1\]/128" "$netaddr" "193.198.233.95" "193.198.233.96"; do
   if ! echo $mynetworks | grep -q $i; then
-   mynetworks="$mynetworks $i"
+   mynetworks="$mynetworks, $i"
   fi
 done
 postconf -e mynetworks="$mynetworks"
@@ -251,19 +277,15 @@ fi
 
 # restart saslauthd
 if [ "$restart_saslauthd" = "yes" ]; then
-  if [ -x /usr/sbin/invoke-rc.d ]; then
-    [ -x /etc/init.d/saslauthd ] && invoke-rc.d saslauthd restart
-  else
-    [ -x /etc/init.d/saslauthd ] && /etc/init.d/saslauthd restart
-  fi
+  service saslauthd restart
 fi
 
 # TLS stuff
 postconf -e smtp_tls_security_level="may"
-postconf -e smtp_tls_session_cache_database="sdbm:/var/lib/postfix/smtp_scache"
+postconf -e smtp_tls_session_cache_database="btree:/var/lib/postfix/smtp_scache"
 postconf -e smtp_tls_session_cache_timeout="3600s"
 postconf -e smtpd_tls_security_level="may"
-postconf -e smtpd_tls_session_cache_database="sdbm:/var/lib/postfix/smtpd_scache"
+postconf -e smtpd_tls_session_cache_database="btree:/var/lib/postfix/smtpd_scache"
 postconf -e smtpd_tls_session_cache_timeout="3600s"
 postconf -e tls_random_source="dev:/dev/urandom"
 postconf -e smtpd_tls_exclude_ciphers="aNULL"
@@ -347,11 +369,11 @@ if ! cmp -s /etc/postfix/main.cf /etc/postfix/main.cf.dpkg-tmp.$$; then
 fi
 rm -f /etc/postfix/main.cf.dpkg-tmp.$$
 
-if ! grep -q "retry     unix  -       -       -       -       -       error" /etc/postfix/master.cf; then
-  echo "CN: Please, add this line in /etc/postfix/master.cf and restart Postfix."
-  echo "retry     unix  -       -       -       -       -       error"
-  echo
-fi
+#if ! grep -q "retry     unix  -       -       y       -       -       error" /etc/postfix/master.cf; then
+#  echo "CN: Please, add this line in /etc/postfix/master.cf and restart Postfix."
+#  echo "retry     unix  -       -       y       -       -       error"
+#  echo
+#fi
 
 # kreiraj aliases_gecos
 if [ -x /usr/share/postfix-cn/make-aliases-gecos.sh ]; then
@@ -361,13 +383,12 @@ if [ -x /usr/share/postfix-cn/make-aliases-gecos.sh ]; then
   fi
 fi
 
+# rjesava gresku using backwards-compatible default setting chroot=y
+postconf -F smtp/inet/chroot=y && restart_postfix="yes"
+
 # restart 
 if [ "$restart_postfix" = "yes" ]; then
-  if [ -x /usr/sbin/invoke-rc.d ]; then
-    [ -x /etc/init.d/postfix ] && invoke-rc.d postfix restart
-  else
-    [ -x /etc/init.d/postfix ] && /etc/init.d/postfix restart
-  fi
+  service postfix restart
 fi
 cp_mail postfix-cn