summaryrefslogtreecommitdiff
path: root/playbooks/roles/outbound/templates/proxy/nginx/toplevel.conf.d/stream.conf
blob: 224a7de49d0ddf1177c83cf84c13e56b7866da48 (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
stream {
    log_format basic '$proxy_protocol_addr - [$time_local] '
                     '$protocol $status $bytes_sent $bytes_received '
                     '$session_time';
    upstream imaps {
        server {{ loadbalancer_ip }}:993;
    }
    upstream smtps {
        server {{ loadbalancer_ip }}:465;
    }
    upstream smtptls {
        server {{ loadbalancer_ip }}:587;
    }
    upstream smtp {
        server {{ loadbalancer_ip }}:25;
    }
    upstream managesieve {
        server {{ loadbalancer_ip }}:4190;
    }
    upstream src {
        server {{ loadbalancer_ip }}:2222;
    }

    server {
        set_real_ip_from {{ docker_network }};
        listen     993 proxy_protocol;

        proxy_pass imaps;
        proxy_protocol on;
    }
    server {
        set_real_ip_from {{ docker_network }};
        listen     25 proxy_protocol;

        proxy_pass smtp;
        proxy_protocol on;
    }
    server {
        set_real_ip_from {{ docker_network }};
        listen     587 proxy_protocol;

        proxy_pass smtptls;
        proxy_protocol on;
    }
    server {
        set_real_ip_from {{ docker_network }};
        listen     465 proxy_protocol;

        proxy_pass smtps;
        proxy_protocol on;
    }
    server {
        set_real_ip_from {{ docker_network }};
        listen     4190 proxy_protocol;

        proxy_pass managesieve;
        proxy_protocol on;
    }
    server {
        listen     2222;
        proxy_pass src;
    }
}