Add configs for virtual email aliases
This commit is contained in:
		
							parent
							
								
									cfa7da2051
								
							
						
					
					
						commit
						98acd429de
					
				@ -22,7 +22,17 @@
 | 
			
		||||
    "email": {
 | 
			
		||||
      "domain": "kosmos.org",
 | 
			
		||||
      "hostname": "mail.kosmos.org",
 | 
			
		||||
      "report_contact": "abuse@kosmos.org"
 | 
			
		||||
      "report_contact": "abuse@kosmos.org",
 | 
			
		||||
      "virtual_aliases": {
 | 
			
		||||
        "admin@kosmos.org":       "ops@kosmos.org",
 | 
			
		||||
        "ops@kosmos.org":         "ops@5apps.com",
 | 
			
		||||
        "webmaster":              "mail@kosmos.org",
 | 
			
		||||
        "hostmaster@kosmos.org":  "mail@kosmos.org",
 | 
			
		||||
        "postmaster@kosmos.org":  "mail@kosmos.org",
 | 
			
		||||
        "abuse@kosmos.org":       "mail@kosmos.org",
 | 
			
		||||
        "mail@kosmos.org":        "foundation@kosmos.org",
 | 
			
		||||
        "hackerhouse@kosmos.org": "mail@lagrange6.com"
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    "garage": {
 | 
			
		||||
      "replication_mode": "2",
 | 
			
		||||
 | 
			
		||||
@ -1,5 +1,9 @@
 | 
			
		||||
node.default["email"]["root_directory"]   = "/var/vmail"
 | 
			
		||||
node.default["email"]["domain"]           = "example.com"
 | 
			
		||||
node.default["email"]["hostname"]         = "mail.example.com"
 | 
			
		||||
node.default["email"]["report_contact"]   = "abuse@example.com"
 | 
			
		||||
node.default["email"]["ldap_host"]        = "ldap.kosmos.local"
 | 
			
		||||
node.default["email"]["ldap_search_base"] = "cn=users,dc=kosmos,dc=org"
 | 
			
		||||
node.default["email"]["virtual_aliases"]  = {
 | 
			
		||||
  "admin@example.com" => "administrator@example.com"
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
@ -12,6 +12,7 @@ end
 | 
			
		||||
 | 
			
		||||
domain   = node["email"]["domain"]
 | 
			
		||||
hostname = node["email"]["hostname"]
 | 
			
		||||
root_dir = node["email"]["root_directory"]
 | 
			
		||||
ip_addr  = node["knife_zero"]["host"]
 | 
			
		||||
 | 
			
		||||
ldap_host        = node["email"]["ldap_host"]
 | 
			
		||||
@ -37,13 +38,10 @@ node.normal['postfix']['main']['mailbox_transport'] = "lmtp:unix:private/dovecot
 | 
			
		||||
node.normal['postfix']['main']['virtual_transport'] = "lmtp:unix:private/dovecot-lmtp"
 | 
			
		||||
node.normal['postfix']['main']['smtputf8_enable'] = "no"
 | 
			
		||||
node.normal['postfix']['main']['recipient_delimiter'] = "+"
 | 
			
		||||
 | 
			
		||||
# node.normal['postfix']['main']['virtual_alias_domains'] = "ldap:/etc/postfix/ldap-virtual_alias_domains.cf"
 | 
			
		||||
node.normal['postfix']['main']['virtual_alias_maps'] = "hash:/var/vmail/aliases, ldap:/etc/postfix/ldap-virtual_alias_maps.cf"
 | 
			
		||||
node.normal['postfix']['main']['virtual_alias_maps'] = "hash:#{root_dir}/aliases, ldap:/etc/postfix/ldap-virtual_alias_maps.cf"
 | 
			
		||||
node.normal['postfix']['main']['virtual_mailbox_domains'] = "ldap:/etc/postfix/ldap-virtual_mailbox_domains.cf"
 | 
			
		||||
node.normal['postfix']['main']['virtual_mailbox_maps'] = "ldap:/etc/postfix/ldap-virtual_mailbox_maps.cf"
 | 
			
		||||
node.normal['postfix']['main']['smtpd_sender_login_maps'] = "ldap:/etc/postfix/ldap-smtpd_sender_login_maps.cf"
 | 
			
		||||
 | 
			
		||||
node.normal['postfix']['main']['milter_protocol'] = "6"
 | 
			
		||||
node.normal['postfix']['main']['milter_default_action'] = "accept"
 | 
			
		||||
node.normal['postfix']['main']['smtpd_milters'] = "inet:localhost:12301 local:spamass/spamass.sock"
 | 
			
		||||
@ -130,6 +128,20 @@ node.normal['postfix']['master'] = {
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
bash "compile_postfix_aliases" do
 | 
			
		||||
  cwd root_dir
 | 
			
		||||
  code "postmap #{root_dir}/aliases"
 | 
			
		||||
  action :nothing
 | 
			
		||||
  notifies :restart, "service[postfix]", :delayed
 | 
			
		||||
end
 | 
			
		||||
 | 
			
		||||
template "#{root_dir}/aliases" do
 | 
			
		||||
  source    "virtual-aliases.erb"
 | 
			
		||||
  mode      0755
 | 
			
		||||
  variables aliases: node["email"]["virtual_aliases"]
 | 
			
		||||
  notifies :run, "bash[compile_postfix_aliases]", :immediately
 | 
			
		||||
end
 | 
			
		||||
 | 
			
		||||
ldap_default_variables = {
 | 
			
		||||
  server_host: ldap_host,
 | 
			
		||||
  bind_dn: credentials['ldap_dn'],
 | 
			
		||||
 | 
			
		||||
@ -0,0 +1,3 @@
 | 
			
		||||
<% @aliases.each do |k, v| %>
 | 
			
		||||
<%= "#{k}\t#{v}" %>
 | 
			
		||||
<% end %>
 | 
			
		||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user