[+] update nginx config

1. add ssh, web limits
    on upload/download speed;
This commit is contained in:
Siarhei Siniak 2025-09-18 09:42:18 +03:00
parent ef32d2ae38
commit f4ac4c8ff9

@ -220,6 +220,23 @@ def ssl(input_json, output_conf):
upstream_servers = [] upstream_servers = []
server_names = [] server_names = []
ssh_proxy_download_rate = ssl_nginx['stream_server'].get(
'ssh_proxy_download_rate',
128 * 1024,
)
ssh_proxy_upload_rate = ssl_nginx['stream_server'].get(
'ssh_proxy_upload_rate',
128 * 1024,
)
web_proxy_download_rate = ssl_nginx['stream_server'].get(
'web_proxy_download_rate',
128 * 1024 * 1024,
)
web_proxy_upload_rate = ssl_nginx['stream_server'].get(
'web_proxy_upload_rate',
128 * 1024 * 1024,
)
if 'by_server_name' in ssl_nginx['stream_server']: if 'by_server_name' in ssl_nginx['stream_server']:
for k, v in ssl_nginx['stream_server']['by_server_name'].items(): for k, v in ssl_nginx['stream_server']['by_server_name'].items():
upstream_servers.append( upstream_servers.append(
@ -260,6 +277,15 @@ stream {
"TLSv1.3" $upstream_server_name; "TLSv1.3" $upstream_server_name;
} }
map $upstream_protocol $proxy_download_rate {
web {web_proxy_download_rate};
ssh {ssh_proxy_download_rate};
}
map $upstream_protocol $proxy_upload_rate {
web {web_proxy_upload_rate};
ssh {ssh_proxy_upload_rate};
}
map $ssl_preread_server_name $upstream_server_name { map $ssl_preread_server_name $upstream_server_name {
default web; default web;
{server_names} {server_names}
@ -270,7 +296,12 @@ stream {
listen 443; listen 443;
ssl_preread on; ssl_preread on;
proxy_pass $upstream_protocol; proxy_pass $upstream_protocol;
proxy_download_rate $proxy_download_rate;
proxy_upload_rate $proxy_upload_rate;
# proxy_upload_rate 10k;
} }
} }
'''.replace( '''.replace(
@ -280,6 +311,14 @@ stream {
]), ]),
).replace( ).replace(
'{ssh_section}', ssh_section, '{ssh_section}', ssh_section,
).replace(
'{web_proxy_download_rate}', '%d' % web_proxy_download_rate,
).replace(
'{ssh_proxy_download_rate}', '%d' % ssh_proxy_download_rate,
).replace(
'{web_proxy_upload_rate}', '%d' % web_proxy_upload_rate,
).replace(
'{ssh_proxy_upload_rate}', '%d' % ssh_proxy_upload_rate,
).replace( ).replace(
'{server_names}', ''.join([ '{server_names}', ''.join([
' ' + o + '\n' ' ' + o + '\n'