X-Git-Url: http://www.privoxy.org/gitweb/?p=privoxy.git;a=blobdiff_plain;f=doc%2Fwebserver%2Fuser-manual%2Fconfig.html;h=532657350d8820798c2d798d7931d3fdd5bb1a69;hp=0b94a9e63eb36cf0141b3c1b645e0f86b6417de1;hb=3f970a064dc22c089ae2e9c78ef7ce8539908bdd;hpb=086d4aacf2fe1d729b4f4a67a7167cb6f19db043 diff --git a/doc/webserver/user-manual/config.html b/doc/webserver/user-manual/config.html index 0b94a9e6..53265735 100644 --- a/doc/webserver/user-manual/config.html +++ b/doc/webserver/user-manual/config.html @@ -4,7 +4,7 @@ The Main Configuration File - + @@ -15,7 +15,7 @@

Client-specific tags allow Privoxy admins to create different profiles and let the users chose which one they want without impacting other users.

One use case is allowing users to circumvent certain blocks without having to allow them to circumvent @@ -2169,7 +2222,7 @@

Clients can request tags to be set by using the CGI interface http://config.privoxy.org/client-tags. The specific tag description is only used on the web page and should be phrased in away that the user - understand the effect of the tag.

+ understands the effect of the tag.

Examples:
@@ -2179,7 +2232,12 @@
    # Define a couple of tags, the described effect requires action sections
     # that are enabled based on CLIENT-TAG patterns.
     client-specific-tag circumvent-blocks Overrule blocks but do not affect other actions
-    disable-content-filters Disable content-filters but do not affect other actions
+ client-specific-tag disable-content-filters Disable content-filters but do not affect other actions + client-specific-tag overrule-redirects Overrule redirect sections + client-specific-tag allow-cookies Do not crunch cookies in either direction + client-specific-tag change-tor-socks-port Change forward-socks5 settings to use a different Tor socks port (and circuits) + client-specific-tag no-https-inspection Disable HTTPS inspection + client-specific-tag no-tls-verification Don't verify certificates when http-inspection is enabled @@ -2205,25 +2263,13 @@
Notes:
-
- - - - - - - -
Warning
-

This is an experimental feature. The syntax is likely to change in future versions.

-
-

In case of some tags users may not want to enable them permanently, but only for a short amount of time, for example to circumvent a block that is the result of an overly-broad URL pattern.

The CGI interface http://config.privoxy.org/client-tags therefore provides a "enable this tag temporarily" option. If it is used, the tag will be set until the client-tag-lifetime is over.

-
Examples:
+
Example:
@@ -2256,18 +2302,6 @@
Notes:
-
-
- - - - - - -
Warning
-

This is an experimental feature. The syntax is likely to change in future versions.

-
-

If clients reach Privoxy through another proxy, for example a load balancer, Privoxy can't tell the client's IP address from the connection. If multiple clients use the same proxy, they will share the same client tag settings which is usually not desired.

@@ -2280,7 +2314,7 @@ change the client tags for other clients or increase Privoxy's memory requirements by registering lots of client tag settings for clients that don't exist.

-
Examples:
+
Example:
@@ -2327,7 +2361,7 @@ memory is (currently) cleared before using it, a buffer that is too large can actually reduce the throughput.

-
Examples:
+
Example:
@@ -2343,7 +2377,365 @@
-

7.7. Windows GUI Options

+

7.7. HTTPS Inspection + (Experimental)

+

HTTPS inspection allows to filter encrypted requests and responses. This is only supported when Privoxy has been built with FEATURE_HTTPS_INSPECTION. If you aren't sure if your version + supports it, have a look at http://config.privoxy.org/show-status.

+
+

7.7.1. ca-directory

+
+
+
Specifies:
+
+

Directory with the CA key, the CA certificate and the trusted CAs file.

+
+
Type of value:
+
+

Text

+
+
Default value:
+
+

Empty string

+
+
Effect if unset:
+
+

Default value is used.

+
+
Notes:
+
+

This directive specifies the directory where the CA key, the CA certificate and the trusted CAs file + are located.

+

The permissions should only let Privoxy and the Privoxy admin access the directory.

+
+
Example:
+
+

ca-directory /usr/local/etc/privoxy/CA

+
+
+
+
+
+

7.7.2. ca-cert-file

+
+
+
Specifies:
+
+

The CA certificate file in ".crt" format.

+
+
Type of value:
+
+

Text

+
+
Default value:
+
+

cacert.crt

+
+
Effect if unset:
+
+

Default value is used.

+
+
Notes:
+
+

This directive specifies the name of the CA certificate file in ".crt" format.

+

The file is used by Privoxy to generate website certificates when + https inspection is enabled with the https-inspection action.

+

Privoxy clients should import the certificate so that they can + validate the generated certificates.

+

The file can be generated with: openssl req -new -x509 -extensions v3_ca -keyout + cakey.pem -out cacert.crt -days 3650

+
+
Example:
+
+

ca-cert-file root.crt

+
+
+
+
+
+

7.7.3. ca-key-file

+
+
+
Specifies:
+
+

The CA key file in ".pem" format.

+
+
Type of value:
+
+

Text

+
+
Default value:
+
+

cacert.pem

+
+
Effect if unset:
+
+

Default value is used.

+
+
Notes:
+
+

This directive specifies the name of the CA key file in ".pem" format. The ca-cert-file section contains a command to generate it.

+

Access to the key should be limited to Privoxy.

+
+
Example:
+
+

ca-key-file cakey.pem

+
+
+
+
+
+

7.7.4. ca-password

+
+
+
Specifies:
+
+

The password for the CA keyfile.

+
+
Type of value:
+
+

Text

+
+
Default value:
+
+

Empty string

+
+
Effect if unset:
+
+

Default value is used.

+
+
Notes:
+
+

This directive specifies the password for the CA keyfile that is used when Privoxy generates + certificates for intercepted requests.

+

Note that the password is shown on the CGI page so don't reuse an important one.

+
+
Example:
+
+

ca-password blafasel

+
+
+
+
+
+

7.7.5. + certificate-directory

+
+
+
Specifies:
+
+

Directory to save generated keys and certificates.

+
+
Type of value:
+
+

Text

+
+
Default value:
+
+

./certs

+
+
Effect if unset:
+
+

Default value is used.

+
+
Notes:
+
+

This directive specifies the directory where generated TLS/SSL keys and certificates are saved when + https inspection is enabled with the https-inspection action.

+

The keys and certificates currently have to be deleted manually when changing the ca-cert-file and the ca-cert-key.

+

The permissions should only let Privoxy and the Privoxy admin access the directory.

+
+
+ + + + + + +
Warning
+

Privoxy currently does not garbage-collect obsolete keys and + certificates and does not keep track of how may keys and certificates exist.

+

Privoxy admins should monitor the size of the directory + and/or make sure there is sufficient space available. A cron job to limit the number of keys and + certificates to a certain number may be worth considering.

+
+ +
+
Example:
+
+

certificate-directory /usr/local/var/privoxy/certs

+
+ + + +
+

7.7.6. cipher-list

+
+
+
Specifies:
+
+

A list of ciphers to use in TLS handshakes

+
+
Type of value:
+
+

Text

+
+
Default value:
+
+

None

+
+
Effect if unset:
+
+

A default value is inherited from the TLS library.

+
+
Notes:
+
+

This directive allows to specify a non-default list of ciphers to use in TLS handshakes with clients + and servers.

+

Ciphers are separated by colons. Which ciphers are supported depends on the TLS library. When using + OpenSSL, unsupported ciphers are skipped. When using MbedTLS they are rejected.

+
+ + + + + + + +
Warning
+

Specifying an unusual cipher list makes fingerprinting easier. Note that the default list + provided by the TLS library may be unusual when compared to the one used by modern browsers as + well.

+
+
+
+
Examples:
+
+ + + + +
+
    # Explicitly set a couple of ciphers with names used by MbedTLS
+    cipher-list cipher-list TLS-ECDHE-RSA-WITH-CHACHA20-POLY1305-SHA256:\
+TLS-ECDHE-ECDSA-WITH-CHACHA20-POLY1305-SHA256:\
+TLS-DHE-RSA-WITH-CHACHA20-POLY1305-SHA256:\
+TLS-ECDHE-ECDSA-WITH-AES-128-GCM-SHA256:\
+TLS-ECDHE-ECDSA-WITH-AES-256-GCM-SHA384:\
+TLS-ECDHE-ECDSA-WITH-AES-256-CCM:\
+TLS-ECDHE-ECDSA-WITH-AES-256-CCM-8:\
+TLS-ECDHE-ECDSA-WITH-AES-128-CCM:\
+TLS-ECDHE-ECDSA-WITH-AES-128-CCM-8:\
+TLS-ECDHE-ECDSA-WITH-CAMELLIA-128-GCM-SHA256:\
+TLS-ECDHE-ECDSA-WITH-CAMELLIA-256-GCM-SHA384:\
+TLS-ECDHE-RSA-WITH-AES-128-GCM-SHA256:\
+TLS-ECDHE-RSA-WITH-AES-256-GCM-SHA384:\
+TLS-ECDHE-RSA-WITH-CAMELLIA-128-GCM-SHA256:\
+TLS-ECDHE-RSA-WITH-CAMELLIA-256-GCM-SHA384:\
+TLS-DHE-RSA-WITH-AES-256-GCM-SHA384:\
+TLS-DHE-RSA-WITH-AES-128-GCM-SHA256:\
+TLS-DHE-RSA-WITH-AES-256-CCM:\
+TLS-DHE-RSA-WITH-AES-256-CCM-8:\
+TLS-DHE-RSA-WITH-AES-128-CCM:\
+TLS-DHE-RSA-WITH-AES-128-CCM-8:\
+TLS-DHE-RSA-WITH-CAMELLIA-128-GCM-SHA256:\
+TLS-DHE-RSA-WITH-CAMELLIA-256-GCM-SHA384:\
+TLS-ECDH-RSA-WITH-AES-128-GCM-SHA256:\
+TLS-ECDH-RSA-WITH-AES-256-GCM-SHA384:\
+TLS-ECDH-RSA-WITH-CAMELLIA-128-GCM-SHA256:\
+TLS-ECDH-RSA-WITH-CAMELLIA-256-GCM-SHA384:\
+TLS-ECDH-ECDSA-WITH-AES-128-GCM-SHA256:\
+TLS-ECDH-ECDSA-WITH-AES-256-GCM-SHA384:\
+TLS-ECDH-ECDSA-WITH-CAMELLIA-128-GCM-SHA256:\
+TLS-ECDH-ECDSA-WITH-CAMELLIA-256-GCM-SHA384
+   
+
+ + + + +
+
    # Explicitly set a couple of ciphers with names used by OpenSSL
+cipher-list ECDHE-RSA-AES256-GCM-SHA384:\
+ECDHE-ECDSA-AES256-GCM-SHA384:\
+DH-DSS-AES256-GCM-SHA384:\
+DHE-DSS-AES256-GCM-SHA384:\
+DH-RSA-AES256-GCM-SHA384:\
+DHE-RSA-AES256-GCM-SHA384:\
+ECDH-RSA-AES256-GCM-SHA384:\
+ECDH-ECDSA-AES256-GCM-SHA384:\
+ECDHE-RSA-AES128-GCM-SHA256:\
+ECDHE-ECDSA-AES128-GCM-SHA256:\
+DH-DSS-AES128-GCM-SHA256:\
+DHE-DSS-AES128-GCM-SHA256:\
+DH-RSA-AES128-GCM-SHA256:\
+DHE-RSA-AES128-GCM-SHA256:\
+ECDH-RSA-AES128-GCM-SHA256:\
+ECDH-ECDSA-AES128-GCM-SHA256:\
+ECDHE-RSA-AES256-GCM-SHA384:\
+AES128-SHA
+   
+
+ + + + +
+
    # Use keywords instead of explicitly naming the ciphers (Does not work with MbedTLS)
+    cipher-list ALL:!EXPORT:!EXPORT40:!EXPORT56:!aNULL:!LOW:!RC4:@STRENGTH
+   
+
+
+
+
+
+
+

7.7.7. trusted-cas-file

+
+
+
Specifies:
+
+

The trusted CAs file in ".pem" format.

+
+
Type of value:
+
+

File name relative to ca-directory

+
+
Default value:
+
+

trustedCAs.pem

+
+
Effect if unset:
+
+

Default value is used.

+
+
Notes:
+
+

This directive specifies the trusted CAs file that is used when validating certificates for + intercepted TLS/SSL requests.

+

An example file can be downloaded from https://curl.se/ca/cacert.pem. If you want to create the file yourself, please see: https://curl.se/docs/caextract.html.

+
+
Example:
+
+

trusted-cas-file trusted_cas_file.pem

+
+
+
+
+ +
+

7.8. Windows GUI Options

Privoxy has a number of options specific to the Windows GUI interface:

If "activity-animation" is set to 1, the Privoxy