Support proxy protocol v1/2 config

This commit is contained in:
Feng Lee 2017-03-22 10:48:47 +08:00
parent 0b13cd78e6
commit f321bcdace
2 changed files with 13 additions and 43 deletions

View File

@ -228,9 +228,9 @@ mqtt.listener.tcp.max_clients = 1024
## Rate Limit. Format is 'burst,rate', Unit is KB/Sec ## Rate Limit. Format is 'burst,rate', Unit is KB/Sec
## mqtt.listener.tcp.rate_limit = 100,10 ## mqtt.listener.tcp.rate_limit = 100,10
## Proxy Protocol V1 ## Proxy Protocol V1/2
mqtt.listener.tcp.proxy_protocol = 1 ## mqtt.listener.tcp.proxy_protocol = on
mqtt.listener.tcp.proxy_protocol_timeout = 10 ## mqtt.listener.tcp.proxy_protocol_timeout = 3s
## TCP Socket Options ## TCP Socket Options
mqtt.listener.tcp.backlog = 1024 mqtt.listener.tcp.backlog = 1024
@ -250,8 +250,10 @@ mqtt.listener.ssl.max_clients = 512
## Rate Limit. Format is 'burst,rate', Unit is KB/Sec ## Rate Limit. Format is 'burst,rate', Unit is KB/Sec
## mqtt.listener.ssl.rate_limit = 100,10 ## mqtt.listener.ssl.rate_limit = 100,10
mqtt.listener.ssl.proxy_protocol = 1
mqtt.listener.ssl.proxy_protocol_timeout = 10 ## Proxy Protocol V1/2
## mqtt.listener.ssl.proxy_protocol = on
## mqtt.listener.ssl.proxy_protocol_timeout = 3s
## Configuring SSL Options. See http://erlang.org/doc/man/ssl.html ## Configuring SSL Options. See http://erlang.org/doc/man/ssl.html
### TLS only for POODLE attack ### TLS only for POODLE attack
@ -268,10 +270,6 @@ mqtt.listener.http = 8083
mqtt.listener.http.acceptors = 4 mqtt.listener.http.acceptors = 4
mqtt.listener.http.max_clients = 64 mqtt.listener.http.max_clients = 64
## Proxy Protocol V1
mqtt.listener.http.proxy_protocol = 1
mqtt.listener.http.proxy_protocol_timeout = 10
## HTTP(SSL) Listener ## HTTP(SSL) Listener
mqtt.listener.https = 8084 mqtt.listener.https = 8084
mqtt.listener.https.acceptors = 4 mqtt.listener.https.acceptors = 4

View File

@ -553,16 +553,13 @@ end}.
]}. ]}.
{mapping, "mqtt.listener.tcp.proxy_protocol", "emqttd.listeners", [ {mapping, "mqtt.listener.tcp.proxy_protocol", "emqttd.listeners", [
{default, 1}, %%{default, off},
{datatype, integer}, {datatype, flag}
{validators, ["range:1-2"]},
hidden
]}. ]}.
{mapping, "mqtt.listener.tcp.proxy_protocol_timeout", "emqttd.listeners", [ {mapping, "mqtt.listener.tcp.proxy_protocol_timeout", "emqttd.listeners", [
{default, 10}, %%{default, "5s"},
{datatype, integer}, {datatype, {duration, ms}}
hidden
]}. ]}.
{mapping, "mqtt.listener.tcp.backlog", "emqttd.listeners", [ {mapping, "mqtt.listener.tcp.backlog", "emqttd.listeners", [
@ -615,12 +612,12 @@ end}.
]}. ]}.
{mapping, "mqtt.listener.ssl.proxy_protocol", "emqttd.listeners", [ {mapping, "mqtt.listener.ssl.proxy_protocol", "emqttd.listeners", [
{default, off}, %%{default, off},
{datatype, flag} {datatype, flag}
]}. ]}.
{mapping, "mqtt.listener.ssl.proxy_protocol_timeout", "emqttd.listeners", [ {mapping, "mqtt.listener.ssl.proxy_protocol_timeout", "emqttd.listeners", [
{default, 5s}, %%{default, "5s"},
{datatype, {duration, ms}} {datatype, {duration, ms}}
]}. ]}.
@ -668,19 +665,6 @@ end}.
{datatype, integer} {datatype, integer}
]}. ]}.
{mapping, "mqtt.listener.http.proxy_protocol", "emqttd.listeners", [
{default, 1},
{datatype, integer},
{validators, ["range:1-2"]},
hidden
]}.
{mapping, "mqtt.listener.http.proxy_protocol_timeout", "emqttd.listeners", [
{default, 10},
{datatype, integer},
hidden
]}.
{mapping, "mqtt.listener.https", "emqttd.listeners", [ {mapping, "mqtt.listener.https", "emqttd.listeners", [
%%{default, 8084}, %%{default, 8084},
{datatype, [integer, ip]} {datatype, [integer, ip]}
@ -696,18 +680,6 @@ end}.
{datatype, integer} {datatype, integer}
]}. ]}.
{mapping, "mqtt.listener.https.proxy_protocol", "emqttd.listeners", [
{default, 1},
{datatype, integer},
{validators, ["range:1-2"]},
hidden
]}.
{mapping, "mqtt.listener.https.proxy_protocol_timeout", "emqttd.listeners", [
{datatype, integer},
hidden
]}.
{mapping, "mqtt.listener.https.handshake_timeout", "emqttd.listeners", [ {mapping, "mqtt.listener.https.handshake_timeout", "emqttd.listeners", [
{default, 15}, {default, 15},
{datatype, integer} {datatype, integer}