add support for mail module
See http://wiki.nginx.org/Modules#Mail_modules
Sample Usage:
nginx::resource::mailhost { 'domain1.example':
ensure => present,
auth_http => 'server2.example/cgi-bin/auth',
protocol => 'smtp',
listen_port => 587,
ssl_port => 465,
starttls => 'only',
xclient => 'off',
ssl => 'true',
ssl_cert => '/tmp/server.crt',
ssl_key => '/tmp/server.pem',
}
2013-03-11 14:05:00 +01:00
|
|
|
|
|
|
|
server {
|
2015-01-13 17:30:00 +01:00
|
|
|
<%- if @listen_ip.is_a?(Array) then -%>
|
|
|
|
<%- @listen_ip.each do |ip| -%>
|
|
|
|
listen <%= ip %>:<%= @listen_port %><% if @listen_options %> <%= @listen_options %><% end %>;
|
|
|
|
<%- end -%>
|
|
|
|
<%- else -%>
|
2013-11-10 23:59:11 +01:00
|
|
|
listen <%= @listen_ip %>:<%= @listen_port %><% if @listen_options %> <%= @listen_options %><% end %>;
|
2015-01-13 17:30:00 +01:00
|
|
|
<%- end -%>
|
|
|
|
<%# check to see if ipv6 support exists in the kernel before applying -%>
|
|
|
|
<%- if @ipv6_enable && (defined? @ipaddress6) -%>
|
|
|
|
<%- if @ipv6_listen_ip.is_a?(Array) then -%>
|
|
|
|
<%- @ipv6_listen_ip.each do |ipv6| -%>
|
|
|
|
listen [<%= ipv6 %>]:<%= @ipv6_listen_port %> <% if @ipv6_listen_options %><%= @ipv6_listen_options %><% end %>;
|
|
|
|
<%- end -%>
|
|
|
|
<%- else -%>
|
|
|
|
listen [<%= @ipv6_listen_ip %>]:<%= @ipv6_listen_port %> <% if @ipv6_listen_options %><%= @ipv6_listen_options %><% end %>;
|
|
|
|
<%- end -%>
|
|
|
|
<%- end -%>
|
2013-11-10 23:59:11 +01:00
|
|
|
server_name <%= @server_name.join(" ") %>;
|
|
|
|
protocol <%= @protocol %>;
|
|
|
|
xclient <%= @xclient %>;
|
|
|
|
auth_http <%= @auth_http %>;
|
|
|
|
starttls <%= @starttls %>;
|
|
|
|
<% if @starttls == 'on' || @starttls == 'only' %>
|
|
|
|
ssl_certificate <%= @ssl_cert %>;
|
|
|
|
ssl_certificate_key <%= @ssl_key %>;
|
add support for mail module
See http://wiki.nginx.org/Modules#Mail_modules
Sample Usage:
nginx::resource::mailhost { 'domain1.example':
ensure => present,
auth_http => 'server2.example/cgi-bin/auth',
protocol => 'smtp',
listen_port => 587,
ssl_port => 465,
starttls => 'only',
xclient => 'off',
ssl => 'true',
ssl_cert => '/tmp/server.crt',
ssl_key => '/tmp/server.pem',
}
2013-03-11 14:05:00 +01:00
|
|
|
|
|
|
|
ssl_session_timeout 5m;
|
|
|
|
|
|
|
|
ssl_protocols SSLv3 TLSv1;
|
2014-10-16 15:23:54 +02:00
|
|
|
|
2015-06-24 11:34:59 +02:00
|
|
|
# Suggested from https://wiki.mozilla.org/Security/Server_Side_TLS#Nginx_configuration_details and https://weakdh.org/sysadmin.html
|
|
|
|
ssl_ciphers 'ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-DSS-AES128-GCM-SHA256:kEDH+AESGCM:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA:ECDHE-ECDSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:DHE-DSS-AES128-SHA256:DHE-RSA-AES256-SHA256:DHE-DSS-AES256-SHA:DHE-RSA-AES256-SHA:AES128-GCM-SHA256:AES256-GCM-SHA384:AES128-SHA256:AES256-SHA256:AES128-SHA:AES256-SHA:AES:CAMELLIA:DES-CBC3-SHA:!aNULL:!eNULL:!EXPORT:!DES:!RC4:!MD5:!PSK:!aECDH:!EDH-DSS-DES-CBC3-SHA:!EDH-RSA-DES-CBC3-SHA:!KRB5-DES-CBC3-SHA';
|
2014-10-16 15:23:54 +02:00
|
|
|
|
add support for mail module
See http://wiki.nginx.org/Modules#Mail_modules
Sample Usage:
nginx::resource::mailhost { 'domain1.example':
ensure => present,
auth_http => 'server2.example/cgi-bin/auth',
protocol => 'smtp',
listen_port => 587,
ssl_port => 465,
starttls => 'only',
xclient => 'off',
ssl => 'true',
ssl_cert => '/tmp/server.crt',
ssl_key => '/tmp/server.pem',
}
2013-03-11 14:05:00 +01:00
|
|
|
ssl_prefer_server_ciphers on;
|
|
|
|
<%- end -%>
|
|
|
|
}
|