summaryrefslogtreecommitdiff
path: root/templates/puppetmaster.erb
blob: b67816332ab91388082d62d242f5d80e63e4e6b3 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
# This configuration file was auto-generated by the Puppet configuration
# management system.  Any changes you make to this file will be overwritten
# the next time Puppet runs.  Please make configuration changes to this
# service in Puppet.

server {
    listen                       <%= scope.lookupvar('nginx::puppetmaster::ssl_port') %>;
    ssl_verify_client            on;
    root                         /var/empty;
    access_log                   /var/log/nginx/access-<%= scope.lookupvar('nginx::puppetmaster::ssl_port') %>.log;
    rewrite_log                  on;
    large_client_header_buffers  16 4k;

    # Variables
    # $ssl_cipher returns the line of those utilized it is cipher for established SSL-connection
    # $ssl_client_serial returns the series number of client certificate for established SSL-connection
    # $ssl_client_s_dn returns line subject DN of client certificate for established SSL-connection
    # $ssl_client_i_dn returns line issuer DN of client certificate for established SSL-connection
    # $ssl_protocol returns the protocol of established SSL-connection

    location / {
        proxy_pass                   http://puppet-production;
        proxy_redirect               off;
        proxy_set_header             Host             $host;
        proxy_set_header             X-Real-IP        $remote_addr;
        proxy_set_header             X-Forwarded-For  $proxy_add_x_forwarded_for;
        proxy_set_header             X-Client-Verify  SUCCESS;
        proxy_set_header             X-SSL-Subject    $ssl_client_s_dn;
        proxy_set_header             X-SSL-Issuer     $ssl_client_i_dn;
        proxy_connect_timeout        90;
        proxy_send_timeout           180;
        proxy_read_timeout           180;
        proxy_buffer_size            16k;
        proxy_busy_buffers_size      32k;
        proxy_intercept_errors       on;
        proxy_buffers                128 4k;
    }
}

server {
    listen                       <%= scope.lookupvar('nginx::puppetmaster::non_ssl_port') %>;
    ssl_verify_client            off;
    root                         /var/empty;
    access_log                   /var/log/nginx/access-<%= scope.lookupvar('nginx::puppetmaster::non_ssl_port') %>.log;
    rewrite_log                  on;
    large_client_header_buffers  16 4k;

    location / {
        proxy_pass                   http://puppet-production;
        proxy_redirect               off;
        proxy_set_header             Host             $host;
        proxy_set_header             X-Real-IP        $remote_addr;
        proxy_set_header             X-Forwarded-For  $proxy_add_x_forwarded_for;
        proxy_set_header             X-Client-Verify  FAILURE;
        proxy_set_header             X-SSL-Subject    $ssl_client_s_dn;
        proxy_set_header             X-SSL-Issuer     $ssl_client_i_dn;
        proxy_connect_timeout        90;
        proxy_send_timeout           180;
        proxy_read_timeout           180;
        proxy_buffer_size            16k;
        proxy_busy_buffers_size      32k;
        proxy_intercept_errors       on;
        proxy_buffers                128 4k;
    }
}