2021-11-13 08:49:50 +00:00
|
|
|
# Sample configuration for sslproxy v0.9.2
|
2018-11-03 15:23:31 +00:00
|
|
|
#
|
|
|
|
# Use the -f command line option to start sslproxy with a config file.
|
|
|
|
# See sslproxy.conf(5) and sslproxy(1) for documentation.
|
2021-09-23 19:03:32 +00:00
|
|
|
#
|
|
|
|
# Note that the ordering of options, rules, and proxyspecs in configuration
|
|
|
|
# files (and on the command line) is important. For example, rules and
|
|
|
|
# proxyspecs can only make use of the options defined earlier.
|
2017-08-24 13:16:45 +00:00
|
|
|
|
2018-11-03 15:23:31 +00:00
|
|
|
# Use CA cert (and key) to sign forged certs.
|
|
|
|
# Equivalent to -c command line option.
|
2017-08-24 13:16:45 +00:00
|
|
|
CACert /etc/sslproxy/ca.crt
|
2018-05-09 17:05:29 +00:00
|
|
|
|
2018-11-03 15:23:31 +00:00
|
|
|
# Use CA key (and cert) to sign forged certs.
|
|
|
|
# Equivalent to -k command line option.
|
2017-08-24 13:16:45 +00:00
|
|
|
CAKey /etc/sslproxy/ca.key
|
|
|
|
|
2018-11-03 15:23:31 +00:00
|
|
|
# Use cert from pemfile when destination requests client certs.
|
|
|
|
# Equivalent to -a command line option.
|
2018-08-04 12:20:50 +00:00
|
|
|
#ClientCert /etc/sslproxy/client.crt
|
|
|
|
|
2018-11-03 15:23:31 +00:00
|
|
|
# Use key from pemfile when destination requests client certs.
|
|
|
|
# Equivalent to -b command line option.
|
2018-08-04 12:20:50 +00:00
|
|
|
#ClientKey /etc/sslproxy/client.key
|
|
|
|
|
2018-11-03 15:23:31 +00:00
|
|
|
# Use CA chain from pemfile (intermediate and root CA certs).
|
|
|
|
# Equivalent to -C command line option.
|
2018-05-09 17:05:29 +00:00
|
|
|
#CAChain /etc/sslproxy/chain.crt
|
|
|
|
|
2018-11-03 15:23:31 +00:00
|
|
|
# Use key from pemfile for leaf certs.
|
|
|
|
# Equivalent to -K command line option.
|
|
|
|
# (default: generate)
|
2020-05-09 18:32:53 +00:00
|
|
|
#LeafKey /etc/sslproxy/leaf.key
|
2018-05-09 17:05:29 +00:00
|
|
|
|
2018-11-03 15:23:31 +00:00
|
|
|
# Use URL as CRL distribution point for all forged certs.
|
|
|
|
# Equivalent to -q command line option.
|
2020-05-09 18:32:53 +00:00
|
|
|
#LeafCRLURL http://example.com/example.crl
|
2018-05-09 17:05:29 +00:00
|
|
|
|
2018-11-03 15:23:31 +00:00
|
|
|
# Use cert+chain+key PEM files from certdir to target all sites matching the
|
|
|
|
# common names (non-matching: generate if CA).
|
|
|
|
# Equivalent to -t command line option.
|
2020-05-09 18:32:53 +00:00
|
|
|
#LeafCertDir /etc/sslproxy/leaf.d
|
|
|
|
|
|
|
|
# Use cert+chain+key from PEM file instead of generating leaf keys on the fly.
|
|
|
|
# Equivalent to -A command line option.
|
|
|
|
#DefaultLeafCert /etc/sslproxy/leaf.pem
|
2018-05-09 17:05:29 +00:00
|
|
|
|
2018-11-03 15:23:31 +00:00
|
|
|
# Write leaf key and only generated certificates to gendir.
|
|
|
|
# Equivalent to -w command line option.
|
|
|
|
#WriteGenCertsDir /var/log/sslproxy
|
2018-05-09 17:05:29 +00:00
|
|
|
|
2018-11-03 15:23:31 +00:00
|
|
|
# Write leaf key and all certificates to gendir.
|
|
|
|
# Equivalent to -W command line option.
|
|
|
|
#WriteAllCertsDir /var/log/sslproxy
|
2018-05-09 17:05:29 +00:00
|
|
|
|
2018-11-03 15:23:31 +00:00
|
|
|
# Deny all OCSP requests on all proxyspecs.
|
|
|
|
# Equivalent to -O command line option.
|
2018-05-09 17:05:29 +00:00
|
|
|
#DenyOCSP yes
|
|
|
|
|
2018-11-03 15:23:31 +00:00
|
|
|
# Passthrough SSL connections if they cannot be split because of client cert
|
|
|
|
# auth or no matching cert and no CA.
|
|
|
|
# Equivalent to -P command line option.
|
|
|
|
# (default: drop)
|
2018-05-09 17:05:29 +00:00
|
|
|
#Passthrough yes
|
|
|
|
|
2018-11-03 15:23:31 +00:00
|
|
|
# Use DH group params from pemfile.
|
|
|
|
# Equivalent to -g command line option.
|
|
|
|
# (default: keyfiles or auto)
|
2018-05-09 17:05:29 +00:00
|
|
|
#DHGroupParams /etc/sslproxy/dh.pem
|
|
|
|
|
2018-11-03 15:23:31 +00:00
|
|
|
# Use ECDH named curve.
|
|
|
|
# Equivalent to -G command line option.
|
|
|
|
# (default: prime256v1)
|
2018-05-09 17:05:29 +00:00
|
|
|
#ECDHCurve prime256v1
|
|
|
|
|
2018-11-03 15:23:31 +00:00
|
|
|
# Enable/disable SSL/TLS compression on all connections.
|
|
|
|
# Equivalent to -Z command line option.
|
2018-05-09 17:05:29 +00:00
|
|
|
#SSLCompression no
|
|
|
|
|
2018-11-03 15:23:31 +00:00
|
|
|
# Force SSL/TLS protocol version only.
|
|
|
|
# Equivalent to -r command line option.
|
|
|
|
# (default: all)
|
2018-05-09 17:05:29 +00:00
|
|
|
#ForceSSLProto tls12
|
|
|
|
|
2018-11-03 15:23:31 +00:00
|
|
|
# Disable SSL/TLS protocol version.
|
|
|
|
# Equivalent to -R command line option.
|
|
|
|
# (default: none)
|
2018-05-09 17:05:29 +00:00
|
|
|
#DisableSSLProto tls10
|
|
|
|
|
2021-10-29 18:21:19 +00:00
|
|
|
# Enable SSL/TLS protocol version.
|
|
|
|
# Equivalent to -B command line option.
|
|
|
|
# (default: all)
|
|
|
|
#EnableSSLProto tls10
|
|
|
|
|
2019-07-30 18:29:46 +00:00
|
|
|
# Min SSL/TLS protocol version.
|
|
|
|
# (default: tls10)
|
|
|
|
#MinSSLProto tls10
|
|
|
|
|
|
|
|
# Max SSL/TLS protocol version.
|
2020-09-07 09:29:41 +00:00
|
|
|
# (default: tls12 or tls13, depending on the version of SSL library)
|
2020-07-25 08:35:52 +00:00
|
|
|
#MaxSSLProto tls13
|
2019-07-30 18:29:46 +00:00
|
|
|
|
2020-06-27 20:39:41 +00:00
|
|
|
# Use the given OpenSSL ciphers spec.
|
2018-11-03 15:23:31 +00:00
|
|
|
# Equivalent to -s command line option.
|
|
|
|
# (default: ALL:-aNULL)
|
|
|
|
#Ciphers MEDIUM:HIGH
|
2018-05-09 17:05:29 +00:00
|
|
|
|
2020-06-27 20:39:41 +00:00
|
|
|
# Use the given OpenSSL ciphersuites spec.
|
|
|
|
# The ciphersuites spec is for TLS 1.3.
|
|
|
|
# Equivalent to -U command line option.
|
2020-07-23 09:39:05 +00:00
|
|
|
# (default: TLS_AES_256_GCM_SHA384:TLS_CHACHA20_POLY1305_SHA256:TLS_AES_128_GCM_SHA256)
|
2020-06-27 20:39:41 +00:00
|
|
|
#CipherSuites TLS_AES_256_GCM_SHA384:TLS_CHACHA20_POLY1305_SHA256:TLS_AES_128_GCM_SHA256
|
|
|
|
|
2019-03-27 00:07:36 +00:00
|
|
|
# Leaf key RSA keysize in bits, use 1024|2048|3072|4096.
|
2019-08-03 20:40:38 +00:00
|
|
|
# (default: 2048)
|
|
|
|
#LeafKeyRSABits 2048
|
2019-03-27 00:07:36 +00:00
|
|
|
|
2018-09-14 23:51:26 +00:00
|
|
|
# OpenSSL engine to activate, either ID or full path to shared library
|
2018-11-03 15:23:31 +00:00
|
|
|
# Equivalent to -x command line option
|
2018-09-14 23:51:26 +00:00
|
|
|
#OpenSSLEngine cloudhsm
|
|
|
|
|
2018-11-03 15:23:31 +00:00
|
|
|
# Specify default NAT engine to use.
|
|
|
|
# Equivalent to -e command line option.
|
2018-05-09 17:05:29 +00:00
|
|
|
#NATEngine netfilter
|
|
|
|
|
2018-11-03 15:23:31 +00:00
|
|
|
# Drop privileges to user.
|
|
|
|
# Equivalent to -u command line option.
|
|
|
|
# (default: nobody, if run as root)
|
|
|
|
#User _sslproxy
|
2018-05-09 17:05:29 +00:00
|
|
|
|
2018-11-03 15:23:31 +00:00
|
|
|
# Drop privileges to group.
|
|
|
|
# Equivalent to -m command line option.
|
|
|
|
# (default: primary group of user)
|
|
|
|
#Group _sslproxy
|
|
|
|
|
|
|
|
# chroot() to jaildir (impacts sni proxyspecs, see sslproxy(1)).
|
|
|
|
# Equivalent to -j command line option.
|
2018-05-09 17:05:29 +00:00
|
|
|
#Chroot /var/run/sslproxy
|
|
|
|
|
2018-11-03 15:23:31 +00:00
|
|
|
# Write pid to file.
|
|
|
|
# Equivalent to -p command line option.
|
|
|
|
# (default: no pid file)
|
2018-05-09 17:05:29 +00:00
|
|
|
PidFile /var/run/sslproxy.pid
|
|
|
|
|
2018-11-03 15:23:31 +00:00
|
|
|
# Connect log: log one line summary per connection to logfile.
|
|
|
|
# Equivalent to -l command line option.
|
2018-05-09 17:05:29 +00:00
|
|
|
#ConnectLog /var/log/sslproxy/connect.log
|
|
|
|
|
2018-11-03 15:23:31 +00:00
|
|
|
# Content log: full data to file or named pipe
|
|
|
|
# (excludes ContentLogDir/ContentLogPathSpec).
|
|
|
|
# Equivalent to -L command line option.
|
2018-05-09 17:05:29 +00:00
|
|
|
#ContentLog /var/log/sslproxy/content.log
|
|
|
|
|
2018-11-03 15:23:31 +00:00
|
|
|
# Content log: full data to separate files in dir
|
|
|
|
# (excludes ContentLog/ContentLogPathSpec).
|
|
|
|
# Equivalent to -S command line option.
|
2018-05-09 17:05:29 +00:00
|
|
|
#ContentLogDir /var/log/sslproxy/content
|
|
|
|
|
2018-11-03 15:23:31 +00:00
|
|
|
# Content log: full data to sep files with % subst
|
|
|
|
# (excludes ContentLog/ContentLogDir).
|
|
|
|
# Equivalent to -F command line option.
|
2018-09-14 23:51:26 +00:00
|
|
|
#ContentLogPathSpec /var/log/sslproxy/%X/%u-%s-%d-%T.log
|
2018-05-09 17:05:29 +00:00
|
|
|
|
2018-11-03 15:23:31 +00:00
|
|
|
# Look up local process owning each connection for logging.
|
|
|
|
# Equivalent to -i command line option.
|
2018-05-09 17:05:29 +00:00
|
|
|
#LogProcInfo yes
|
|
|
|
|
2018-11-03 15:23:31 +00:00
|
|
|
# Pcap log: packets to pcapfile (excludes PcapLogDir/PcapLogPathSpec).
|
|
|
|
# Equivalent to -X command line option.
|
|
|
|
#PcapLog /var/log/sslproxy/content.pcap
|
|
|
|
|
|
|
|
# Pcap log: packets to separate files in dir
|
|
|
|
# (excludes PcapLog/PcapLogPathSpec).
|
|
|
|
# Equivalent to -Y command line option.
|
|
|
|
#PcapLogDir /var/log/sslproxy/pcap
|
|
|
|
|
|
|
|
# Pcap log: packets to sep files with % subst (excludes PcapLog/PcapLogDir).
|
|
|
|
# Equivalent to -y command line option.
|
|
|
|
#PcapLogPathSpec /var/log/sslproxy/%X/%u-%s-%d-%T.pcap
|
|
|
|
|
|
|
|
# Mirror packets to interface.
|
|
|
|
# Equivalent to -I command line option.
|
|
|
|
#MirrorIf lo
|
|
|
|
|
|
|
|
# Mirror packets to target address (used with MirrorIf).
|
2020-12-14 14:45:22 +00:00
|
|
|
# Equivalent to -T command line option. Leave commented if the target is
|
|
|
|
# irrelevant (e.g. mirror to dummy device)
|
2018-11-03 15:23:31 +00:00
|
|
|
#MirrorTarget 192.0.2.1
|
|
|
|
|
|
|
|
# Log master keys to logfile in SSLKEYLOGFILE format.
|
|
|
|
# Equivalent to -M command line option.
|
2018-05-09 17:05:29 +00:00
|
|
|
#MasterKeyLog /var/log/sslproxy/masterkeys.log
|
|
|
|
|
2018-11-03 15:23:31 +00:00
|
|
|
# Daemon mode: run in background, log error messages to syslog.
|
|
|
|
# Equivalent to -d command line option.
|
2018-05-09 17:05:29 +00:00
|
|
|
Daemon yes
|
|
|
|
|
2018-11-03 15:23:31 +00:00
|
|
|
# Debug mode: run in foreground, log debug messages on stderr.
|
|
|
|
# Equivalent to -D command line option.
|
2018-05-09 17:05:29 +00:00
|
|
|
#Debug yes
|
|
|
|
|
|
|
|
# Verbose debug level
|
|
|
|
#DebugLevel 4
|
|
|
|
|
2017-08-24 13:16:45 +00:00
|
|
|
# Close connections after this many seconds of idle time
|
|
|
|
ConnIdleTimeout 120
|
|
|
|
|
|
|
|
# Check for expired connections every this many seconds
|
|
|
|
ExpiredConnCheckPeriod 10
|
|
|
|
|
|
|
|
# Log statistics to syslog
|
2018-11-03 15:23:31 +00:00
|
|
|
# Equivalent to -J command line option.
|
2017-08-24 13:16:45 +00:00
|
|
|
LogStats yes
|
|
|
|
|
|
|
|
# Log statistics every this many ExpiredConnCheckPeriod periods
|
|
|
|
StatsPeriod 1
|
|
|
|
|
|
|
|
# Remove HTTP header line for Accept-Encoding
|
|
|
|
RemoveHTTPAcceptEncoding no
|
|
|
|
|
2017-09-03 20:11:20 +00:00
|
|
|
# Remove HTTP header line for Referer
|
|
|
|
RemoveHTTPReferer yes
|
|
|
|
|
2018-01-18 00:18:53 +00:00
|
|
|
# Verify peer using default certificates
|
|
|
|
VerifyPeer yes
|
|
|
|
|
2018-09-14 23:51:26 +00:00
|
|
|
# When disabled, never add the SNI to forged certificates, even if the SNI
|
|
|
|
# provided by the client does not match the server certificate's CN/SAN.
|
|
|
|
# Helps pass the wrong.host test at https://badssl.com.
|
2018-01-18 00:18:53 +00:00
|
|
|
AllowWrongHost no
|
|
|
|
|
2019-02-28 23:08:24 +00:00
|
|
|
# Require authentication for users to use SSLproxy
|
|
|
|
#UserAuth no
|
|
|
|
|
2019-03-01 23:52:48 +00:00
|
|
|
# Path to user db file
|
|
|
|
#UserDBPath /var/db/users.db
|
|
|
|
|
|
|
|
# Time users out after this many seconds of idle time
|
|
|
|
#UserTimeout 300
|
|
|
|
|
2019-02-28 23:08:24 +00:00
|
|
|
# Redirect URL for users to log in to the system
|
|
|
|
#UserAuthURL https://192.168.0.1/userdblogin.php
|
|
|
|
|
2020-11-12 07:59:53 +00:00
|
|
|
# Comma separated list of users diverted by all proxyspecs
|
|
|
|
# Connections from these users are diverted to listening programs.
|
|
|
|
# Users not listed in DivertUsers or PassUsers are blocked.
|
|
|
|
# Max of 50 users can be listed.
|
|
|
|
DivertUsers utmfw
|
|
|
|
|
|
|
|
# Comma separated list of users passed through by all proxyspecs
|
|
|
|
# Connections from these users are simply passed through to their original destinations,
|
|
|
|
# not diverted to listening programs.
|
|
|
|
# Users not listed in DivertUsers or PassUsers are blocked.
|
|
|
|
# Max of 50 users can be listed.
|
|
|
|
PassUsers admin
|
|
|
|
|
2019-03-07 20:14:53 +00:00
|
|
|
# Validate proxy spec protocols
|
|
|
|
#ValidateProto no
|
|
|
|
|
|
|
|
# Max HTTP header size in bytes for protocol validation
|
|
|
|
#MaxHTTPHeaderSize 8192
|
|
|
|
|
2019-03-27 11:23:18 +00:00
|
|
|
# Set open files limit, use 50-10000
|
|
|
|
#OpenFilesLimit 1024
|
|
|
|
|
2021-09-13 19:36:25 +00:00
|
|
|
# Set divert or split mode of operation
|
2021-09-14 09:41:57 +00:00
|
|
|
# Not equivalent to the command line -n option.
|
|
|
|
# Applied to the proxyspecs defined after it, and structured proxyspecs can override it.
|
|
|
|
# Note that if the arg is not yes|no, this is assumed to be a Divert filter rule.
|
2021-09-13 19:36:25 +00:00
|
|
|
# (default: yes)
|
|
|
|
#Divert yes
|
|
|
|
|
2019-05-02 16:06:48 +00:00
|
|
|
# Passthrough sites
|
2021-09-13 19:36:25 +00:00
|
|
|
# The PassSite option is a special form of Pass filter rule
|
|
|
|
# PassSite rules can be written as Pass filter rules, see filter rule examples
|
|
|
|
# PassSite rules will be deprecated in favor of filter rules in the future
|
2021-10-05 20:00:17 +00:00
|
|
|
# site[*] [(clientaddr|user|*) [description desc]]
|
2019-04-18 22:16:05 +00:00
|
|
|
#PassSite example.com
|
2019-04-20 22:00:46 +00:00
|
|
|
#PassSite example.com 192.168.0.1
|
|
|
|
#PassSite example.com soner
|
|
|
|
#PassSite *.google.com * android
|
Add support for passsite substring match
Now the site field in PassSite option can have an '*' suffix to search
for a match anywhere in sni or common names. Note that this is not a
regex or wildcard search.
Previously, we only supported exact matches in sni and between slashes
in common names. This change makes it possible to cover multiple sites
in one PassSite option. In fact, without this change, certain sites
could not be added as passsite, because it was impossible to know their
subdomain names beforehand, for example *.fbcdn.net, which may have many
subdomain names in place of asterisk.
So to use substring match, append an '*' to a site name in PassSite
option (the asterisk is removed before substring search). For example,
use ".fbcdn.net*" to match all subdomains of fbcdn.net, notice the
asterisk at the end.
We also add a warning log starting with "Closing on ssl error without
passsite match" to report sites that can be added as passsite, which is
expected to help in writing PassSite rules.
Also, we now set dstaddr_str earlier in conn handling, so we can print
it in debug logs. This also helps in IDLE and EXPIRED conn logs.
2021-09-04 20:28:23 +00:00
|
|
|
#PassSite .fbcdn.net* soner android
|
2019-07-13 08:34:23 +00:00
|
|
|
|
2021-09-23 19:03:32 +00:00
|
|
|
# Load configuration from an include file
|
|
|
|
# Recursive include files are not allowed. The Include option cannot be used in
|
|
|
|
# include files.
|
|
|
|
#Include /etc/sslproxy/filterrules.conf
|
|
|
|
#Include /etc/sslproxy/proxyspecs.conf
|
|
|
|
|
2021-09-19 19:57:58 +00:00
|
|
|
# Define macro to be used in filtering rules. Macro names must start with a $
|
|
|
|
# char. The macro name must be followed by words separated with spaces.
|
2021-09-23 19:03:32 +00:00
|
|
|
# Recursive macro definitions are not allowed.
|
2021-09-19 19:57:58 +00:00
|
|
|
#Define $macro value1 value2
|
|
|
|
|
2021-10-29 19:49:18 +00:00
|
|
|
# One line filtering rules
|
2021-09-19 19:57:58 +00:00
|
|
|
#(Divert|Split|Pass|Block|Match)
|
|
|
|
# ([from (
|
2021-10-05 20:00:17 +00:00
|
|
|
# user (username[*]|$macro|*) [desc (desc[*]|$macro|*)]|
|
|
|
|
# desc (desc[*]|$macro|*)|
|
2021-10-01 19:07:25 +00:00
|
|
|
# ip (clientip[*]|$macro|*)|
|
2021-09-19 19:57:58 +00:00
|
|
|
# *)]
|
|
|
|
# [to (
|
2021-10-07 19:21:27 +00:00
|
|
|
# (sni (servername[*]|$macro|*)|
|
|
|
|
# cn (commonname[*]|$macro|*)|
|
|
|
|
# host (host[*]|$macro|*)|
|
|
|
|
# uri (uri[*]|$macro|*)|
|
|
|
|
# ip (serverip[*]|$macro|*)) [port (serverport[*]|$macro|*)]|
|
2021-09-25 22:51:13 +00:00
|
|
|
# port (serverport[*]|$macro|*)|
|
2021-09-19 19:57:58 +00:00
|
|
|
# *)]
|
|
|
|
# [log ([[!]connect] [[!]master] [[!]cert]
|
2021-10-03 10:08:27 +00:00
|
|
|
# [[!]content] [[!]pcap] [[!]mirror] [$macro]|[!]*)]
|
2021-10-10 20:42:23 +00:00
|
|
|
# |*) [# comment]
|
2021-09-13 19:36:25 +00:00
|
|
|
#
|
|
|
|
# PassSite example.com is equivalent to the following two Pass rules:
|
|
|
|
# Pass to sni example.com
|
|
|
|
# Pass to cn example.com
|
|
|
|
#
|
|
|
|
#Divert from ip 192.168.0.1 to sni example.com
|
2021-09-15 20:41:11 +00:00
|
|
|
#Split from user soner to sni example.com log content
|
2021-09-13 19:36:25 +00:00
|
|
|
#Pass from user * desc android to sni *.google.com
|
|
|
|
#Block from user soner desc android to cn .fbcdn.net*
|
2021-08-28 18:54:15 +00:00
|
|
|
|
2021-10-29 19:49:18 +00:00
|
|
|
# Structured filtering rules
|
|
|
|
#FilterRule {
|
|
|
|
# Action (Divert|Split|Pass|Block|Match)
|
|
|
|
#
|
|
|
|
# # From
|
|
|
|
# User (username[*]|$macro|*) # inline
|
|
|
|
# Desc (desc[*]|$macro|*) # comments
|
|
|
|
# SrcIp (clientip[*]|$macro|*) # allowed
|
|
|
|
#
|
|
|
|
# # To
|
|
|
|
# SNI (servername[*]|$macro|*)
|
|
|
|
# CN (commonname[*]|$macro|*)
|
|
|
|
# Host (host[*]|$macro|*)
|
|
|
|
# URI (uri[*]|$macro|*)
|
|
|
|
# DstIp (serverip[*]|$macro|*)
|
|
|
|
# DstPort (serverport[*]|$macro|*)
|
|
|
|
#
|
2021-11-01 17:48:24 +00:00
|
|
|
# # Multiple Log lines allowed
|
2021-11-13 07:57:16 +00:00
|
|
|
# Log ([[!]connect] [[!]master] [[!]cert]
|
|
|
|
# [[!]content] [[!]pcap] [[!]mirror] [$macro]|[!]*)
|
2021-10-29 19:49:18 +00:00
|
|
|
#
|
2021-10-30 13:27:13 +00:00
|
|
|
# ReconnectSSL (yes|no)
|
|
|
|
#
|
2021-10-29 19:49:18 +00:00
|
|
|
# # Connection options
|
|
|
|
# DenyOCSP (yes|no)
|
|
|
|
# Passthrough (yes|no)
|
|
|
|
# CACert ca.crt
|
|
|
|
# CAKey ca.key
|
|
|
|
# ClientCert client.crt
|
|
|
|
# ClientKey client.key
|
|
|
|
# CAChain chain.crt
|
|
|
|
# LeafCRLURL http://example.com/example.crl
|
|
|
|
# DHGroupParams dh.pem
|
|
|
|
# ECDHCurve prime256v1
|
|
|
|
# SSLCompression (yes|no)
|
|
|
|
# ForceSSLProto (ssl2|ssl3|tls10|tls11|tls12|tls13)
|
|
|
|
# DisableSSLProto (ssl2|ssl3|tls10|tls11|tls12|tls13)
|
|
|
|
# EnableSSLProto (ssl2|ssl3|tls10|tls11|tls12|tls13)
|
|
|
|
# MinSSLProto (ssl2|ssl3|tls10|tls11|tls12|tls13)
|
|
|
|
# MaxSSLProto (ssl2|ssl3|tls10|tls11|tls12|tls13)
|
|
|
|
# Ciphers MEDIUM:HIGH
|
|
|
|
# CipherSuites TLS_AES_256_GCM_SHA384:TLS_CHACHA20_POLY1305_SHA256:TLS_AES_128_GCM_SHA256
|
|
|
|
# RemoveHTTPAcceptEncoding (yes|no)
|
|
|
|
# RemoveHTTPReferer (yes|no)
|
|
|
|
# VerifyPeer (yes|no)
|
|
|
|
# AllowWrongHost (yes|no)
|
|
|
|
# UserAuth (yes|no)
|
|
|
|
# UserTimeout 300
|
|
|
|
# UserAuthURL https://192.168.0.1/userdblogin.php
|
|
|
|
# ValidateProto (yes|no)
|
|
|
|
# MaxHTTPHeaderSize 8192
|
|
|
|
#}
|
|
|
|
|
2019-07-13 08:34:23 +00:00
|
|
|
# One line proxy specifications
|
2019-07-22 08:24:53 +00:00
|
|
|
# type listenaddr+port up:utmport [ua:utmaddr ra:returnaddr]
|
2019-07-13 08:34:23 +00:00
|
|
|
#ProxySpec https 127.0.0.1 8443 up:8080 [ua:127.0.0.1 ra:127.0.0.1]
|
|
|
|
ProxySpec https 127.0.0.1 8443 up:8080
|
|
|
|
ProxySpec pop3s 127.0.0.1 8995 up:8110
|
|
|
|
ProxySpec smtps 127.0.0.1 8465 up:9199
|
2021-08-28 18:54:15 +00:00
|
|
|
# split mode
|
|
|
|
ProxySpec http 127.0.0.1 8081
|
2019-07-13 08:34:23 +00:00
|
|
|
|
2019-07-22 08:24:53 +00:00
|
|
|
# Structured proxy specifications
|
2019-07-13 08:34:23 +00:00
|
|
|
# Global config is cloned into all proxyspecs first
|
|
|
|
# Each proxyspec can override its cloned global config
|
|
|
|
ProxySpec {
|
|
|
|
Proto https
|
|
|
|
|
|
|
|
# Listen address
|
|
|
|
Addr 127.0.0.1
|
|
|
|
# Listen port
|
|
|
|
Port 8444
|
|
|
|
|
2021-08-28 18:54:15 +00:00
|
|
|
# Set divert or split mode for proxyspec
|
|
|
|
#Divert yes
|
|
|
|
|
2019-07-13 08:34:23 +00:00
|
|
|
# Divert address defaults to 127.0.0.1, if not specified
|
|
|
|
# Equivalent to ua
|
|
|
|
DivertAddr 127.0.0.1
|
|
|
|
# Equivalent to up
|
|
|
|
DivertPort 8080
|
|
|
|
|
|
|
|
# Return address defaults to 127.0.0.1, if not specified
|
|
|
|
# Equivalent to ra
|
|
|
|
ReturnAddr 127.0.0.1
|
|
|
|
|
|
|
|
# Specify nat, sni, or target config
|
|
|
|
#NatEngine netfilter
|
|
|
|
#SNIPort 443
|
|
|
|
#TargetAddr 127.0.0.1
|
|
|
|
#TargetPort 9443
|
|
|
|
|
|
|
|
DenyOCSP yes
|
|
|
|
Passthrough no
|
|
|
|
|
|
|
|
# Proxyspec specific SSL/TLS config, overrides the cloned global config
|
|
|
|
#CACert ca.crt
|
|
|
|
#CAKey ca.key
|
|
|
|
#ClientCert client.crt
|
|
|
|
#ClientKey client.key
|
|
|
|
#CAChain chain.crt
|
|
|
|
#DHGroupParams dh.pem
|
|
|
|
#ECDHCurve prime256v1
|
|
|
|
#SSLCompression no
|
|
|
|
#ForceSSLProto tls12
|
|
|
|
#DisableSSLProto tls10
|
2021-10-29 18:21:19 +00:00
|
|
|
#EnableSSLProto tls10
|
2019-07-30 18:29:46 +00:00
|
|
|
#MinSSLProto tls10
|
2020-07-25 08:35:52 +00:00
|
|
|
#MaxSSLProto tls13
|
2019-07-13 08:34:23 +00:00
|
|
|
#Ciphers MEDIUM:HIGH
|
2020-06-27 20:39:41 +00:00
|
|
|
#CipherSuites TLS_AES_256_GCM_SHA384:TLS_CHACHA20_POLY1305_SHA256:TLS_AES_128_GCM_SHA256
|
2019-07-13 08:34:23 +00:00
|
|
|
|
|
|
|
RemoveHTTPAcceptEncoding no
|
|
|
|
RemoveHTTPReferer yes
|
|
|
|
VerifyPeer yes
|
2020-11-12 07:59:53 +00:00
|
|
|
|
2019-07-13 08:34:23 +00:00
|
|
|
UserAuth yes
|
|
|
|
UserTimeout 300
|
|
|
|
UserAuthURL https://192.168.0.1/userdblogin.php
|
2020-11-12 07:59:53 +00:00
|
|
|
# Comma separated list of users diverted by this proxyspec, overrides the cloned global list
|
|
|
|
DivertUsers utmfw
|
|
|
|
# Comma separated list of users passed through by this proxyspec, overrides the cloned global list
|
|
|
|
PassUsers admin
|
|
|
|
|
2019-07-13 08:34:23 +00:00
|
|
|
ValidateProto yes
|
2019-08-07 09:54:32 +00:00
|
|
|
# Proxyspec specific passsites are appended to the cloned global passsites
|
2019-07-13 08:34:23 +00:00
|
|
|
PassSite example2.com
|
2021-09-19 19:57:58 +00:00
|
|
|
|
2021-09-23 19:03:32 +00:00
|
|
|
Define $admins soner admin
|
|
|
|
Pass from user $admins desc android to cn .fbcdn.net*
|
2021-10-29 19:49:18 +00:00
|
|
|
# Structured version of one line filtering rule above
|
|
|
|
FilterRule {
|
|
|
|
Action Pass
|
|
|
|
User $admins
|
|
|
|
Desc android
|
|
|
|
CN .fbcdn.net*
|
|
|
|
}
|
2019-07-13 08:34:23 +00:00
|
|
|
}
|