diff --git a/postfix/tasks/main.yml b/postfix/tasks/main.yml
index 481ad35dbd8c993ae20faf782ce815c02510a896..53527ce364d1794db446ca080e27afd5357e9e27 100644
--- a/postfix/tasks/main.yml
+++ b/postfix/tasks/main.yml
@@ -130,7 +130,7 @@
   template:
     src: virtual.j2
     dest: /etc/postfix/virtual
-  when: virtual_aliases is defined or postfix_virtual_domains|count > 0
+  when: virtual_aliases|default([])|count > 0 or postfix_virtual_domains|count > 0
   notify:
     - postmap virtual
   tags:
diff --git a/postfix/templates/aliases.j2 b/postfix/templates/aliases.j2
index b52c679fcafda1f0db9d7bb41d72469b42bd1d5f..ea3de678a86d9c971b7e9b2e961b15dfb1c3eb76 100644
--- a/postfix/templates/aliases.j2
+++ b/postfix/templates/aliases.j2
@@ -1,4 +1,4 @@
-{% for alias in system_aliases %}
+{% for alias in system_aliases|default([]) %}
 {% if alias.src is string %}
 {{ alias.src }}: {{ alias.dest if alias.dest is string else alias.dest|join(', ') }}
 {% else %}
diff --git a/postfix/templates/main.cf.j2 b/postfix/templates/main.cf.j2
index 988b60a64dfecee8b7ae4926c29fd09fb1f1d1aa..e07ad801799330ab1ed64f833566f2a8355f7fc2 100644
--- a/postfix/templates/main.cf.j2
+++ b/postfix/templates/main.cf.j2
@@ -98,7 +98,7 @@ tls_ssl_options = NO_COMPRESSION
 
 alias_maps = cdb:/etc/aliases
 alias_database = cdb:/etc/aliases
-{% if virtual_aliases is defined or postfix_virtual_domains|count > 0 %}
+{% if virtual_aliases|default([])|count > 0 or postfix_virtual_domains|count > 0 %}
 virtual_alias_maps = cdb:/etc/postfix/virtual
 {% endif %}
 
diff --git a/postfix/templates/virtual.j2 b/postfix/templates/virtual.j2
index 5f6230ec30f082f6702ea26634be0c6696eb0c5a..99d4e929cf1121c02a9a11a02211efe499c01448 100644
--- a/postfix/templates/virtual.j2
+++ b/postfix/templates/virtual.j2
@@ -4,7 +4,7 @@ hostmaster@{{ domain }} {{ adminaddr }}
 abuse@{{ domain }} {{ adminaddr }}
 {% endfor %}
 
-{% for alias in virtual_aliases %}
+{% for alias in virtual_aliases|default([]) %}
 {% if alias.src is string %}
 {{ alias.src }} {{ alias.dest if alias.dest is string else alias.dest|join(', ') }}
 {% else %}