使用 Nginx(1.14+)做 SFTP 代理,上传大文件(50M)如何限制上传带宽?

2021-03-08 15:18:48 +08:00
 yk4399

查了资料,限制下载很简单,上传的话要用第三方模块( nginx—upload—module ),但是也是好多年前的版本了,作者已经不更新了,求问各位大佬解决方案?

1692 次点击
所在节点    NGINX
5 条回复
celisee
2021-03-08 15:27:52 +08:00
最近项目也在搞这个上传限制

去查了这个 nginx—upload—module 模块

作者太久没更新了,在 git 上找了找其他的类似模块

最后试了试,不好使

然后用代码解决了
eason1874
2021-03-08 15:48:35 +08:00
再配置一个 server 作为前端,proxy sftp server,然后用 proxy_upload_rate
yk4399
2021-03-08 16:32:25 +08:00
@celisee 代码是什么思路呢?命令行工具 iptables 好像也可以,但是貌似是限制整个服务器的带宽
@eason1874 在 nginx 前再配置一个 server ? SFTP 服务器在对方
eason1874
2021-03-08 16:58:04 +08:00
@yk4399 就是配置 nginx 反代

一般:用户 -> sftp server
反代:用户 -> proxy server -> sftp server

不懂的话,你可以搜下,网上很多教程。不过 proxy_upload_rate 跟 limit_rate 一样,也是限制单个连接的速率,不能直接限制总速率,只能同时限制连接数来间接限制。
geekvcn
2021-03-08 17:02:18 +08:00
我觉得用 tc 做比较方便

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/759634

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX