SMB
SMB(Server Message Block)는 네트워크에서 파일·프린터·명명된 파이프 등의 공유 자원에 접근하기 위한 프로토콜이다. Microsoft Windows의 파일 공유 기술에서 널리 사용되며 Linux·macOS 등에서도 Samba 및 각 운영체제의 SMB 구현을 통해 이용할...
| 정식 명칭 | Server Message Block |
|---|---|
| 분류 | 네트워크 파일·프린터·IPC 공유 프로토콜 |
| 기술 역사 | 1980년대 SMB, Windows·Samba 생태계 |
| 버전 | SMB1, SMB2, SMB3 계열 |
| 파일 접근 | 원격 파일 생성·읽기·쓰기와 공유 |
| 기본 전송 | TCP/IP, 현대에는 주로 TCP 445 |
| 보안 | 인증·서명·SMB 3 암호화 |
| 관리 | Windows Server·Windows 클라이언트, Samba |
| 관련 기술 | Active Directory, Kerberos, NTLM |
| 관련 용어 | CIFS는 SMB의 역사적인 방언 |
| 공식 자료 | Microsoft Learn: SMB Overview |
SMB(Server Message Block)는 네트워크에서 파일·프린터·명명된 파이프 등의 공유 자원에 접근하기 위한 프로토콜이다. Microsoft Windows의 파일 공유 기술에서 널리 사용되며 Linux·macOS 등에서도 Samba 및 각 운영체제의 SMB 구현을 통해 이용할 수 있다. CIFS는 역사적인 SMB 계열 프로토콜의 한 방언이므로 현대 SMB 전체를 CIFS 하나와 동의어로 보는 것은 정확하지 않다.[1]
SMB 클라이언트는 원격 서버에 연결해 사용자 인증을 수행하고 공유 폴더의 파일을 열거나 읽고 쓰는 요청을 보낸다. 서버는 해당 파일 시스템의 권한과 공유 설정을 확인하고 요청에 응답한다. Windows 클라이언트 운영체제도 SMB 서버 기능을 제공할 수 있고 Windows Server도 SMB 클라이언트가 될 수 있으므로 프로토콜 역할과 운영체제 제품군을 구분해야 한다.
SMB1은 오래된 프로토콜로 여러 보안·성능 문제가 있어 현대 Windows에서는 기본 사용을 제한하는 방향으로 변화했다. SMB2·3은 여러 요청 처리와 캐시·임시 복구, 성능 및 서명·암호화 등 기능을 발전시켰다. 구체적인 기능은 서버와 클라이언트가 협상한 dialect와 장치·네트워크 구성에 따라 달라진다.[2]
SMB 접근 제어는 파일 서버의 공유 권한·파일 시스템 ACL과 사용자 인증 및 네트워크 보안의 조합이다. Active Directory 도메인에서는 Kerberos 인증을 사용할 수 있고 필요한 경우 다른 인증 방식도 존재한다. SMB 서명과 암호화는 각각 무결성·기밀성에 관련되므로 둘을 혼동하지 않아야 한다. SMB는 원격 파일 시스템을 제공하는 네트워크 프로토콜이지 NTFS·ReFS와 같은 로컬 저장 장치 형식이 아니다.