82 lines
1.7 KiB
Plaintext
82 lines
1.7 KiB
Plaintext
log_format proxy '$remote_addr [$time_local] '
|
|
'$protocol $status $bytes_sent $bytes_received '
|
|
'$session_time "$upstream_addr" '
|
|
'"$upstream_bytes_sent" "$upstream_bytes_received" "$upstream_connect_time"';
|
|
|
|
access_log /var/log/nginx/streams.log proxy buffer=32k flush=1m;
|
|
|
|
upstream ejabberd_c2s {
|
|
hash $remote_addr consistent;
|
|
<% @ejabberd_hosts.each do |ip_address| %>
|
|
server <%= ip_address %>:5222;
|
|
<% end %>
|
|
}
|
|
|
|
upstream ejabberd_c2s_tls {
|
|
hash $remote_addr consistent;
|
|
<% @ejabberd_hosts.each do |ip_address| %>
|
|
server <%= ip_address %>:5223;
|
|
<% end %>
|
|
}
|
|
|
|
upstream ejabberd_s2s {
|
|
hash $remote_addr consistent;
|
|
<% @ejabberd_hosts.each do |ip_address| %>
|
|
server <%= ip_address %>:5269;
|
|
<% end %>
|
|
}
|
|
|
|
upstream ejabberd_https {
|
|
hash $remote_addr consistent;
|
|
<% @ejabberd_hosts.each do |ip_address| %>
|
|
server <%= ip_address %>:5443;
|
|
<% end %>
|
|
}
|
|
|
|
upstream ejabberd_stun_turn {
|
|
hash $remote_addr consistent;
|
|
<% @ejabberd_hosts.each do |ip_address| %>
|
|
server <%= ip_address %>:<%= @stun_turn_port %>;
|
|
<% end %>
|
|
}
|
|
|
|
upstream ejabberd_turn {
|
|
hash $remote_addr consistent;
|
|
<% @ejabberd_hosts.each do |ip_address| %>
|
|
<% (@turn_min_port..@turn_max_port).each do |port| %>
|
|
server <%= "#{ip_address}:#{port.to_s}" %>;
|
|
<% end %>
|
|
<% end %>
|
|
}
|
|
|
|
server {
|
|
listen 5222;
|
|
proxy_pass ejabberd_c2s;
|
|
}
|
|
|
|
server {
|
|
listen 5223;
|
|
proxy_pass ejabberd_c2s;
|
|
}
|
|
|
|
server {
|
|
listen 5269;
|
|
proxy_pass ejabberd_s2s;
|
|
}
|
|
|
|
server {
|
|
listen 5443;
|
|
proxy_pass ejabberd_https;
|
|
}
|
|
|
|
server {
|
|
listen <%= @stun_turn_port %> udp;
|
|
proxy_pass ejabberd_stun_turn;
|
|
}
|
|
|
|
server {
|
|
listen <%= "#{@turn_min_port}-#{@turn_max_port}" %> udp;
|
|
proxy_pass 10.1.1.113:$server_port;
|
|
#proxy_pass ejabberd_turn;
|
|
}
|