diff --git a/install/dist/lib/centos52.lib.php b/install/dist/lib/centos52.lib.php
index f4aa4dfe9d676663b31ab348e4b82de150b94793..7f8901b1af3d5def8bb649ef8d62c8411a2abdf3 100644
--- a/install/dist/lib/centos52.lib.php
+++ b/install/dist/lib/centos52.lib.php
@@ -141,13 +141,25 @@ class installer extends installer_dist {
 		}
 
 		// Append the configuration for amavisd to the master.cf file
-		if(is_file($conf["postfix"]["config_dir"].'/master.cf')) copy($conf["postfix"]["config_dir"].'/master.cf', $conf["postfix"]["config_dir"].'/master.cf~');
-		$content = rf($conf["postfix"]["config_dir"].'/master.cf');
+		if(is_file($conf['postfix']['config_dir'].'/master.cf')) copy($conf['postfix']['config_dir'].'/master.cf', $conf['postfix']['config_dir'].'/master.cf~');
+		$content = rf($conf['postfix']['config_dir'].'/master.cf');
 		// Only add the content if we had not addded it before
-		if(!stristr($content, "127.0.0.1:10025")) {
+		if(!preg_match('/^amavis\s+/m', $content)) {
 			unset($content);
-			$content = rfsel($conf['ispconfig_install_dir'].'/server/conf-custom/install/master_cf_amavis.master', "tpl/master_cf_amavis.master");
-			af($conf["postfix"]["config_dir"].'/master.cf', $content);
+			$content = rfsel($conf['ispconfig_install_dir'].'/server/conf-custom/install/master_cf_amavis.master', 'tpl/master_cf_amavis.master');
+			af($conf['postfix']['config_dir'].'/master.cf', $content);
+			$content = rf($conf['postfix']['config_dir'].'/master.cf');
+		}
+		if(!preg_match('/^127.0.0.1:10025\s+/m', $content)) {
+			unset($content);
+			$content = rfsel($conf['ispconfig_install_dir'].'/server/conf-custom/install/master_cf_amavis10025.master', 'tpl/master_cf_amavis10025.master');
+			af($conf['postfix']['config_dir'].'/master.cf', $content);
+			$content = rf($conf['postfix']['config_dir'].'/master.cf');
+		}
+		if(!preg_match('/^127.0.0.1:10027\s+/m', $content)) {
+			unset($content);
+			$content = rfsel($conf['ispconfig_install_dir'].'/server/conf-custom/install/master_cf_amavis10027.master', 'tpl/master_cf_amavis10027.master');
+			af($conf['postfix']['config_dir'].'/master.cf', $content);
 		}
 		unset($content);
 
diff --git a/install/dist/lib/centos53.lib.php b/install/dist/lib/centos53.lib.php
index 93083b518865b19fd624f6354959f19e25760d33..ee586f78d5332ec62a4e47abce56b215f7d2aa84 100644
--- a/install/dist/lib/centos53.lib.php
+++ b/install/dist/lib/centos53.lib.php
@@ -142,13 +142,25 @@ class installer extends installer_dist {
 		}
 
 		// Append the configuration for amavisd to the master.cf file
-		if(is_file($conf["postfix"]["config_dir"].'/master.cf')) copy($conf["postfix"]["config_dir"].'/master.cf', $conf["postfix"]["config_dir"].'/master.cf~');
-		$content = rf($conf["postfix"]["config_dir"].'/master.cf');
+		if(is_file($conf['postfix']['config_dir'].'/master.cf')) copy($conf['postfix']['config_dir'].'/master.cf', $conf['postfix']['config_dir'].'/master.cf~');
+		$content = rf($conf['postfix']['config_dir'].'/master.cf');
 		// Only add the content if we had not addded it before
-		if(!stristr($content, "127.0.0.1:10025")) {
+		if(!preg_match('/^amavis\s+/m', $content)) {
 			unset($content);
-			$content = rfsel($conf['ispconfig_install_dir'].'/server/conf-custom/install/master_cf_amavis.master', "tpl/master_cf_amavis.master");
-			af($conf["postfix"]["config_dir"].'/master.cf', $content);
+			$content = rfsel($conf['ispconfig_install_dir'].'/server/conf-custom/install/master_cf_amavis.master', 'tpl/master_cf_amavis.master');
+			af($conf['postfix']['config_dir'].'/master.cf', $content);
+			$content = rf($conf['postfix']['config_dir'].'/master.cf');
+		}
+		if(!preg_match('/^127.0.0.1:10025\s+/m', $content)) {
+			unset($content);
+			$content = rfsel($conf['ispconfig_install_dir'].'/server/conf-custom/install/master_cf_amavis10025.master', 'tpl/master_cf_amavis10025.master');
+			af($conf['postfix']['config_dir'].'/master.cf', $content);
+			$content = rf($conf['postfix']['config_dir'].'/master.cf');
+		}
+		if(!preg_match('/^127.0.0.1:10027\s+/m', $content)) {
+			unset($content);
+			$content = rfsel($conf['ispconfig_install_dir'].'/server/conf-custom/install/master_cf_amavis10027.master', 'tpl/master_cf_amavis10027.master');
+			af($conf['postfix']['config_dir'].'/master.cf', $content);
 		}
 		unset($content);
 
diff --git a/install/dist/lib/fedora.lib.php b/install/dist/lib/fedora.lib.php
index 3d86492dca4bafdcd674dd274da184bc3c2b0c22..bbcdfa68fa4cea5f7d568a81d8302b579de00032 100644
--- a/install/dist/lib/fedora.lib.php
+++ b/install/dist/lib/fedora.lib.php
@@ -497,13 +497,25 @@ class installer_dist extends installer_base {
 		}
 
 		// Append the configuration for amavisd to the master.cf file
-		if(is_file($conf["postfix"]["config_dir"].'/master.cf')) copy($conf["postfix"]["config_dir"].'/master.cf', $conf["postfix"]["config_dir"].'/master.cf~');
-		$content = rf($conf["postfix"]["config_dir"].'/master.cf');
+		if(is_file($conf['postfix']['config_dir'].'/master.cf')) copy($conf['postfix']['config_dir'].'/master.cf', $conf['postfix']['config_dir'].'/master.cf~');
+		$content = rf($conf['postfix']['config_dir'].'/master.cf');
 		// Only add the content if we had not addded it before
-		if(!stristr($content, "127.0.0.1:10025")) {
+		if(!preg_match('/^amavis\s+/m', $content)) {
+			unset($content);
+			$content = rfsel($conf['ispconfig_install_dir'].'/server/conf-custom/install/master_cf_amavis.master', 'tpl/master_cf_amavis.master');
+			af($conf['postfix']['config_dir'].'/master.cf', $content);
+			$content = rf($conf['postfix']['config_dir'].'/master.cf');
+		}
+		if(!preg_match('/^127.0.0.1:10025\s+/m', $content)) {
+			unset($content);
+			$content = rfsel($conf['ispconfig_install_dir'].'/server/conf-custom/install/master_cf_amavis10025.master', 'tpl/master_cf_amavis10025.master');
+			af($conf['postfix']['config_dir'].'/master.cf', $content);
+			$content = rf($conf['postfix']['config_dir'].'/master.cf');
+		}
+		if(!preg_match('/^127.0.0.1:10027\s+/m', $content)) {
 			unset($content);
-			$content = rfsel($conf['ispconfig_install_dir'].'/server/conf-custom/install/master_cf_amavis.master', "tpl/master_cf_amavis.master");
-			af($conf["postfix"]["config_dir"].'/master.cf', $content);
+			$content = rfsel($conf['ispconfig_install_dir'].'/server/conf-custom/install/master_cf_amavis10027.master', 'tpl/master_cf_amavis10027.master');
+			af($conf['postfix']['config_dir'].'/master.cf', $content);
 		}
 		unset($content);
 
diff --git a/install/dist/lib/gentoo.lib.php b/install/dist/lib/gentoo.lib.php
index 7078f83dabd8e826334e8c0ac5bf81fb5020fc82..e7aac8c61fb9c9612bc331427f800d634f7e243b 100644
--- a/install/dist/lib/gentoo.lib.php
+++ b/install/dist/lib/gentoo.lib.php
@@ -332,14 +332,25 @@ class installer extends installer_base
 			caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command");
 		}
 
-		//* Append the configuration for amavisd to the master.cf file
+        // Append the configuration for amavisd to the master.cf file
 		$content = rf($conf['postfix']['config_dir'].'/master.cf');
-
-		if(!stristr($content, '127.0.0.1:10025')) //* Only add the content if we had not addded it before
-			{
+		// Only add the content if we had not addded it before
+		if(!preg_match('/^amavis\s+/m', $content)) {
 			unset($content);
 			$content = $this->get_template_file('master_cf_amavis', true);
 			af($conf['postfix']['config_dir'].'/master.cf', $content);
+			$content = rf($conf['postfix']['config_dir'].'/master.cf');
+		}
+		if(!preg_match('/^127.0.0.1:10025\s+/m', $content)) {
+ 			unset($content);
+            $content = $this->get_template_file('master_cf_amavis10025', true);
+			af($conf['postfix']['config_dir'].'/master.cf', $content);
+			$content = rf($conf['postfix']['config_dir'].'/master.cf');
+		}
+		if(!preg_match('/^127.0.0.1:10027\s+/m', $content)) {
+			unset($content);
+			$content = $this->get_template_file('master_cf_amavis10027', true);
+			af($conf['postfix']['config_dir'].'/master.cf', $content);
 		}
 		unset($content);
 
diff --git a/install/dist/lib/opensuse.lib.php b/install/dist/lib/opensuse.lib.php
index 9ec6bcf4711d6f7c90cb4f5ec42948d35265ca7c..a052615e43f3366052e55898b9d78516a0e04520 100644
--- a/install/dist/lib/opensuse.lib.php
+++ b/install/dist/lib/opensuse.lib.php
@@ -533,11 +533,23 @@ class installer_dist extends installer_base {
 		// Append the configuration for amavisd to the master.cf file
 		if(is_file($conf["postfix"]["config_dir"].'/master.cf')) copy($conf["postfix"]["config_dir"].'/master.cf', $conf["postfix"]["config_dir"].'/master.cf~');
 		$content = rf($conf["postfix"]["config_dir"].'/master.cf');
-		// Only add the content if we had not addded it before
-		if(!stristr($content, "127.0.0.1:10025")) {
+        // Only add the content if we had not addded it before
+		if(!preg_match('/^amavis\s+/m', $content)) {
+			unset($content);
+			$content = rfsel($conf['ispconfig_install_dir'].'/server/conf-custom/install/master_cf_amavis.master', 'tpl/master_cf_amavis.master');
+			af($conf['postfix']['config_dir'].'/master.cf', $content);
+			$content = rf($conf['postfix']['config_dir'].'/master.cf');
+		}
+		if(!preg_match('/^127.0.0.1:10025\s+/m', $content)) {
+			unset($content);
+			$content = rfsel($conf['ispconfig_install_dir'].'/server/conf-custom/install/master_cf_amavis10025.master', 'tpl/master_cf_amavis10025.master');
+			af($conf['postfix']['config_dir'].'/master.cf', $content);
+			$content = rf($conf['postfix']['config_dir'].'/master.cf');
+		}
+		if(!preg_match('/^127.0.0.1:10027\s+/m', $content)) {
 			unset($content);
-			$content = rfsel($conf['ispconfig_install_dir'].'/server/conf-custom/install/master_cf_amavis.master', "tpl/master_cf_amavis.master");
-			af($conf["postfix"]["config_dir"].'/master.cf', $content);
+			$content = rfsel($conf['ispconfig_install_dir'].'/server/conf-custom/install/master_cf_amavis10027.master', 'tpl/master_cf_amavis10027.master');
+			af($conf['postfix']['config_dir'].'/master.cf', $content);
 		}
 		unset($content);
 
diff --git a/install/install.php b/install/install.php
index 75a8b70dda83b7beb422a50b2d317e45e5569a69..22bd4a780412d1ac6827c73566fa5ba0cb40b0e3 100644
--- a/install/install.php
+++ b/install/install.php
@@ -344,6 +344,8 @@ if($install_mode == 'standard') {
 	if($conf['nginx']['installed'] == true && $conf['nginx']['init_script'] != '') system($inst->getinitcommand($conf['nginx']['init_script'], 'restart').' &> /dev/null');
 	if($conf['ufw']['installed'] == true && $conf['ufw']['init_script'] != '') system($inst->getinitcommand($conf['ufw']['init_script'], 'restart').' &> /dev/null');
 
+} else {
+
 	//* In expert mode, we select the services in the following steps, only db is always available
 	$conf['services']['mail'] = false;
 	$conf['services']['web'] = false;
diff --git a/install/lib/installer_base.lib.php b/install/lib/installer_base.lib.php
index cdb0a5368070834bbd53f4c378343063af914ad2..61a1fbaabe54118444559e31d5e102010f7582ee 100644
--- a/install/lib/installer_base.lib.php
+++ b/install/lib/installer_base.lib.php
@@ -669,11 +669,11 @@ class installer_base {
 
 		//* postfix-dkim
 		$full_file_name=$config_dir.'/tag_as_originating.re';
-		if(is_file($full_file_name)) copy($full_file_name, $config_dir.$configfile.'~');
+		if(is_file($full_file_name)) copy($full_file_name, $full_file_name.'~');
 		wf($full_file_name, '/^/ FILTER amavis:[127.0.0.1]:10026');
 
 		$full_file_name=$config_dir.'/tag_as_foreign.re';
-		if(is_file($full_file_name)) copy($full_file_name, $config_dir.$configfile.'~');
+		if(is_file($full_file_name)) copy($full_file_name, $full_file_name.'~');
 		wf($full_file_name, '/^/ FILTER amavis:[127.0.0.1]:10024');
 
 		//* Changing mode and group of the new created config files.
@@ -1040,10 +1040,22 @@ class installer_base {
 		if(is_file($conf['postfix']['config_dir'].'/master.cf')) copy($conf['postfix']['config_dir'].'/master.cf', $conf['postfix']['config_dir'].'/master.cf~');
 		$content = rf($conf['postfix']['config_dir'].'/master.cf');
 		// Only add the content if we had not addded it before
-		if(!stristr($content, '127.0.0.1:10025')) {
+		if(!preg_match('/^amavis\s+unix\s+/m', $content)) {
 			unset($content);
 			$content = rfsel($conf['ispconfig_install_dir'].'/server/conf-custom/install/master_cf_amavis.master', 'tpl/master_cf_amavis.master');
 			af($conf['postfix']['config_dir'].'/master.cf', $content);
+			$content = rf($conf['postfix']['config_dir'].'/master.cf');
+		}
+		if(!preg_match('/^127.0.0.1:10025\s+/m', $content)) {
+			unset($content);
+			$content = rfsel($conf['ispconfig_install_dir'].'/server/conf-custom/install/master_cf_amavis10025.master', 'tpl/master_cf_amavis10025.master');
+			af($conf['postfix']['config_dir'].'/master.cf', $content);
+			$content = rf($conf['postfix']['config_dir'].'/master.cf');
+		}
+		if(!preg_match('/^127.0.0.1:10027\s+/m', $content)) {
+			unset($content);
+			$content = rfsel($conf['ispconfig_install_dir'].'/server/conf-custom/install/master_cf_amavis10027.master', 'tpl/master_cf_amavis10027.master');
+			af($conf['postfix']['config_dir'].'/master.cf', $content);
 		}
 		unset($content);
 
@@ -1051,18 +1063,18 @@ class installer_base {
 		exec('adduser clamav amavis');
 
 		// Create the director for DKIM-Keys
-		mkdir("/var/lib/amavis/dkim", 0750);
+		if(!is_dir('/var/lib/amavis/dkim')) mkdir('/var/lib/amavis/dkim', 0750, true);
 		// get shell-user for amavis
 		$amavis_user=exec('grep -o "^amavis:\|^vscan:" /etc/passwd');
 		if(!empty($amavis_user)) {
 			$amavis_user=rtrim($amavis_user, ":");
-			exec('chown '.$amavis_user.'/var/lib/amavis/dkim');
+			exec('chown '.$amavis_user.' /var/lib/amavis/dkim');
 		}
 		// get shell-group for amavis
 		$amavis_group=exec('grep -o "^amavis:\|^vscan:" /etc/group');
 		if(!empty($amavis_group)) {
 			$amavis_group=rtrim($amavis_group, ":");
-			exec('chgrp '.$amavis_group.'/var/lib/amavis/dkim');
+			exec('chgrp '.$amavis_group.' /var/lib/amavis/dkim');
 		}
 	}
 
diff --git a/install/tpl/master_cf_amavis.master b/install/tpl/master_cf_amavis.master
index 2dd76f2e4554fd9962294f9f9038bef48d84c19d..54478f3c8046593b09fe569d24894ab7d94e8994 100644
--- a/install/tpl/master_cf_amavis.master
+++ b/install/tpl/master_cf_amavis.master
@@ -3,16 +3,3 @@ amavis unix - - - - 2 smtp
         -o smtp_data_done_timeout=1200
         -o smtp_send_xforward_command=yes
 
-127.0.0.1:10025 inet n - - - - smtpd
-        -o content_filter=
-        -o local_recipient_maps=
-        -o relay_recipient_maps=
-        -o smtpd_restriction_classes=
-        -o smtpd_client_restrictions=
-        -o smtpd_helo_restrictions=
-        -o smtpd_sender_restrictions=
-        -o smtpd_recipient_restrictions=permit_mynetworks,reject
-        -o mynetworks=127.0.0.0/8
-        -o strict_rfc821_envelopes=yes
-        -o receive_override_options=no_unknown_recipient_checks,no_header_body_checks
-
diff --git a/install/tpl/master_cf_amavis10025.master b/install/tpl/master_cf_amavis10025.master
new file mode 100644
index 0000000000000000000000000000000000000000..fb0481b39052dc00e9389d3586eb9bb943a24a30
--- /dev/null
+++ b/install/tpl/master_cf_amavis10025.master
@@ -0,0 +1,15 @@
+
+127.0.0.1:10025 inet n - n - - smtpd
+        -o content_filter=
+        -o local_recipient_maps=
+        -o relay_recipient_maps=
+        -o smtpd_restriction_classes=
+        -o smtpd_client_restrictions=
+        -o smtpd_helo_restrictions=
+        -o smtpd_sender_restrictions=
+        -o smtpd_recipient_restrictions=permit_mynetworks,reject
+        -o mynetworks=127.0.0.0/8
+        -o strict_rfc821_envelopes=yes
+        -o receive_override_options=no_unknown_recipient_checks,no_header_body_checks
+        -o smtp_send_xforward_command=yes
+
diff --git a/install/tpl/master_cf_amavis10027.master b/install/tpl/master_cf_amavis10027.master
new file mode 100644
index 0000000000000000000000000000000000000000..f24a8b2b1eeab2d2e6b0a1320da6e25b5874bbaa
--- /dev/null
+++ b/install/tpl/master_cf_amavis10027.master
@@ -0,0 +1,18 @@
+
+127.0.0.1:10027 inet n - n - - smtpd
+        -o content_filter=
+        -o local_recipient_maps=
+        -o relay_recipient_maps=
+        -o smtpd_restriction_classes=
+        -o smtpd_client_restrictions=
+        -o smtpd_helo_restrictions=
+        -o smtpd_sender_restrictions=
+        -o smtpd_recipient_restrictions=permit_mynetworks,reject
+        -o mynetworks=127.0.0.0/8
+        -o strict_rfc821_envelopes=yes
+        -o receive_override_options=no_unknown_recipient_checks,no_header_body_checks
+        -o smtp_send_xforward_command=yes
+	    -o milter_default_action=accept
+    	-o milter_macro_daemon_name=ORIGINATING
+	    -o smtpd_milters=inet:127.0.0.1:4445
+