diff --git a/manifests/files.pp b/manifests/files.pp
index effa5c67b14eb0ea6f3d987ceee1ff8e34fb3b5b..0bb41a3055ede80d13b59f7e9f69f1b199a4cd7d 100644
--- a/manifests/files.pp
+++ b/manifests/files.pp
@@ -9,6 +9,7 @@ class postfix::files {
   $master_smtps        = $postfix::master_smtps
   $master_submission   = $postfix::master_submission
   $myorigin            = $postfix::myorigin
+  $manage_root_alias   = $postfix::manage_root_alias
   $root_mail_recipient = $postfix::root_mail_recipient
   $smtp_listen         = $postfix::_smtp_listen
   $use_amavisd         = $postfix::use_amavisd
@@ -90,8 +91,11 @@ class postfix::files {
     default: {}
   }
 
-  mailalias {'root':
-    recipient => $root_mail_recipient,
-    notify    => Exec['newaliases'],
+  if $manage_root_alias {
+    mailalias {'root':
+      recipient => $root_mail_recipient,
+      notify    => Exec['newaliases'],
+    }
   }
+
 }
diff --git a/manifests/init.pp b/manifests/init.pp
index dd22f9384fb4bccc289723baaa519e5bcf985592..332e4c0cdbf89520cc9bced0a9dcaaeca8c2c8f4 100644
--- a/manifests/init.pp
+++ b/manifests/init.pp
@@ -89,6 +89,7 @@ class postfix (
   $mynetworks          = '127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128', # postfix_mynetworks
   $myorigin            = $::fqdn,
   $relayhost           = undef,         # postfix_relayhost
+  $manage_root_alias   = true,
   $root_mail_recipient = 'nobody',      # root_mail_recipient
   $satellite           = false,
   $smtp_listen         = '127.0.0.1',   # postfix_smtp_listen
@@ -104,6 +105,7 @@ class postfix (
   validate_bool($ldap)
   validate_bool($mailman)
   validate_bool($mta)
+  validate_bool($manage_root_alias)
   validate_bool($satellite)
   validate_bool($use_amavisd)
   validate_bool($use_dovecot_lda)
diff --git a/spec/classes/postfix_spec.rb b/spec/classes/postfix_spec.rb
index 854215838748c0da7e0a9ea6c0bccf69ce86be08..4858a706037703963c47933d6c35d2851d491138 100644
--- a/spec/classes/postfix_spec.rb
+++ b/spec/classes/postfix_spec.rb
@@ -289,6 +289,12 @@ describe 'postfix' do
               is_expected.to contain_file('/etc/postfix/master.cf').with_content(/sympa/)
             end
           end
+          context 'when manage_root_alias is false' do
+            let(:params) { { :manage_root_alias => false } }
+            it 'should not manage root mailalias' do
+              is_expected.not_to contain_mailalias('root')
+            end
+          end
         end
       end
     end