@@ -43,35 +43,64 @@ is_package_full 'MAIL_DOMAINS'
4343# Action #
4444#----------------------------------------------------------#
4545
46- # Adding domain directory and necessary files
47- mkdir $HOMEDIR/$user/conf/mail/$domain
48- mkdir $HOMEDIR/$user/mail/$domain_idn
49- touch $HOMEDIR/$user/conf/mail/$domain/aliases
50- touch $HOMEDIR/$user/conf/mail/$domain/passwd
51-
52- # Adding symlink
53- ln -s $HOMEDIR/$user/conf/mail/$domain /etc/$MAIL_SYSTEM/domains/$domain_idn
54-
55- # Adding antispam protection
56- if [ "$antispam" = 'yes' ]; then
57- touch $HOMEDIR/$user/conf/mail/$domain/antispam
58- fi
59-
60- # Adding antivirus protection
61- if [ "$antivirus" = 'yes' ]; then
62- touch $HOMEDIR/$user/conf/mail/$domain/antivirus
63- fi
46+ # Adding domain to mail.conf
47+ s="DOMAIN='$domain' ANTIVIRUS='$antivirus' ANTISPAM='$antispam' DKIM='$dkim'"
48+ s="$s ACCOUNTS='0' U_DISK='0' CATCHALL='' SUSPENDED='no' TIME='$TIME'"
49+ s="$s DATE='$DATE'"
50+ echo $s >> $USER_DATA/mail.conf
51+ touch $USER_DATA/mail/$domain.conf
6452
65- # Adding dkim
53+ # Generating DKIM keys
6654if [ "$dkim" = 'yes' ]; then
6755 openssl genrsa -out $USER_DATA/mail/$domain.pem $dkim_size &>/dev/null
6856 openssl rsa -pubout -in $USER_DATA/mail/$domain.pem \
6957 -out $USER_DATA/mail/$domain.pub &>/dev/null
70- chmod 660 $USER_DATA/mail/$domain.*
58+ fi
59+
60+ # Set permissions
61+ chmod 660 $USER_DATA/mail/$domain.*
62+ chmod 660 $USER_DATA/mail.conf
63+
64+ # Building exim configs
65+ if [[ "$MAIL_SYSTEM" =~ exim ]]; then
66+ mkdir $HOMEDIR/$user/conf/mail/$domain
67+ mkdir $HOMEDIR/$user/mail/$domain_idn
68+ touch $HOMEDIR/$user/conf/mail/$domain/aliases
69+ touch $HOMEDIR/$user/conf/mail/$domain/passwd
70+ touch $HOMEDIR/$user/conf/mail/$domain/fwd_only
71+ ln -s $HOMEDIR/$user/conf/mail/$domain \
72+ /etc/$MAIL_SYSTEM/domains/$domain_idn
73+
74+ # Adding antispam protection
75+ if [ "$antispam" = 'yes' ]; then
76+ touch $HOMEDIR/$user/conf/mail/$domain/antispam
77+ fi
78+
79+ # Adding antivirus protection
80+ if [ "$antivirus" = 'yes' ]; then
81+ touch $HOMEDIR/$user/conf/mail/$domain/antivirus
82+ fi
7183
72- cp $USER_DATA/mail/$domain.pem $HOMEDIR/$user/conf/mail/$domain/dkim.pem
84+ # Adding dkim support
85+ if [ "$dkim" = 'yes' ]; then
86+ cp -f $USER_DATA/mail/$domain.pem \
87+ $HOMEDIR/$user/conf/mail/$domain/dkim.pem
88+ fi
89+
90+ # Set permission
91+ chmod 771 $HOMEDIR/$user/conf/mail/$domain
92+ chmod 660 $HOMEDIR/$user/conf/mail/$domain/*
93+ chmod 771 /etc/$MAIL_SYSTEM/domains/$domain_idn
94+ chmod 770 $HOMEDIR/$user/mail/$domain_idn
7395
74- # Adding dkim dns records
96+ # Set ownership
97+ chown -R $MAIL_USER:mail $HOMEDIR/$user/conf/mail/$domain
98+ chown -R dovecot:mail $HOMEDIR/$user/conf/mail/$domain/passwd
99+ chown $user:mail $HOMEDIR/$user/mail/$domain_idn
100+ fi
101+
102+ # Adding dkim dns records
103+ if [ ! -z "$DNS_SYSTEM" ] && [ "$dkim" = 'yes' ]; then
75104 check_dns_domain=$(is_object_valid 'dns' 'DOMAIN' "$domain")
76105 if [ "$?" -eq 0 ]; then
77106 p=$(cat $USER_DATA/mail/$domain.pub|grep -v ' KEY---'|tr -d '\n')
@@ -85,34 +114,6 @@ if [ "$dkim" = 'yes' ]; then
85114 fi
86115fi
87116
88- # Adding domain to vesta db
89- s="DOMAIN='$domain' ANTIVIRUS='$antivirus' ANTISPAM='$antispam' DKIM='$dkim'"
90- s="$s ACCOUNTS='0' U_DISK='0' CATCHALL='' SUSPENDED='no' TIME='$TIME'"
91- s="$s DATE='$DATE'"
92-
93- # Set permissions
94- chmod 660 $USER_DATA/mail/$domain.*
95- chmod 771 $HOMEDIR/$user/conf/mail/$domain
96- chmod 660 $HOMEDIR/$user/conf/mail/$domain/*
97- chmod 771 /etc/$MAIL_SYSTEM/domains/$domain_idn
98- chmod 770 $HOMEDIR/$user/mail/$domain_idn
99-
100- # Set ownership
101- if [ "$MAIL_SYSTEM" = 'exim' ]; then
102- mail_user=exim
103- fi
104- if [ "$MAIL_SYSTEM" = 'exim4' ]; then
105- mail_user=Debian-exim
106- fi
107- chown -R $mail_user:mail $HOMEDIR/$user/conf/mail/$domain
108- chown -R dovecot:mail $HOMEDIR/$user/conf/mail/$domain/passwd
109- chown $user:mail $HOMEDIR/$user/mail/$domain_idn
110-
111- echo $s >> $USER_DATA/mail.conf
112- touch $USER_DATA/mail/$domain.conf
113- chmod 660 $USER_DATA/mail.conf
114- chmod 660 $USER_DATA/mail/$domain.conf
115-
116117
117118#----------------------------------------------------------#
118119# Vesta #
0 commit comments