summaryrefslogtreecommitdiff
path: root/doc
diff options
context:
space:
mode:
Diffstat (limited to 'doc')
-rw-r--r--doc/TUNING60
-rw-r--r--doc/tor-resolve.1.txt5
-rw-r--r--doc/tor.1.txt26
3 files changed, 87 insertions, 4 deletions
diff --git a/doc/TUNING b/doc/TUNING
index a4bf386dd6..90bd120aa1 100644
--- a/doc/TUNING
+++ b/doc/TUNING
@@ -35,6 +35,66 @@ when it launches tor service (see launchd.plist(5) manpage). Also,
kern.ipc.maxsockets is determined dynamically by the system and thus is
read-only on OS X.
+OpenBSD
+-------
+
+For recent versions of OpenBSD (5.5 and 5.6, and probably older releases
+as well), the maximum number of file descriptors that can be opened is
+7030:
+
+http://unix.stackexchange.com/questions/104929/does-openbsd-have-a-limit-to-the-number-of-file-descriptors/104948#104948
+
+The maximum number of file descriptors that an OpenBSD machine can have
+open is stored in the sysctl variable kern.maxfiles. This value defaults
+to 7030 - to verify this, run sysctl kern.maxfiles.
+
+To immediately change a running system's file descriptor limit to, for
+example, 20,000 files, run sudo sysctl kern.maxfiles=20000. All sysctl
+variables are reset upon reboot using defaults and /etc/sysctl.conf, so
+to make your change permanent you must add the line kern.maxfiles=20000
+to /etc/sysctl.conf.
+
+One can also change a maximum number of allowed file descriptors for Tor
+daemon alone by editing /etc/rc.d/tor and adding the following lines:
+
+tor:\
+ :openfiles-max=8192:\
+ :tc=daemon:
+
+However, there are stricter limits set on users. This is a security
+feature intended to prevent one user from choking out others by opening
+all possible file descriptors.
+
+The stricter limits are set in /etc/login.conf. This config file sets
+resource access rules for user classes. You should be running
+Tor as a non-privileged daemon user '_tor', which belongs to the 'daemon'
+class. It will therefore be subject to the 'default' and 'daemon' rules.
+There are two relevant rules: openfiles-cur and openfiles-max. The prior
+is the initial limit upon login - the soft limit. The latter is the maximum
+limit that can be set using 'ulimit -n' or setrlimit() without editing
+/etc/login.conf and rebooting. This is known as the hard limit.
+
+Without editing /etc/login.conf, daemon-owned processes have
+soft limit of 512 open files and a hard limit of 1024 open files.
+Tor can increase the soft limit as needed, so you will therefore
+eventually get warnings about running out of available file descriptors
+once Tor reaches ~1024 open files.
+
+To increase the hard limit, add the following line to the daemon class
+rules in /etc/login.conf:
+
+tor:\
+ :openfiles-max=8192:\
+ :tc=daemon:
+
+Upon restarting the machine, Tor will be able to open up to 6500 file
+descriptors.
+
+Be aware that, by doing this, you are bypassing a security and stability
+feature of the OS. If you are running your relay on a weak or old system,
+watch your system load to ensure that it can handle this many open files.
+Also, Tor may interfere with any other programs that open many files.
+
Disclaimer
----------
diff --git a/doc/tor-resolve.1.txt b/doc/tor-resolve.1.txt
index 341d302244..30e16d5daa 100644
--- a/doc/tor-resolve.1.txt
+++ b/doc/tor-resolve.1.txt
@@ -14,7 +14,7 @@ tor-resolve - resolve a hostname to an IP address via tor
SYNOPSIS
--------
-**tor-resolve** [-4|-5] [-v] [-x] __hostname__ [__sockshost__[:__socksport__]]
+**tor-resolve** [-4|-5] [-v] [-x] [-p __socksport__] __hostname__ [__sockshost__[:__socksport__]]
DESCRIPTION
-----------
@@ -40,6 +40,9 @@ OPTIONS
Use the SOCKS4a protocol rather than the default SOCKS5 protocol. Doesn't
support reverse DNS.
+**-p** __socksport__::
+ Override the default SOCKS port without setting the hostname.
+
SEE ALSO
--------
**tor**(1), **torify**(1). +
diff --git a/doc/tor.1.txt b/doc/tor.1.txt
index 9b491f7635..99ab8cb0b3 100644
--- a/doc/tor.1.txt
+++ b/doc/tor.1.txt
@@ -273,7 +273,7 @@ GENERAL OPTIONS
all sockets will be set to this limit. Must be a value between 2048 and
262144, in 1024 byte increments. Default of 8192 is recommended.
-[[ControlPort]] **ControlPort** __PORT__|**auto**::
+[[ControlPort]] **ControlPort** __PORT__|**unix:**__path__|**auto**::
If set, Tor will accept connections on this port and allow those
connections to control the Tor process using the Tor Control Protocol
(described in control-spec.txt). Note: unless you also specify one or
@@ -294,7 +294,7 @@ GENERAL OPTIONS
[[ControlSocket]] **ControlSocket** __Path__::
Like ControlPort, but listens on a Unix domain socket, rather than a TCP
- socket. (Unix and Unix-like systems only.)
+ socket. '0' disables ControlSocket (Unix and Unix-like systems only.)
[[ControlSocketsGroupWritable]] **ControlSocketsGroupWritable** **0**|**1**::
If this option is set to 0, don't allow the filesystem group to read and
@@ -483,6 +483,11 @@ GENERAL OPTIONS
in accordance to RFC 1929. Both username and password must be between 1 and
255 characters.
+[[SocksSocketsGroupWritable]] **SocksSocketsGroupWritable** **0**|**1**::
+ If this option is set to 0, don't allow the filesystem group to read and
+ write unix sockets (e.g. SocksSocket). If the option is set to 1, make
+ the SocksSocket socket readable and writable by the default GID. (Default: 0)
+
[[KeepalivePeriod]] **KeepalivePeriod** __NUM__::
To keep firewalls from expiring connections, send a padding keepalive cell
every NUM seconds on open connections that are in use. If the connection
@@ -948,7 +953,7 @@ 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]] **SOCKSPort** \['address':]__port__|**auto** [_flags_] [_isolation flags_]::
+[[SOCKSPort]] **SOCKSPort** \['address':]__port__|**unix:**__path__|**auto** [_flags_] [_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
@@ -2090,6 +2095,12 @@ The following options are used to configure a hidden service.
found in the hostname file. Clients need to put this authorization data in
their configuration file using **HidServAuth**.
+[[HiddenServiceAllowUnknownPorts]] **HiddenServiceAllowUnknownPorts** **0**|**1**::
+ If set to 1, then connections to unrecognized ports do not cause the
+ current hidden service to close rendezvous circuits. (Setting this to 0 is
+ not an authorization mechanism; it is instead meant to be a mild
+ inconvenience to port-scanners.) (Default: 0)
+
[[RendPostPeriod]] **RendPostPeriod** __N__ **seconds**|**minutes**|**hours**|**days**|**weeks**::
Every time the specified period elapses, Tor uploads any rendezvous
service descriptors to the directory servers. This information is also
@@ -2251,6 +2262,15 @@ The following options are used for running a testing Tor network.
In order for this option to have any effect, **TestingTorNetwork**
has to be set.
+[[TestingDirAuthVoteHSDir]] **TestingDirAuthVoteHSDir** __node__,__node__,__...__::
+ A list of identity fingerprints and country codes and
+ address patterns of nodes to vote HSDir for regardless of their
+ uptime and ORPort connectivity. See the **ExcludeNodes** option for more
+ information on how to specify nodes.
+ +
+ In order for this option to have any effect, **TestingTorNetwork**
+ and **VoteOnHidServDirectoriesV2** both have to be set.
+
[[TestingEnableConnBwEvent]] **TestingEnableConnBwEvent** **0**|**1**::
If this option is set, then Tor controllers may register for CONN_BW
events. Changing this requires that **TestingTorNetwork** is set.