SSH 트래픽을 제한 하시겠습니까?


11

서버에서 SSH 대역폭을 제한하고 싶습니다. 즉, 각 sshd 프로세스는 200Kb / s 또는 이와 유사한 것으로 제한되어야합니다.

scp에는이 기능이 있지만 반응 형 대화식 사용을 위해 더 설계된 ssh에는이 옵션이없는 것 같습니다. 그러나 -D (SOCKS 프록시) 기능과 트래픽을 제한하는 기능을 결합하고 싶습니다.

이것에 대한 옵션이 있습니까?


SSH 서버에서이 작업을 수행하려고합니까, 아니면 두 시스템 사이의 방화벽에서 수행 할 수 있습니까?
Mark Henderson

방화벽에 액세스 할 수 없으므로 서버에서 실제로이 작업을 수행하고 싶습니다.
user10640 2016 년

클라이언트에서이 작업을 수행하는 것이 좋으면 명령 줄 유틸리티 'drizzle'를 사용해보십시오.
Alex J

drizzle 명령이 유용 해 보이지만 궁극적으로 사용자가 실행할 수는 없습니다. 내가 기대했던 것보다 조금 더 복잡한 것을보고있는 것처럼 보입니다 : P. 모든 분에게 감사합니다!
user10640

답변:


4

사용자를 신뢰하는 것이 방정식의 일부인지 확실하지 않지만 trickle주어진 명령의 속도를 제한하는 데 매우 편리합니다. 집에서 패키지를 업로드 할 때 와우 중독자 룸메이트는 파이프를 거의 지배하기 때문에 그런 것을 잊었을 때 알 수 있습니다.


1
Trickle은 동일한 컴퓨터에서 여러 명령에 대한 총 대역폭을 관리하고 데몬으로 실행할 수 있습니다. 다른 독립적 인 전송 작업을 동시에 시작하되 설정된 데이터 전송률을 초과하지 않는 경우에 유용합니다.
David Spillett

1
불행히도, 나는 그것이 sshd에 도움이 될 것이라고 생각하지 않습니다. 새로운 연결이 들어 오면 새로운 sshd를 분기시킵니다. 방화벽 수준의 솔루션이 붙어있어 구현하기가 다소 까다로울 수 있습니다.
user10640 2016 년

왜 이것이 최고 답변입니까? trickle분기하는 프로세스에서는 작동하지 않습니다. 그것은 sshd를 포함합니다!
Navin

1

tc를 사용하여 HTB 트래픽 쉐이핑을 구현하는 것이 좋습니다. 비슷한 문제에 대한 나의 해결책은 http://sourceforge.net/projects/htbinit/에 있는 htb.init 스크립트를 사용하는 것이 었습니다 .

포트 22의 트래픽 제한을 기반으로 설정했지만 iptables를 사용하여 패킷을 표시 / 뭉글 수 있으며 마크를 기반으로 처리됩니다.


tc지금까지 유일한 관련 답변 은 +1입니다 .
스풀러

1
scp -l 8192 file.txt user_name@111.111.1.11:/tmp
//8192  = 8192 KB per second

이 스레드가 상당히 오래되었다는 것을 알고 있지만 이것이 누군가를 도울 수 있기를 바랍니다.


1
적어도 두 사람이 귀하의 답변을 최소한 언급하지 않고 하향 조정 한 것은 성가신 일입니다. 나는 그것이 scpssh의 다소 구체적인 사용 사례 이기 때문 이라고 생각합니다. 테스트를 거쳤 scp -l지만 작동하지만 킬로바이트 (kB)가 아니라 초당 킬로 비트 (kb)입니다.
mwfearnley

0

몇 가지 옵션이 있습니다.

일반적인 방법은 서버와 클라이언트 사이의 방화벽 / 라우터에서 포트 22에서 QoS를 구현하는 것입니다.

그들이 같은 로컬 네트워크에 있다면 (즉, 그들 사이에 라우터 나 방화벽이없는 경우) IPTables를 사용하여 포트 22로 대역폭을 제한 할 수 있다고 생각합니다 .이 작업을 수행하는 방법에 대한 자세한 내용은 여기 를 참조하십시오.


1
ssh와 같은 서비스에서 iptables의 속도 제한기를 사용할 때는주의해야합니다. "속도 제한은 대역폭 조절 / 제한과 개념적으로 다릅니다. 대역폭 조절 연결은 패킷을 대기시키고 패킷 속도를 제한합니다. 속도 제한은이 기능을 수행하지 않습니다. 예를 들어, 수신 TCP 연결이 사용자의 ID에 연결을 시도하는 등 속도 제한을 사용하면 지정된 제한을 초과하는 연결은 거부됩니다. 패킷 대기열이 없습니다 . "
msanford 2016 년

흠 goood 포인트
마크 헨더슨

0

당신은 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.
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.