아... SMB v1... (Windows 10 사용자가 구형 NAS에 접속이 안 될 때 참고 사항) Electrosphere(컴퓨터)

지난 주말에 케이스를 조금 작은 것으로 교체하고, SSD 역시 한글 OS와 일본어 OS용으로 분리된 두 개를 하나로 합쳐 OS 통합을 시키는 작업을 마치고 이제 세팅을 하면서 즐겁게 음악이나 들어보자 하고 음악이 저장된 D-Link DNS-343 NAS를 켰는데... 네트워크 접속이 되지 않는 문제가 터졌습니다. 대충 내용은...

지정된 네트워크 이름을 더 이상 사용할 수 없습니다.
지정되지 않은 오류 0x80004005


일단 제시된 오류 코드는 있으니 이걸로 검색을 해보니 MS쪽에서 나오는 답변은 'Pro는 로컬 보안 정책에서 LANManager 설정을 바꾸고, Home은 레지스트리를 고쳐라'라는 것이었습니다. 하지만 해봐도 증상은 동일. 세팅도 덜 끝났는데 이걸로 스트레스 더 받기는 싫어 '좀 있으면 해결되겠지'하고 넘어가고 나머지만 세팅을 했습니다. 하지만 날이 가고 몇 번을 부팅하고 모든 네트워크 장치를 재부팅해도 증상은 그대로.

OS쪽 문제인가 싶어 다른 시스템(전부 윈도우 10 RS3)에서 접속해도 역시 같은 오류를 뿜고 있었습니다. 재밌는 점은 네트워크 폴더 접속은 전혀 안 되는데, NAS 관리자에는 접속이 가능하다는 것. 무언가 설정이 꼬였을지도 모르겠다 싶어 NAS를 초기화하고 재설정. 하지만 증상은 여전히 그대로.T_T

'씁 어쩔 수 없지'하며 공유 폴더(SMB)를 포기하고 NFS로 변경하고, 백업용으로 FTP를 세팅하여 FTP로 접속하니 정상 접속. 이제 SMB 관련 문제인가 하는 생각이 들기 시작하는데, NFS로 변경하여 접속을 시도하니 메시지가 이렇게 나옵니다.

안전하지 않기 때문에 파일 공유에 연결할 수 없습니다. 이 공유에는 사용되지 않는 SMB1 프로토콜이 필요하며, 이 프로토콜은 안전하지 않기 때문에 시스템이 공격에 노출될 수 있습니다.

시스템에 SMB2 이상이 필요합니다. 이 문제를 해결하는 자세한 내용은 https://go.microsoft.com/fwlink/?linkid=852747을 참조하세요.


그렇습니다. 이걸로 원인이 분명히 드러났습니다. SMB v1 프로토콜이 없다는 이유 때문이었습니다. 다행히 해결법까지 아래에 링크를잘 걸어주어 문서를 확인했습니다. 결론부터 말하면 이 문서에 나온대로 Powershell에서 SMB v1을 활성화하니 바로 네트워크 검색과 NAS 접속이 원활히 이뤄졌습니다.



그러면 이제 원인을 따져봐야 하겠는데, 지금까지는 왜 문제가 없다 갑자기 OS를 재설치했다고 이런 사단이 났는지 그 이유를 적어봅니다. 아래의 이미지는 MS에서 이 관련 내용으로 안내가 된 일부입니다.

일단 문서의 핵심은 '윈도우 10 RS3부터는 SMB v1을 포함하지 않는다'는 것입니다. 보안 문제때문에 SMB v2나 v3를 쓰라는 것이며 윈도우 비스타부터 SMB v2 적용이 이뤄졌습니다. 보안 문제이 이건 충분히 이해할 수 있는 부분입니다. 하지만 윈도우 10 RS3가 나온게 작년 9월인데 지금까지 문제가 없었다는 것이 이상하지 않을까요? 사실 그 이유도 위 문서에 있습니다.

윈도우 10 RS2까지는 SMB v1 지원을 하고 있었고, RS3에서 제외를 한 것입니다. 문제는 RS2 또는 그 이전 버전에서 RS3로 '업데이트'를 한 경우 SMB v1이 그대로 남는다는 것입니다. 즉 완전 재설치를 하는 경우에만 기본에서 빠지게 됩니다.

물론 MS 입장에서는 SMB v1을 없애고 싶어하니 업데이트로 RS3로 바뀐 경우에도 이걸 지우게 기능은 넣어 놓았습니다. 그런데 그 기능의 작동 조건이라는게 '운영체제 가동 일수 기준으로 15일동한 한 번도 SMB v1을 안 쓸 경우'입니다. 저 NAS는 아무리 못해도 한 주에 한 번씩은 계속 액세스를 해왔고, 공유 폴더 검색도 계속 했으니 지금까지 SMB v1이 사라질 이유가 없었던 것입니다. OS를 재설치한 이후에야 SMB v1 클라이언트가 사라졌으니 SMB v1 규격 NAS에 갑자기 접속을 못 하게 된 것입니다.

이에 대한 해결 방법은 아래 문서에 나와 있습니다.

https://support.microsoft.com/ko-kr/help/2696547/how-to-enable-and-disable-smbv1-smbv2-and-smbv3-in-windows-and-windows-server

정리하면, Powershell을 관리자로 실행한 뒤 아래 명령어를 넣는 것입니다.

Enable-WindowsOptionalFeature -Online -FeatureName smb1protocol

SMB v1을 죽이고 싶다면 앞의 Enable만 Disable로 바꿔주면 됩니다. 이 한 가지 명령어 입력만으로 일단 구형 NAS에 공유 폴더 접속이 가능해집니다. 물론 SMB v1이 보안 문제가 있는 것은 사실이고 랜섬웨어같은 부분에서는 더 취약한게 사실이니 가급적이면 NAS를 바꾸는게 좋기는 하며, 꼭 써야 한다면 외부에서 침입이 없을만한 상황에서 쓰는 것이 바람직한 것은 사실입니다.

덧글

  • RuBisCO 2018/04/11 11:42 # 답글

    다만 이미 NAS에서 SMB2 이상 버전을 지원하고 설정도 되어있는데도 굳이 SMB1로 인식하고는 오류를 뿜뿜 하는 경우가 많은데 이런 문제는 M$가 고쳐줬으면 좋겠는데 말이죠.
  • Adolf Kim 2018/04/11 13:11 #

    그럴 가능성도 없지는 않을겁니다.
댓글 입력 영역