Fix issues found by Coverity.
[tinc] / doc / tincd.8.in
1 .Dd 2011-01-02
2 .Dt TINCD 8
3 .\" Manual page created by:
4 .\" Ivo Timmermans
5 .\" Guus Sliepen <guus@tinc-vpn.org>
6 .Sh NAME
7 .Nm tincd
8 .Nd tinc VPN daemon
9 .Sh SYNOPSIS
10 .Nm
11 .Op Fl cdDkKnoLRU
12 .Op Fl -config Ns = Ns Ar DIR
13 .Op Fl -no-detach
14 .Op Fl -debug Ns Op = Ns Ar LEVEL
15 .Op Fl -kill Ns Op = Ns Ar SIGNAL
16 .Op Fl -net Ns = Ns Ar NETNAME
17 .Op Fl -generate-keys Ns Op = Ns Ar BITS
18 .Op Fl -option Ns = Ns Ar [HOST.]KEY=VALUE
19 .Op Fl -mlock
20 .Op Fl -logfile Ns Op = Ns Ar FILE
21 .Op Fl -pidfile Ns = Ns Ar FILE
22 .Op Fl -bypass-security
23 .Op Fl -chroot
24 .Op Fl -user Ns = Ns Ar USER
25 .Op Fl -help
26 .Op Fl -version
27 .Sh DESCRIPTION
28 This is the daemon of tinc, a secure virtual private network (VPN) project.
29 When started,
30 .Nm
31 will read it's configuration file to determine what virtual subnets it has to serve
32 and to what other tinc daemons it should connect.
33 It will connect to the ethertap or tun/tap device
34 and set up a socket for incoming connections.
35 Optionally a script will be executed to further configure the virtual device.
36 If that succeeds,
37 it will detach from the controlling terminal and continue in the background,
38 accepting and setting up connections to other tinc daemons
39 that are part of the virtual private network.
40 Under Windows (not Cygwin) tinc will install itself as a service,
41 which will be restarted automatically after reboots.
42 .Sh OPTIONS
43 .Bl -tag -width indent
44 .It Fl c, -config Ns = Ns Ar DIR
45 Read configuration files from
46 .Ar DIR
47 instead of
48 .Pa @sysconfdir@/tinc/ .
49 .It Fl D, -no-detach
50 Don't fork and detach.
51 This will also disable the automatic restart mechanism for fatal errors.
52 If not mentioned otherwise, this will show log messages on the standard error output.
53 .It Fl d, -debug Ns Op = Ns Ar LEVEL
54 Increase debug level or set it to
55 .Ar LEVEL
56 (see below).
57 .It Fl k, -kill Ns Op = Ns Ar SIGNAL
58 Attempt to kill a running
59 .Nm
60 (optionally with the specified
61 .Ar SIGNAL
62 instead of SIGTERM) and exit.
63 Under Windows (not Cygwin) the optional argument is ignored,
64 the service will always be stopped and removed.
65 .It Fl n, -net Ns = Ns Ar NETNAME
66 Connect to net
67 .Ar NETNAME .
68 This will let tinc read all configuration files from
69 .Pa @sysconfdir@/tinc/ Ar NETNAME .
70 Specifying
71 .Li .
72 for
73 .Ar NETNAME
74 is the same as not specifying any
75 .Ar NETNAME .
76 .It Fl K, -generate-keys Ns Op = Ns Ar BITS
77 Generate public/private RSA keypair and exit.
78 If
79 .Ar BITS
80 is omitted, the default length will be 2048 bits.
81 When saving keys to existing files, tinc will not delete the old keys,
82 you have to remove them manually.
83 .It Fl o, -option Ns = Ns Ar [HOST.]KEY=VALUE
84 Without specifying a
85 .Ar HOST ,
86 this will set server configuration variable
87 .Ar KEY 
88 to
89 .Ar VALUE .
90 If specified as
91 .Ar HOST.KEY=VALUE ,
92 this will set the host configuration variable 
93 .Ar KEY
94 of the host named
95 .Ar HOST
96 to
97 .Ar VALUE .
98 This option can be used more than once to specify multiple configuration variables.
99 .It Fl L, -mlock
100 Lock tinc into main memory.
101 This will prevent sensitive data like shared private keys to be written to the system swap files/partitions.
102 .It Fl -logfile Ns Op = Ns Ar FILE
103 Write log entries to a file instead of to the system logging facility.
104 If
105 .Ar FILE
106 is omitted, the default is
107 .Pa @localstatedir@/log/tinc. Ns Ar NETNAME Ns Pa .log.
108 .It Fl -pidfile Ns = Ns Ar FILE
109 Write PID to
110 .Ar FILE
111 instead of
112 .Pa @localstatedir@/run/tinc. Ns Ar NETNAME Ns Pa .pid.
113 Under Windows this option will be ignored.
114 .It Fl -bypass-security
115 Disables encryption and authentication of the meta protocol.
116 Only useful for debugging.
117 .It Fl R, -chroot
118 With this option tinc chroots into the directory where network
119 config is located (@sysconfdir@/tinc/NETNAME if -n option is used,
120 or to the directory specified with -c option) after initialization.
121 .It Fl U, -user Ns = Ns Ar USER
122 setuid to the specified
123 .Ar USER
124 after initialization.
125 .It Fl -help
126 Display short list of options.
127 .It Fl -version
128 Output version information and exit.
129 .El
130 .Sh SIGNALS
131 .Bl -tag -width indent
132 .It ALRM
133 Forces
134 .Nm
135 to try to connect to all uplinks immediately.
136 Usually
137 .Nm
138 attempts to do this itself,
139 but increases the time it waits between the attempts each time it failed,
140 and if
141 .Nm
142 didn't succeed to connect to an uplink the first time after it started,
143 it defaults to the maximum time of 15 minutes.
144 .It HUP
145 Partially rereads configuration files.
146 Connections to hosts whose host config file are removed are closed.
147 New outgoing connections specified in
148 .Pa tinc.conf
149 will be made.
150 If the
151 .Fl -logfile
152 option is used, this will also close and reopen the log file,
153 useful when log rotation is used.
154 .It INT
155 Temporarily increases debug level to 5.
156 Send this signal again to revert to the original level.
157 .It USR1
158 Dumps the connection list to syslog.
159 .It USR2
160 Dumps virtual network device statistics, all known nodes, edges and subnets to syslog.
161 .It WINCH
162 Purges all information remembered about unreachable nodes.
163 .El
164 .Sh DEBUG LEVELS
165 The tinc daemon can send a lot of messages to the syslog.
166 The higher the debug level,
167 the more messages it will log.
168 Each level inherits all messages of the previous level:
169 .Bl -tag -width indent
170 .It 0
171 This will log a message indicating
172 .Nm
173 has started along with a version number.
174 It will also log any serious error.
175 .It 1
176 This will log all connections that are made with other tinc daemons.
177 .It 2
178 This will log status and error messages from scripts and other tinc daemons.
179 .It 3
180 This will log all requests that are exchanged with other tinc daemons. These include
181 authentication, key exchange and connection list updates.
182 .It 4
183 This will log a copy of everything received on the meta socket.
184 .It 5
185 This will log all network traffic over the virtual private network.
186 .El
187 .Sh FILES
188 .Bl -tag -width indent
189 .It Pa @sysconfdir@/tinc/
190 Directory containing the configuration files tinc uses.
191 For more information, see
192 .Xr tinc.conf 5 .
193 .It Pa @localstatedir@/run/tinc. Ns Ar NETNAME Ns Pa .pid
194 The PID of the currently running
195 .Nm
196 is stored in this file.
197 .El
198 .Sh BUGS
199 The
200 .Va BindToInterface
201 option may not work correctly.
202 .Pp
203 .Sy The cryptography in tinc is not well tested yet. Use it at your own risk!
204 .Pp
205 If you find any bugs, report them to tinc@tinc-vpn.org.
206 .Sh TODO
207 A lot, especially security auditing.
208 .Sh SEE ALSO
209 .Xr tinc.conf 5 ,
210 .Pa http://www.tinc-vpn.org/ ,
211 .Pa http://www.cabal.org/ .
212 .Pp
213 The full documentation for tinc is maintained as a Texinfo manual.
214 If the info and tinc programs are properly installed at your site,
215 the command
216 .Ic info tinc
217 should give you access to the complete manual.
218 .Pp
219 tinc comes with ABSOLUTELY NO WARRANTY.
220 This is free software, and you are welcome to redistribute it under certain conditions;
221 see the file COPYING for details.
222 .Sh AUTHORS
223 .An "Ivo Timmermans"
224 .An "Guus Sliepen" Aq guus@tinc-vpn.org
225 .Pp
226 And thanks to many others for their contributions to tinc!