안녕하세요! 오늘은 윈도우 환경에서 정말 실무적으로 중요한 내용을 다뤄보려고 합니다. 바로 GPO(Group Policy Object)를 활용해서 네트워크 공유 폴더의 동시 연결 개수를 제한하는 방법인데요.
많은 IT 관리자분들이 “왜 갑자기 공유 폴더에 접속이 안 되지?”라는 문의를 받아보신 적 있으실 겁니다. 특히 파일 서버나 공유 폴더를 운영하다 보면 동시 접속자가 많아져서 성능 저하나 연결 거부 현상이 발생하는 경우가 종종 있거든요.
1. 네트워크 공유 연결 제한이 필요한 이유
네트워크 공유 폴더를 운영하다 보면 동시에 접속하는 사용자가 많아질 때 여러 문제가 발생할 수 있습니다. Windows 10과 11에서는 기본적으로 20개의 동시 연결만 허용되며, 이는 EULA(End-User License Agreement)에서도 명시하고 있습니다.
실제로 제가 관리하는 환경에서도 “No more connections can be made to this remote computer at this time because there are already as many connections as the computer can accept” 라는 오류 메시지를 자주 보게 되더라고요.
주요 발생 상황
- 파일 서버에 많은 사용자가 동시 접속할 때
- 한 사용자가 여러 개의 세션을 동시에 사용할 때
- 네트워크 연결이 제대로 해제되지 않고 누적될 때
- 애플리케이션이 파일 공유에 다중 연결을 시도할 때
2. Windows의 SMB 연결 제한 이해하기
Windows 클라이언트 OS에서는 SMB(Server Message Block) 프로토콜을 통한 네트워크 공유 연결이 20개로 제한되어 있습니다. 이는 사용자 수가 아닌 TCP 연결 수를 기준으로 하기 때문에, 한 사용자가 여러 개의 연결을 만들 수도 있습니다.
연결 수 계산 방식
실제로는 사용자가 아닌 세션(Session) 단위로 계산되며, 한 사용자가 여러 세션을 가질 수 있습니다. 예를 들어:
- 탐색기로 공유 폴더 접근: 1개 세션
- 동일 폴더를 다른 탐색기 창으로 접근: 추가 세션
- 애플리케이션에서 파일 열기: 추가 세션
3. GPO를 통한 연결 제한 설정 방법
이제 본격적으로 GPO를 활용해서 네트워크 공유 연결 수를 제한하는 방법을 알아보겠습니다.
3-1. 그룹 정책 관리 콘솔 접근
- 시작 메뉴에서
gpmc.msc
실행 또는 Group Policy Management 검색 - 도메인 또는 해당 OU(Organizational Unit)에서 새 GPO 생성
- GPO 편집기에서 다음 경로로 이동:
Computer Configuration (컴퓨터 구성)
└── Policies (정책)
└── Administrative Templates (관리 템플릿)
└── Network (네트워크)
└── Lanman Server (Lanman 서버)
3-2. 주요 정책 설정 항목
Maximum number of concurrent sessions (최대 동시 세션 수)
- 정책 위치:
Computer Configuration\Administrative Templates\Network\Lanman Server
- 기본값: 제한 없음 (Unlimited)
- 권장 설정: 10-50개 (환경에 따라 조정)
설정 방법:
- 정책을 **”사용(Enabled)”**으로 변경
- “Maximum number of sessions” 필드에 원하는 연결 수 입력
- 일반적으로 10-30개 정도로 설정하는 것을 권장
3-3. 추가 관련 정책들
Restrict concurrent TCP connections (TCP 동시 연결 제한)
Computer Configuration\Administrative Templates\Network\Network Connections
└── Minimize the number of simultaneous connections to the Internet or a Windows Domain
이 정책은 컴퓨터가 인터넷이나 Windows 도메인에 대한 다중 연결을 제한할 수 있게 해줍니다.

4. 실무 적용 예시 및 모니터링 방법
4-1. 현재 연결 상태 확인 방법
현재 얼마나 많은 연결이 활성화되어 있는지 확인하는 것이 중요합니다.
PowerShell을 사용한 확인
# SMB 세션 확인
Get-SmbSession
# 상세 정보 확인
Get-SmbSession | Select-Object ClientComputerName, ClientUserName, SessionId, SecondsIdle
Computer Management를 통한 확인
- Computer Management (컴퓨터 관리) 실행
- System Tools (시스템 도구) → Shared Folders (공유 폴더) → Sessions (세션)
4-2. 연결 자동 정리 스크립트
오래된 연결을 자동으로 정리하는 PowerShell 스크립트를 활용할 수 있습니다:
# 19개 연결 시 오래된 세션 2개 자동 해제
$sessions = Get-SmbSession
if ($sessions.Count -ge 19) {
$oldestSessions = $sessions | Sort-Object SecondsIdle -Descending | Select-Object -First 2
$oldestSessions | Remove-SmbSession -Force
}
5. 성능 최적화 및 문제 해결
5-1. SMB 성능 튜닝
SMB 파일 서버의 성능을 향상시키기 위해 다음 레지스트리 설정을 조정할 수 있습니다:
MaxThreadsPerQueue 설정
경로: HKLM\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters
키: MaxThreadsPerQueue
기본값: 20
권장값: 30-50 (높은 부하 환경)
Smb2CreditsMin/Max 설정
Windows Server에서는 기본값이 512와 8192로 설정되어 있으며, 대역폭이 높고 지연시간이 긴 환경에서는 이 값을 높여 성능을 개선할 수 있습니다.
5-2. 일반적인 문제 해결
문제 증상 | 원인 | 해결 방법 |
---|---|---|
연결 거부 오류 | 20개 연결 한계 초과 | GPO로 제한 설정 또는 세션 정리 |
느린 파일 전송 | 동시 연결 과다 | 연결 수 제한 및 대역폭 제한 |
간헐적 연결 끊김 | 세션 타임아웃 | SMB 설정 조정 |
6. 네트워크 공유(SMB) 동시 연결 갯수 권장 설정
6-1. 환경별 권장 설정
소규모 사무실 (10-20명)
- 최대 동시 연결: 15개
- 세션 타임아웃: 30분
- 모니터링 주기: 주 1회
중간 규모 조직 (50-100명)
- 최대 동시 연결: 30개
- 세션 타임아웃: 15분
- 모니터링 주기: 일 1회
대규모 조직 (100명 이상)
- Windows Server 사용 권장
- 전용 파일 서버 구축
- 로드 밸런싱 고려
6-2. 보안 고려사항
SMB 트래픽에 대한 방화벽 규칙을 적절히 설정하여 측면 이동 공격을 방지해야 합니다:
인바운드 SMB 차단 (파일 서버가 아닌 경우)
규칙명: Block Inbound SMB
프로토콜: TCP
포트: 445
동작: 차단
적용 대상: 파일 서버가 아닌 모든 클라이언트
네트워크 공유 연결 제한은 단순해 보이지만 실제 환경에서는 다양한 변수를 고려해야 하는 복잡한 영역입니다. GPO를 통한 체계적인 관리와 지속적인 모니터링을 통해 안정적인 파일 공유 환경을 구축할 수 있습니다. 특히 사용자 규모가 늘어나거나 업무 특성상 파일 공유 사용량이 많은 환경에서는 Windows Server 기반의 전용 파일 서버 도입을 적극 검토해보시길 권장 드립니다. 🙂