Windows가 파일 서버에 VPN 암호를 제공하는 이유
터널은 열려 있는데 공유는 계속 묻는다. Windows가 게이트웨이 계정을 전혀 모르는 파일 서버에 제공했다. 변경은 하나의 프로필로 한정하라.
Windows는 터널을 열어 놓고 그 존재를 들어 본 적 없는 파일 서버에 같은 계정을 제공할 수 있다. 게이트웨이는 로그인을 받아들였고 공유는 받아들이지 않았으며, 암호를 다시 입력해도 아무것도 바뀌지 않는다. 컴퓨터 전체의 자격 증명 저장을 끄는 것이 해결책처럼 보이지만 그렇지 않다. 기본 RAS 연결에는 이 의도를 정확히 표현하는 프로필별 스위치가 있다.
어떤 계정이 거부되었는지 확인한다
메시지를 닫지 말고 읽는다. 대화 상자의 서버 이름, 사용자 이름 옆에 인쇄된 도메인, 그리고 메시지가 터널 형성 전에 왔는지 후에 왔는지는 각각 다른 곳을 가리킨다. 공유를 지목하는 실패와 호스트를 지목하는 실패는 같지 않다.
ID를 논하기 전에 리소스가 응답하는지부터 확인한다. 경로 누락, 서버 이름의 오타, 공유 권한이 없는 계정은 서로 다른 세 가지 증상을 만들며, Windows가 제공한 ID와 관련된 것은 마지막 하나뿐이다. 거부된 계정이 게이트웨이 계정인지 확인한다. VPN 로그인이 디렉터리 계정이 아니라 게이트웨이가 소유한 원격 액세스 ID라면, 파일 서버가 그것을 인식할 이유가 없다. 같은 암호를 다시 입력하면 같은 거부를 반복할 뿐이다. 이 구분이 다음 절이 해당되는지를 결정한다.
한 프로필에서 UseRasCredentials 설정하기
필드 이름은 UseRasCredentials이며, 값이 영이면 그 연결이 자체 RAS 자격 증명을 네트워크 리소스에 제공하지 않는다. 변경은 하나의 프로필로 한정되며, 바로 그것이 핵심이다. 문서화된 의미는 하나뿐이고 컴퓨터의 다른 무엇도 건드리지 않는다.
저장된 자격 증명을 네트워크 인증에 쓰지 못하게 하는 보안 정책은 반대로 컴퓨터의 모든 연결에 적용된다. 여기서 사용하면 사용자가 다음 주에 여는 모든 리소스의 동작이 바뀌므로 이 수리 범위 밖이다. UseRasCredentials 도 RAS 기능이므로 자체 자격 증명 처리를 가진 타사 클라이언트는 이를 무시한다. 그런 클라이언트에서는 동작을 바꿀 수 있는지에 대한 유일한 근거가 공급업체 문서다. 그 클라이언트가 절대 읽지 않는 파일을 편집하기 전에 어느 클라이언트가 연결을 소유하는지 확인한다.
연결을 소유한 전화 번호부 편집하기
편집기를 열기 전에 연결을 소유한 전화 번호부를 찾는다. 사용자가 만든 연결은 로밍 응용 프로그램 데이터 경로에 있고, 모든 사용자를 위해 만든 연결은 프로그램 데이터 디렉터리 아래에 있다. 두 파일은 독립적이다. 잘못된 것을 편집하면 아무것도 바뀌지 않고, 실패는 나중에도 똑같아 보인다.
두 위치를 모두 나열하고 편집할 파일의 전체 경로를 확인한다. 잘못된 프로필 아래의 파일은 올바르게 변경해도 무시되며, 두 번째 실패는 첫 번째와 똑같아 보인다.
Get-ChildItem "$env:APPDATA\Microsoft\Network\Connections\Pbk" Get-ChildItem "$env:PROGRAMDATA\Microsoft\Network\Connections\Pbk" Copy-Item "$env:APPDATA\Microsoft\Network\Connections\Pbk\rasphone.pbk" "$env:APPDATA\Microsoft\Network\Connections\Pbk\rasphone.pbk.bak" Select-String -Path "$env:APPDATA\Microsoft\Network\Connections\Pbk\rasphone.pbk" -Pattern "UseRasCredentials"
정확한 연결 이름이 있는 섹션 안에서 스위치는 한 줄이다. 그 값만 바꾸고 다른 섹션은 그대로 둔다.
UseRasCredentials=1 becomes UseRasCredentials=0
전화 번호부의 모든 연결에 대해 파일 전체를 바꾸는 것은 단일 프로필 변경이 아니며, 누군가 관계없는 터널을 디버그할 때 몇 주 뒤에 드러난다. 변경이 검증될 때까지 백업을 파일 옆에 둔다. 장치가 관리되는 경우 설정은 사용자 프로필 아래의 파일이 아니라 소유한 배포에서 바꿔야 한다. 지원되는 Windows 버전은 VPNv2 구성 서비스 공급자를 통해 프로필별 동등 기능을 제공하며, 그 버전 요구 사항은 공급자 전체의 요구 사항과 별도로 확인해야 한다.
새 시도로 검증하기
연결을 끊고 열려 있던 세션을 닫은 뒤 다시 시도한다. 기존 매핑된 드라이브나 열린 파일 핸들은 이미 인증한 ID를 계속 사용할 수 있으므로 이전 세션으로 동작하는 것은 변경에 대해 아무것도 증명하지 못한다. 먼저 편집한 값을, 어느 섹션에 속하는지 보여 줄 만큼의 문맥과 함께 확인한다.
Select-String -Path "$env:APPDATA\Microsoft\Network\Connections\Pbk\rasphone.pbk" -Pattern "UseRasCredentials=0" -Context 4,0
그다음 리소스가 실제로 어떤 ID를 받았는지 확인한다. 올바른 계정으로도 접근을 거부하는 공유는 권한 부여 문제이며, 그 답은 파일 서버 자체의 로그에 있다. 이 설정에 대한 문서화된 설명 은 VPN ID가 디렉터리 ID와 다른 배포를 다루며, 이 필드가 자신의 클라이언트에 적용된다고 가정하기 전에 읽어 볼 가치가 있다. 변경, 전화 번호부 경로, 리소스가 지금 보는 계정을 기록해 두라. 다음에 이 문제를 만나는 사람도 같은 혼란에서 시작하기 때문이다.