Netsh.exe 및 ProxyCfg.exe 프록시 구성 도구

    • Windows Vista 및 Windows Server 2008: * *

ProxyCfg.exe은 더 이상 사용 되지 않습니다. Netsh.exe winhttp 명령으로 대체 됩니다.

이 항목에서는 Microsoft Windows HTTP 서비스 (WinHTTP) 프록시 구성 도구 "ProxyCfg.exe" 사용에 대해 설명 합니다.

Microsoft Windows http 서비스 (WinHTTP)를 사용 하 여 프록시를 통해 HTTP 및 보안 하이퍼텍스트 전송 프로토콜 (HTTPS) 서버에 액세스 하는 두 가지 방법이 있습니다. 먼저, WinHTTP 응용 프로그램 내에서 프록시 설정을 지정할 수 있습니다. 둘째,% windir% system32 디렉터리에 있는 프록시 구성 유틸리티를 사용 하 여 응용 프로그램 외부에서 기본 프록시 설정을 지정할 수 있습니다 \ .

응용 프로그램 또는 스크립트 내에서 프로그래밍 방식으로 프록시 데이터를 설정할 수 있습니다. WinHTTP API를 사용 하 여 응용 프로그램을 작성 하는 경우 다음 두 가지 방법 중 하나를 사용 하 여 프록시 설정을 변경 합니다.

  • WinHttpOpen 함수를 사용 합니다. 두 번째 매개 변수에서 액세스 형식, 세 번째 매개 변수의 프록시 이름 및 네 번째 매개 변수의 바이패스 목록을 지정 합니다. 다음 예에서는 WinHttpOpen 함수를 사용 하 여 프록시 데이터를 설정 하는 방법을 보여 줍니다.

    hSession = WinHttpOpen( L"WinHTTP Example/1.0",  
                            WINHTTP_ACCESS_TYPE_NAMED_PROXY,
                            L"proxy_name", 
                            L"<local>", 
                            0);
    
  • WinHttpSetOption 함수를 사용 합니다. Winhttp _ 옵션 _ 프록시 플래그를 사용 하면 winhttp _ 프록시 _ 정보 구조를 사용 하 여 프록시 설정을 지정할 수 있습니다. 다음 예제 코드에서는 WinHttpSetOption 함수를 사용 하 여 프록시 데이터를 설정 하는 방법을 보여 줍니다.

    WINHTTP_PROXY_INFO proxyInfo;
    proxyInfo.dwAccessType = WINHTTP_ACCESS_TYPE_NAMED_PROXY;
    proxyInfo.lpszProxy = L"proxy_name";
    proxyInfo.lpszProxyBypass = L"<local>";
    
    // Set the proxy information for this session.
    WinHttpSetOption( hSession, 
                      WINHTTP_OPTION_PROXY, 
                      &proxyInfo, 
                      sizeof(proxyInfo));
    

WinHttpRequest 개체를 사용 하 여 스크립트나 응용 프로그램을 작성 하는 경우 다음 기술을 사용 하 여 프록시 설정을 변경 합니다.

  • Setproxy 메서드를 사용 합니다. 첫 번째 매개 변수에서 액세스 형식, 두 번째 매개 변수의 프록시 이름 및 세 번째 매개 변수의 바이패스 목록을 지정 합니다. 다음 예제에서는 setproxy 메서드를 스크립트에서 사용 하 여 프록시 데이터를 설정 하는 방법을 보여 줍니다.

    WinHttpReq.SetProxy( HTTPREQUEST_PROXYSETTING_PROXY, 
                         "proxy_server:80", 
                         "*.microsoft.com");
    

기본 설정을 지정 하 고 Setproxy 메서드 또는 WinHttpSetOption 함수를 사용할 필요가 없도록 하려면 프록시 구성 유틸리티를 사용 합니다. 이 유틸리티를 사용 하 여 응용 프로그램이 직접 또는 프록시를 통해 또는 우회 목록을 지정 하 여 직접 및 프록시 액세스의 조합을 통해 네트워크에 액세스 하도록 지정할 수 있습니다. WinHTTP API를 사용 하는 경우 프록시 구성 도구는 WinHttpOpen Api에 winhttp _ 액세스 _ 유형 _ 기본 플래그를 전달 하는 경우에만 설정을 결정 합니다. WinHttpRequest 개체는 기본적으로 프록시 구성 도구 설정을 사용 합니다.

WinHTTP의 프록시 설정은 Microsoft Internet Explorer에 대 한 프록시 설정이 아닙니다. Microsoft Windows 제어판에서 WinHTTP에 대 한 프록시 설정을 구성할 수 없습니다. WinHTTP 프록시 구성 유틸리티를 사용 하면 Internet Explorer에 사용 하는 설정이 변경 되지 않습니다.

참고

WinHTTP를 사용 하 여 HTTP 요청을 열고 보내고 프록시 설정이 올바르지 않으면 오류가 발생 합니다.

명령줄 매개 변수

다음 표에서는 ProxyCfg.exe 도구에 사용할 수 있는 명령줄 매개 변수를 보여 줍니다.

매개 변수 설명
없음 매개 변수를 지정 하지 않으면 현재 WinHTTP 프록시 설정이 표시 됩니다.
? 도움말 정보가 표시 됩니다.
WinHTTP 응용 프로그램이 프록시 없이 네트워크에 직접 액세스 하도록 지정 합니다.
p 프록시 서버를 지정 합니다. 프록시 없이 액세스할 수 있는 선택적 서버 목록을 지정할 수도 있습니다.
u WinHTTP 응용 프로그램에서 Internet Explorer에 대 한 현재 사용자의 프록시 설정을 사용 하도록 지정 합니다. Internet Explorer가 자동으로 프록시 설정을 검색 하거나 자동 구성 URL을 사용 하 여 프록시 정보를 설정 하는 경우에는이 매개 변수가 작동 하지 않습니다.
i WinHTTP 응용 프로그램에서 Internet Explorer에 대 한 현재 사용자의 프록시 설정을 사용 하도록 지정 합니다. 이는 ProxyCfg.exe 이전에 사용 되지 않은 경우에만 작동 합니다. ProxyCfg.exe 설치 된 경우 "u" 명령줄 매개 변수에서 수동 설정을 사용 하도록 지정 합니다. Internet Explorer에서 프록시 설정을 자동으로 검색 하거나 자동 구성 URL을 사용 하 여 프록시 정보를 설정 하는 경우에는이 매개 변수가 작동 하지 않습니다.

공백으로 구분 된 문자열에서 프록시를 지정할 수 있습니다. 프록시 목록에는 프록시에 액세스 하는 데 사용 되는 포트 번호가 포함 될 수 있습니다. 특정 프로토콜에 대 한 프록시를 나열 하려면 문자열이 < 프로토콜 > = https://<프록시 이름> 형식을 따라야 합니다 _ . 유효한 프로토콜은 HTTP 및 HTTPS입니다. 예를 들어 HTTP 프록시를 나열 하기 위해 유효한 문자열은 http =입니다 https://http_proxy_name:80 . 여기서 http _ 프록시 _ 이름은 프록시 서버의 이름이 고 80은 프록시에 액세스 하는 데 사용 해야 하는 포트 번호입니다. 프록시가 해당 프로토콜에 대 한 기본 포트 번호를 사용 하는 경우 포트 번호를 생략할 수 있습니다. 프록시 이름이 단독으로 나열 되는 경우 지정 된 프록시가 없는 모든 프로토콜에 대 한 기본 프록시로 사용할 수 있습니다. 예를 들어 http = https://http_proxy 다른 프록시는 http 작업에 http 프록시를 사용 하 고, _ _ HTTPS 프로토콜은 다른 프록시 라는 프록시를 사용 합니다 _ .

프록시 무시 목록에서 로컬로 알려진 호스트 이름 또는 IP 주소를 나열할 수 있습니다. 이 목록에는 ""와 같은 와일드 카드를 포함할 수 있습니다 .이 경우 * 응용 프로그램에서 지정 된 패턴 (예: " * microsoft.com" 또는 "org")에 맞는 주소에 대해 프록시 서버를 사용 하지 않도록 합니다 * . 와일드 카드 문자는 목록에서 가장 왼쪽에 있는 문자 여야 합니다. 예를 들면 "aaa"입니다. * 은 지원 되지 않습니다. 여러 주소 및 호스트 이름을 나열 하려면 프록시 무시 문자열에서 공백 또는 세미콜론으로 구분 합니다. 로컬 매크로를 지정 하는 경우 < > 함수는 마침표를 포함 하지 않는 호스트 이름을 무시 합니다.

경고

Proxycfg.exe 실행 한 후에는 이전 프록시 설정을 복원할 수 없습니다. 그러나 프록시 설정은 완전히 제거할 수 있습니다.

사용량

프록시 구성 도구를 사용 하려면 명령 프롬프트 창을 열고 적절 한 명령줄 매개 변수를 사용 하 여 프록시 구성 유틸리티를 실행 합니다. 다음 섹션에서는 구문 예제를 제공 합니다.

예제 구문

예제 1: 외부 리소스에 대해서만 프록시 사용

다음은 Proxycfg.exe에서 가장 일반적으로 사용 되는 방법입니다. 이 명령은 _ 마침표를 포함 하지 않는 호스트 이름을 제외 하 고 "프록시 서버" 라는 프록시 서버를 통해 HTTP 및 HTTPS 서버 모두에 액세스 하도록 지정 합니다.

proxycfg-p 프록시 _ 서버 " < local > "

예제 2: 모든 리소스에 프록시 사용

다음 예에서는 "프록시 서버" 라는 프록시 서버를 통해 HTTP 및 HTTPS 서버 모두에 액세스 하도록 지정 합니다 _ . 바이패스 목록이 지정 되지 않았습니다.

proxycfg-p 프록시 _ 서버

예 3: 보안 리소스에 다른 프록시 사용

다음 예에서는 http 프록시 프록시를 통해 HTTP 서버에 액세스 하 _ 고 https 프록시를 통해 https 서버에 액세스 하도록 지정 합니다 _ . 로컬 인트라넷 사이트와 microsoft.com 도메인의 모든 사이트에서 * 프록시를 무시 합니다.

proxycfg-p "http = http _ 프록시 https = https _ 프록시" " < local > ; * . microsoft.com "

ProxyCfg.exe 제거

프록시 구성 도구를 사용한 후에는 원래 프록시 설정을 복원할 수 없습니다. 그러나 필요한 경우 유틸리티에서 만드는 레지스트리 설정을 제거할 수 있습니다. ProxyCfg.exe에서 만드는 레지스트리 항목을 제거 하려면 다음 레지스트리 키에서 WinHttpSettings 값을 삭제 해야 합니다.

HKEY _ 로컬 _ 컴퓨터 \ 소프트웨어 \ Microsoft \ Windows \ CurrentVersion \ Internet 설정 \ Connections \ WinHttpSettings

WinHttpSettings 값을 삭제 하면 모든 프록시 구성이 제거 됩니다.

ProxyCfg.exe 및 인증

프록시 구성 유틸리티는 기본 인증 정책을 설정 합니다. 트러스트 되지 않은 호스트로 NTLM 인증을 수행 하지 않아야 하기 때문에 기본적으로 NTLM 인증은 프록시 무시 목록의 호스트와 함께 자동으로 발생 합니다. 프록시가 없는 경우에도 ProxyCfg.exe를 사용 하 여 NTLM 인증을 수행 하기 위해 신뢰 하는 호스트의 바이패스 목록을 지정할 수 있습니다. 이 목적을 위해 ProxyCfg.exe를 사용 하는 경우 프록시 이름이 필요 하지만 실제 프록시 이름 대신 유효한 문자열을 사용할 수 있습니다.

자동 로그온 정책에 대 한 자세한 내용은 자동 로그온 정책을 참조 하세요.