サーバーのSSH帯域幅を制限したいのですが。つまり各sshdプロセスは200Kb/sまたはそのようなものに制限する必要があります。
scpはこの機能を備えていますが、sshはレスポンシブなインタラクティブな使用のために設計されているため、このオプションを備えていないようです。ただし、-D(SOCKSプロキシ)機能と、トラフィックを制限する何らかの機能を組み合わせたいと思います。
これにはオプションがありますか?
ユーザーの信頼が方程式の一部であるかどうかはわかりませんが、trickle
は特定のコマンドの速度を制限するのに非常に便利です。自宅からパッケージをアップロードすると、そのようなことを忘れると、WoW常習者のルームメイトがパイプの大部分を占めていることに気づきます。
Tcを使用してHTBトラフィックシェーピングを実装することを検討する価値があります。似たような問題に対する私の解決策は、 http://sourceforge.net/projects/htbinit/ にあるhtb.initスクリプトを使用することでした。
ポート22からのトラフィックの制限に基づいて設定しましたが、iptablesを使用して、マークに基づいて処理されるパケットをマーク/マングルすることもできます。
scp -l 8192 file.txt [email protected]:/tmp
//8192 = 8192 KB per second
私はこのスレッドがかなり古いことを知っていますが、これが誰かの役に立つことを願っています。
いくつかのオプションがあります。
一般的なのは、サーバーとクライアント間のファイアウォール/ルーターのポート22にQoSを実装することです。
それらが同じローカルネットワーク上にある場合(つまり、ルーターやファイアウォールがない場合)、IPTablesを使用して帯域幅をポート22に制限できると思います... ここを見てください これを行う。
iprelay のようなものを見ることができます:
User-space bandwidth shaping TCP proxy daemon
iprelay can shape the TCP traffic forwarded through it to a specified
bandwidth and allow this bandwidth to be changed on-the-fly. Multiple
data streams to different sockets may be shaped to the same total
bandwidth, much like a traffic shaping router would. However, this
application runs in user space, and works by acting as a TCP proxy.