Alat konfigurasi proksi ProxyCfg.exe

Penting

ProxyCfg.exe tidak digunakan lagi sejak Windows Vista dan Windows Server 2008. Ini digantikan oleh Netsh.exe (lihat perintah Netsh.exe).

Topik ini menjelaskan penggunaan alat ProxyCfg.exekonfigurasi proksi Microsoft Windows HTTP Services (WinHTTP).

Ada dua cara untuk mengakses server HTTP dan Secure Hypertext Transfer Protocol (HTTPS) melalui proksi menggunakan Microsoft Windows HTTP Services (WinHTTP). Pertama, Anda dapat menentukan pengaturan proksi dari dalam aplikasi WinHTTP Anda. Kedua, Anda dapat menentukan pengaturan proksi default dari luar aplikasi Anda menggunakan utilitas konfigurasi proksi yang terletak di direktori %windir%\system32.

Anda dapat secara terprogram mengatur data proksi dari dalam aplikasi atau skrip Anda. Jika Anda menulis aplikasi menggunakan WINHTTP API, gunakan salah satu dari dua teknik berikut untuk mengubah pengaturan proksi.

  • Gunakan fungsi WinHttpOpen. Tentukan jenis akses dalam parameter kedua, nama proksi di parameter ketiga, dan daftar bypass dalam parameter keempat. Contoh berikut menunjukkan bagaimana fungsi WinHttpOpen dapat digunakan untuk mengatur data proksi.

    hSession = WinHttpOpen( L"WinHTTP Example/1.0",  
                            WINHTTP_ACCESS_TYPE_NAMED_PROXY,
                            L"proxy_name", 
                            L"<local>", 
                            0);
    
  • Gunakan fungsi WinHttpSetOption. Bendera WINHTTP_OPTION_PROXY memungkinkan Anda menentukan pengaturan proksi dengan struktur WINHTTP_PROXY_INFO. Contoh kode berikut menunjukkan bagaimana fungsi WinHttpSetOption dapat digunakan untuk mengatur data proksi.

    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));
    

Jika Anda menulis skrip atau aplikasi menggunakan objek WinHttpRequest , gunakan teknik berikut untuk mengubah pengaturan proksi.

  • Gunakan metode SetProxy. Tentukan jenis akses dalam parameter pertama, nama proksi dalam parameter kedua, dan daftar bypass di parameter ketiga. Contoh berikut menunjukkan bagaimana metode SetProxy dapat digunakan dalam skrip untuk mengatur data proksi.

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

Untuk menentukan pengaturan default dan menghilangkan kebutuhan untuk menggunakan metode SetProxy atau fungsi WinHttpSetOption, gunakan utilitas konfigurasi proksi. Dengan menggunakan utilitas ini, Anda dapat menentukan bahwa aplikasi Anda mengakses jaringan baik secara langsung, melalui proksi, atau melalui kombinasi akses langsung dan proksi dengan menentukan daftar bypass. Saat Anda menggunakan WINHTTP API, alat konfigurasi proksi hanya menentukan pengaturan saat Anda meneruskan bendera WINHTTP_ACCESS_TYPE_DEFAULT ke WINHttpOpen API. Objek WinHttpRequest menggunakan pengaturan alat konfigurasi proksi secara default.

Pengaturan proksi untuk WinHTTP bukan pengaturan proksi untuk Microsoft Internet Explorer. Anda tidak dapat mengonfigurasi pengaturan proksi untuk WinHTTP di Panel Kontrol Microsoft Windows. Menggunakan utilitas konfigurasi proksi WinHTTP tidak mengubah pengaturan yang Anda gunakan untuk Internet Explorer.

Catatan

Jika Anda mencoba membuka dan mengirim permintaan HTTP menggunakan WinHTTP dan pengaturan proksi salah, kesalahan terjadi.

Parameter baris perintah

Tabel berikut mencantumkan parameter baris perintah yang tersedia untuk digunakan dengan alat 'ProxyCfg.exe''.

Parameter Deskripsi
tidak ada Ketika tidak ada parameter yang ditentukan, pengaturan proksi WinHTTP saat ini ditampilkan.
? Informasi bantuan ditampilkan.
d Menentukan bahwa aplikasi WinHTTP mengakses jaringan secara langsung, tanpa proksi.
p Menentukan server proksi. Anda juga dapat menentukan daftar opsional server yang diakses tanpa proksi.
u Menentukan bahwa aplikasi WinHTTP menggunakan pengaturan proksi pengguna saat ini untuk Internet Explorer. Parameter ini tidak berfungsi jika Internet Explorer secara otomatis mendeteksi pengaturan proksi, atau jika menggunakan URL konfigurasi otomatis untuk mengatur informasi proksi.
i Menentukan bahwa aplikasi WinHTTP menggunakan pengaturan proksi pengguna saat ini untuk Internet Explorer. Ini hanya berfungsi ketika ProxyCfg.exe sebelumnya tidak digunakan. Jika ProxyCfg.exe diinstal, tentukan bahwa parameter baris perintah "u" menggunakan pengaturan manual. Parameter ini tidak berfungsi jika Internet Explorer secara otomatis mendeteksi pengaturan proksi, atau jika menggunakan URL konfigurasi otomatis untuk mengatur informasi proksi.

Anda dapat menentukan proksi dalam string yang dibatasi spasi. Daftar proksi dapat berisi nomor port yang digunakan untuk mengakses proksi. Untuk mencantumkan proksi untuk protokol tertentu, string harus mengikuti format, <protocol>=https://< proxy_name>. Protokol yang valid adalah HTTP dan HTTPS. Misalnya, untuk mencantumkan proksi HTTP, string yang valid adalah http=https://http_proxy_name:80, di mana http_proxy_name adalah nama server proksi dan 80 adalah nomor port yang harus Anda gunakan untuk mengakses proksi. Jika proksi menggunakan nomor port default untuk protokol tersebut, maka Anda dapat menghilangkan nomor port. Jika nama proksi dicantumkan dengan sendirinya, Anda dapat menggunakannya sebagai proksi default untuk protokol apa pun yang tidak memiliki proksi tertentu. Misalnya, http=https://http_proxy other_proxy menggunakan http_proxy untuk operasi HTTP apa pun, sementara protokol HTTPS menggunakan proksi bernama other_proxy.

Anda dapat mencantumkan nama host atau alamat IP yang diketahui secara lokal di daftar bypass proksi. Daftar ini dapat berisi kartubebas, seperti "*", yang menyebabkan aplikasi melewati server proksi untuk alamat yang sesuai dengan pola yang ditentukan, misalnya, "*.microsoft.com" atau "*.org". Karakter kartubebas harus menjadi karakter paling kiri dalam daftar. Misalnya, "aaa.*" tidak didukung. Untuk mencantumkan beberapa alamat dan nama host, pisahkan dengan spasi kosong atau titik koma dalam string bypass proksi. Jika Anda menentukan <makro lokal> , fungsi melewati nama host apa pun yang tidak berisi titik.

Peringatan

Setelah Proxycfg.exe berjalan, Anda tidak dapat memulihkan pengaturan proksi sebelumnya. Namun, Anda dapat menghapus pengaturan proksi sepenuhnya.

Penggunaan

Untuk menggunakan alat konfigurasi proksi, buka jendela prompt perintah dan jalankan utilitas konfigurasi proksi dengan parameter baris perintah yang sesuai. Bagian berikut ini menyediakan contoh sintaks.

Contoh sintaks

Contoh 1: Gunakan proksi hanya untuk sumber daya eksternal

Berikut ini adalah penggunaan paling umum untuk Proxycfg.exe. Perintah ini menentukan bahwa server HTTP dan HTTPS diakses melalui server proksi bernama "proxy_server", kecuali untuk nama host yang tidak berisi titik.

proxycfg -p proxy_server "<local>"

Contoh 2: Gunakan proksi untuk semua sumber daya

Contoh berikut menentukan bahwa server HTTP dan HTTPS diakses melalui server proksi bernama "proxy_server". Tidak ada daftar bypass yang ditentukan.

proxycfg -p proxy_server

Contoh 3: Gunakan proksi yang berbeda untuk sumber daya yang aman

Contoh berikut menentukan bahwa server HTTP diakses melalui proksi http_proxy dan server HTTPS diakses melalui https_proxy. Situs intranet lokal dan situs apa pun di domain *.microsoft.com melewati proksi.

proxycfg -p "http=http_proxy https=https_proxy" "<local>;*.microsoft.com"

Menghapus ProxyCfg.exe

Setelah menggunakan alat konfigurasi proksi, Anda tidak dapat memulihkan pengaturan proksi asli Anda. Namun, jika perlu, Anda dapat menghapus pengaturan registri yang dibuat utilitas. Untuk menghapus entri registri yang dibuat ProxyCfg.exe, Anda harus menghapus nilai WinHttp Pengaturan dari kunci registri berikut ini.

HKEY_LOCAL_MACHINE Perangkat Lunak\Microsoft\Windows\CurrentVersion\Internet Pengaturan\ Koneksi ions\WinHttp Pengaturan\

Menghapus nilai WinHttp Pengaturan menghapus semua konfigurasi proksi.

ProxyCfg.exe dan autentikasi

Utilitas konfigurasi proksi menetapkan kebijakan autentikasi default. Karena Anda tidak boleh melakukan autentikasi NTLM dengan host yang tidak tepercaya, secara default, autentikasi NTLM hanya terjadi secara otomatis dengan host pada daftar bypass proksi. Jika tidak ada proksi, Anda masih dapat menggunakan ProxyCfg.exe untuk menentukan daftar bypass host yang Anda percayai untuk melakukan autentikasi NTLM. Nama proksi diperlukan saat menggunakan ProxyCfg.exe untuk tujuan ini, tetapi Anda dapat menggunakan string yang valid sebagai pengganti nama proksi nyata.

Untuk informasi selengkapnya tentang kebijakan masuk otomatis, lihat Kebijakan Masuk Otomatis.