Explorar o código

update triggers

Serghey Rodin %!s(int64=11) %!d(string=hai) anos
pai
achega
23a0762219
Modificáronse 2 ficheiros con 45 adicións e 22 borrados
  1. 33 22
      upd/add_fwd_only.sh
  2. 12 0
      upd/fix_exim_permissions.sh

+ 33 - 22
upd/add_fwd_only.sh

@@ -1,33 +1,44 @@
 #!/bin/bash
 
-# Define exim config
+# RHEL or CentOS
 if [ -e "/etc/exim/exim.conf" ]; then
-    # RHEL or CentOS
-    conf="/etc/exim/exim.conf"
-else
-    # Debian or Ubuntu
-    conf="/etc/exim4/exim4.conf.template"
-fi
+    conf='/etc/exim/exim.conf'
 
-# Check existance
-if [ ! -e "$conf" ]; then
-    exit
-fi
+    # Check if fwd_only flag
+    check_flag=$(grep localuser_fwd_only $conf)
+    if [ ! -z "$check_flag" ]; then
+        exit
+    fi
+
+    # Define new router
+    fwd1='localuser_fwd_only:\n  driver = accept\n  transport = devnull\n'
+    fwd2='  condition = \${if exists{/etc/exim/domains/\$domain/fwd_only}'
+    fwd3='{\${lookup{\$local_part}lsearch{/etc/exim/domains/\$domain/fwd_only}'
+    fwd4='{true}{false}}}}\n\n'
 
-# Check if fwd_only flag
-check_flag=$(grep localuser_fwd_only $conf)
-if [ ! -z "$check_flag" ]; then
-    exit
+    # Insert router
+    sed -i "s%localuser_spam:%$fwd1$fwd2$fwd3${fwd4}localuser_spam:%" $conf
 fi
 
-# Define new router
-fwd1='localuser_fwd_only:\n  driver = accept\n  transport = devnull\n'
-fwd2='  condition = \${if exists{/etc/exim/domains/\$domain/fwd_only}'
-fwd3='{\${lookup{\$local_part}lsearch{/etc/exim/domains/\$domain/fwd_only}'
-fwd4='{true}{false}}}}\n\n'
+# Debian or Ubuntu
+if [ -e "/etc/exim4/exim4.conf.template" ]; then
+    conf="/etc/exim4/exim4.conf.template"
+
+    # Check if fwd_only flag
+    check_flag=$(grep localuser_fwd_only $conf)
+    if [ ! -z "$check_flag" ]; then
+        sed -i "s%/exim/domains/%/exim4/domains/i%" $conf
+    else
+        # Define new router
+        fwd1='localuser_fwd_only:\n  driver = accept\n  transport = devnull\n'
+        fwd2='  condition = \${if exists{/etc/exim4/domains/\$domain/fwd_only}'
+        fwd3='{\${lookup{\$local_part}lsearch'
+        fwd4='{/etc/exim4/domains/\$domain/fwd_only}{true}{false}}}}\n\n'
 
-# Insert router
-sed -i "s%localuser_spam:%$fwd1$fwd2$fwd3${fwd4}localuser_spam:%" $conf
+        # Insert router
+        sed -i "s%localuser_spam:%$fwd1$fwd2$fwd3${fwd4}localuser_spam:%" $conf
+    fi
+fi
 
 # Restart mail server
 /usr/local/vesta/bin/v-restart-mail

+ 12 - 0
upd/fix_exim_permissions.sh

@@ -0,0 +1,12 @@
+#!/bin/bash
+
+if [ -e "/etc/exim4/domains/" ]; then
+    for domain in $(ls /etc/exim4/domains/); do
+        domain_link=$(readlink /etc/exim4/domains/$domain)
+        chown Debian-exim:mail $domain_link
+        chown Debian-exim:mail /etc/exim4/domains/$domain/*
+        chown dovecot:mail /etc/exim4/domains/$domain/passwd
+    done
+fi
+
+exit