--http-proxy args
Connect to remote host through an HTTP proxy. This requires at least an
address ``server`` and ``port`` argument. If HTTP Proxy-Authenticate
is required, a file name to an ``authfile`` file containing a username
and password on 2 lines can be given, or :code:`stdin` to prompt from
console. Its content can also be specified in the config file with the
``--http-proxy-user-pass`` option (See `INLINE FILE SUPPORT`_).
The last optional argument is an ``auth-method`` which should be one
of :code:`none`, :code:`basic`, or :code:`ntlm2`.
HTTP Digest authentication is supported as well, but only via the
:code:`auto` or :code:`auto-nct` flags (below). This must replace
the ``authfile`` argument.
The :code:`auto` flag causes OpenVPN to automatically determine the
``auth-method`` and query stdin or the management interface for
username/password credentials, if required. This flag exists on OpenVPN
2.1 or higher.
The ``auto-nct`` flag (no clear-text auth) instructs OpenVPN to
automatically determine the authentication method, but to reject weak
authentication protocols such as HTTP Basic Authentication.
Examples:
::
# no authentication
http-proxy proxy.example.net 3128
# basic authentication, load credentials from file
http-proxy proxy.example.net 3128 authfile.txt
# basic authentication, ask user for credentials
http-proxy proxy.example.net 3128 stdin
# NTLM authentication, load credentials from file
http-proxy proxy.example.net 3128 authfile.txt ntlm2
# determine which authentication is required, ask user for credentials
http-proxy proxy.example.net 3128 auto
# determine which authentication is required, but reject basic
http-proxy proxy.example.net 3128 auto-nct
# determine which authentication is required, but set credentials
http-proxy proxy.example.net 3128 auto
http-proxy-user-pass authfile.txt
# basic authentication, specify credentials inline
http-proxy proxy.example.net 3128 "" basic
username
password
Note that support for NTLMv1 proxies was removed with OpenVPN 2.7.
:code:`ntlm` now is an alias for :code:`ntlm2`; i.e. OpenVPN will always
attempt to use NTLMv2 authentication.
--http-proxy-user-pass userpass
Overwrite the username/password information for ``--http-proxy``. If specified
as an inline option (see `INLINE FILE SUPPORT`_), it will be interpreted as
username/password separated by a newline. When specified on the command line
it is interpreted as a filename same as the third argument to ``--http-proxy``.
Example::
username
password
--http-proxy-option args
Set extended HTTP proxy options. Requires an option ``type`` as argument
and an optional ``parameter`` to the type. Repeat to set multiple
options.
:code:`VERSION` ``version``
Set HTTP version number to ``version`` (default :code:`1.0`).
:code:`AGENT` ``user-agent``
Set HTTP "User-Agent" string to ``user-agent``.
:code:`CUSTOM-HEADER` ``name`` ``content``
Adds the custom Header with ``name`` as name and ``content`` as
the content of the custom HTTP header.
Examples:
::
http-proxy-option VERSION 1.1
http-proxy-option AGENT OpenVPN/2.4
http-proxy-option X-Proxy-Flag some-flags
--socks-proxy args
Connect to remote host through a Socks5 proxy. A required ``server``
argument is needed. Optionally a ``port`` (default :code:`1080`) and
``authfile`` can be given. The ``authfile`` is a file containing a
username and password on 2 lines, or :code:`stdin` can be used to
prompt from console.