Commit 891ccd3c authored by Nick Mathewson's avatar Nick Mathewson 🤹
Browse files

Manpage updates for proposal 171 (isolated streams)

parent 172f8acb
Loading
Loading
Loading
Loading
+80 −25
Original line number Diff line number Diff line
@@ -464,7 +464,7 @@ CLIENT OPTIONS
--------------

The following options are useful only for clients (that is, if
**SocksPort** is non-zero):
**SocksPort**, **TransPort**, **DNSPort**, or **NATDPort** is non-zero):

**AllowInvalidNodes** **entry**|**exit**|**middle**|**introduction**|**rendezvous**|**...**::
    If some Tor servers are obviously not working right, the directory
@@ -682,17 +682,50 @@ The following options are useful only for clients (that is, if
    the same circuit. Currently, two addresses are "too close" if they lie in
    the same /16 range. (Default: 1)

**SocksPort** __PORT__|**auto**::
    Advertise this port to listen for connections from Socks-speaking
**SOCKSPort** \['address':]__port__|**auto** [_isolation flags_]::
    Open this port to listen for connections from SOCKS-speaking
    applications. Set this to 0 if you don't want to allow application
    connections via SOCKS. Set it to "auto" to have Tor pick a port for
    you. (Default: 9050)

**SocksListenAddress** __IP__[:__PORT__]::
    you. This directive can be specified multiple times to bind
    to multiple addresses/ports. (Default: 9050) +
 +
    The _isolation flags_ arguments give Tor rules for which streams
    received on this SOCKSPort are allowed to share circuits with one
    another.  Recognized isolation flags are:
    **IsolateClientAddr**;;
        Don't share a circuits with streams from a different
        client address.  (On by default and strongly recommended;
        you can disable it with **NoIsolateClientAddr**.)
    **IsolateSOCKSAuth**;;
        Don't share a circuits with streams for which different
        SOCKS authentication was provided. (On by default;
        you can disable it with **NoIsolateSOCKSAuth**.)
        [NOT YET IMPLEMENTED.]
    **IsolateClientProtocol**;;
        Don't share circuits with streams using a different protocol.
        (SOCKS 4, SOCKS 5, TransPort connections, NATDPort connections,
        and DNSPort requests are all considered to be different protocols.)
    **IsolateDestPort**;;
        Don't share a circuits with streams targetting a different
        destination port.
    **IsolateDestAddr**;;
        Don't share a circuits with streams targetting a different
        destination address.
    **SessionGroup=**__INT__;;
        If no other isolation rules would prevent it, allow streams
        on this port to share circuits with streams from every other
        port with the same session group.  (By default, streams received
        on different ports are always isolated from one another.)

**SOCKSListenAddress** __IP__[:__PORT__]::
    Bind to this address to listen for connections from Socks-speaking
    applications. (Default: 127.0.0.1) You can also specify a port (e.g.
    192.168.0.1:9100). This directive can be specified multiple times to bind
    to multiple addresses/ports.
    to multiple addresses/ports.  (DEPRECATED: As of 0.2.3.x-alpha, you can
    now use multiple SOCKSPort entries, and provide addresses for SOCKSPort
    entries, so SOCKSListenAddress no longer has a purpose.  For backward
    compatibility, SOCKSListenAddress is only allowed when SOCKSPort is just
    a port number.)

**SocksPolicy** __policy__,__policy__,__...__::
    Set an entrance policy for this server, to limit who can connect to the
@@ -795,28 +828,44 @@ The following options are useful only for clients (that is, if
    operating as a relay, and it will never use the public key step if it
    doesn't yet know the onion key of the first hop. (Default: 1)

**TransPort** __PORT__|**auto**::
    If non-zero, enables transparent proxy support on __PORT__ (by convention,
    9040). Requires OS support for transparent proxies, such as BSDs' pf or
**TransPort**  \['address':]__port__|**auto** [_isolation flags_]::
    Open this port to listen for transparent proxy connections.  Set this to
    0 if you don't want to allow transparent proxy connections.  Set the port
    to "auto" to have Tor pick a port for you. This directive can be
    specified multiple times to bind to multiple addresses/ports.  See 
    SOCKSPort for an explanation of isolation flags. +
 +
    TransPort requires OS support for transparent proxies, such as BSDs' pf or
    Linux's IPTables. If you're planning to use Tor as a transparent proxy for
    a network, you'll want to examine and change VirtualAddrNetwork from the
    default setting. You'll also want to set the TransListenAddress option for
    the network you'd like to proxy.  Set it to "auto" to have Tor pick a
    port for you.  (Default: 0).
    the network you'd like to proxy. (Default: 0).

**TransListenAddress** __IP__[:__PORT__]::
    Bind to this address to listen for transparent proxy connections. (Default:
    127.0.0.1). This is useful for exporting a transparent proxy server to an
    entire network.

**NATDPort** __PORT__|**auto**::
    Allow old versions of ipfw (as included in old versions of FreeBSD, etc.)
    to send connections through Tor using the NATD protocol. This option is
    only for people who cannot use TransPort.  Set it to "auto" to have Tor
    pick a port for you. (Default: 0)
    entire network. (DEPRECATED: As of 0.2.3.x-alpha, you can
    now use multiple TransPort entries, and provide addresses for TransPort
    entries, so TransListenAddress no longer has a purpose.  For backward
    compatibility, TransListenAddress is only allowed when TransPort is just
    a port number.)

**NATDPort** \['address':]__port__|**auto** [_isolation flags_]::
    Open this port to listen for connections from old versions of ipfw (as
    included in old versions of FreeBSD, etc) using the NATD protocol.
    Use 0 if you don't want to allow NATD connections.  Set the port
    to "auto" to have Tor pick a port for you. This directive can be
    specified multiple times to bind to multiple addresses/ports.  See
    SOCKSPort for an explanation of isolation flags. +
 +
    This option is only for people who cannot use TransPort. (Default: 0)

**NATDListenAddress** __IP__[:__PORT__]::
    Bind to this address to listen for NATD connections. (Default: 127.0.0.1).
    Bind to this address to listen for NATD connections. (DEPRECATED: As of
    0.2.3.x-alpha, you can now use multiple NATDPort entries, and provide
    addresses for NATDPort entries, so NATDListenAddress no longer has a
    purpose.  For backward compatibility, NATDListenAddress is only allowed
    when NATDPort is just a port number.)

**AutomapHostsOnResolve** **0**|**1**::
    When this option is enabled, and we get a request to resolve an address
@@ -829,13 +878,19 @@ The following options are useful only for clients (that is, if
    A comma-separated list of suffixes to use with **AutomapHostsOnResolve**.
    The "." suffix is equivalent to "all addresses." (Default: .exit,.onion).

**DNSPort** __PORT__|**auto**::
    If non-zero, Tor listens for UDP DNS requests on this port and resolves
    them anonymously.  Set it to "auto" to have Tor pick a port for
    you. (Default: 0).
**DNSPort** \['address':]__port__|**auto** [_isolation flags_]::
    If non-zero, open this port to listen for UDP DNS requests, and resolve
    them anonymously.  Set the port to "auto" to have Tor pick a port for
    you. This directive can be specified multiple times to bind to multiple
    addresses/ports. See SOCKSPort for an explanation of isolation
    flags. (Default: 0).

**DNSListenAddress** __IP__[:__PORT__]::
    Bind to this address to listen for DNS connections. (Default: 127.0.0.1).
    Bind to this address to listen for DNS connections. (DEPRECATED: As of
    0.2.3.x-alpha, you can now use multiple DNSPort entries, and provide
    addresses for DNSPort entries, so DNSListenAddress no longer has a
    purpose.  For backward compatibility, DNSListenAddress is only allowed
    when DNSPort is just a port number.)

**ClientDNSRejectInternalAddresses** **0**|**1**::
    If true, Tor does not believe any anonymously retrieved DNS answer that