
나는 질문에 매우 구체적으로 노력할 것입니다. 명확하지 않은 경우 내 언어를 용서해주십시오.
내가 Unix 시스템 'A'를 가지고 있다고 가정해 보겠습니다. 여기에서 다른 서버로 병렬로 SSH를 연결하여 일부 작업을 수행하고 싶습니다. 'A' 서버에 몇 개의 병렬 SSH가 허용되는지 어떻게 알 수 있나요?
답변1
특별한 경우에는 일부 요인(하드웨어 및 OS)에 따라 다릅니다.
당신은 당신의 컴퓨터에서 세트를 확인해야 합니다 limits
(아키텍처에 대해서는 아무 말도 하지 않았습니다). 예를 들어 매개변수에 대한 제한 사항을 확인하고 살펴
보십시오 (심지어 열린 소켓 수와 관련되어 있음). 이는 사용자에게 설정된 제한입니다. (Ubuntu 컴퓨터를 사용하는 경우) 해당 매개변수에 대한 시스템 전체 설정을 살펴볼 수 있습니다 .ulimit -a
open files
/proc/sys/fs/file-max
시스템에 설정된 제한과 하드웨어 제한(RAM 포화도 등) 외에 SSH 클라이언트에서 설정한 명시적인 제한은 없습니다(제가 알고 있듯이).
클라이언트 시스템에 필요한 제한을 구성했지만 동일한 서버에 더 이상 SSH 연결을 가질 수 없는 경우 서버 측에서 followind 매개변수를 사용자 정의해 보십시오 sshd
.
/etc/ssh/sshd_config
필요한 만큼의 세션을 사용하여 구성 파일 내부에서 허용되는 병렬 세션을 사용자 정의할 수 있습니다 .
다음 매개변수가 트릭을 수행해야 합니다.
최대 세션
네트워크 연결당 허용되는 오픈 셸, 로그인 또는 하위 시스템(예: SFTP) 세션의 최대 수를 지정합니다. 연결 다중화를 지원하는 클라이언트에 의해 여러 세션이 설정될 수 있습니다. MaxSessions를 1로 설정하면 세션 멀티플렉싱이 효과적으로 비활성화되고, 0으로 설정하면 전달은 허용하면서 모든 쉘, 로그인 및 하위 시스템 세션이 차단됩니다. 기본값은 10입니다.
답변2
에 대해서는 특별히 제한이 없습니다 ssh
. 시스템 'A'에 허용되는 총 프로세스 수에는 제한이 있을 수 있지만 내 경험상 이는 드뭅니다.