Allow extra options to be passed to "tinc restart" again.
[tinc] / doc / tinc.8.in
1 .Dd 2013-01-15
2 .Dt TINCCTL 8
3 .\" Manual page created by:
4 .\" Scott Lamb
5 .Sh NAME
6 .Nm tinc
7 .Nd tinc VPN control
8 .Sh SYNOPSIS
9 .Nm
10 .Op Fl cn
11 .Op Fl -config Ns = Ns Ar DIR
12 .Op Fl -net Ns = Ns Ar NETNAME
13 .Op Fl -pidfile Ns = Ns Ar FILENAME
14 .Op Fl -help
15 .Op Fl -version
16 .Ar COMMAND
17 .Sh DESCRIPTION
18 This is the control program of tinc, a secure virtual private network (VPN)
19 project.
20 .Nm
21 communicates with
22 .Xr tincd 8
23 to alter and inspect the running VPN's state.
24 .Sh OPTIONS
25 .Bl -tag -width indent
26 .It Fl n, -net Ns = Ns Ar NETNAME
27 Communicate with tincd(8) connected with
28 .Ar NETNAME .
29 .It Fl -pidfile Ns = Ns Ar FILENAME
30 Use the cookie from
31 .Ar FILENAME
32 to authenticate with a running tinc daemon.
33 If unspecified, the default is
34 .Pa @localstatedir@/run/tinc. Ns Ar NETNAME Ns Pa .pid.
35 .It Fl -help
36 Display short list of options.
37 .It Fl -version
38 Output version information and exit.
39 .El
40 .Sh ENVIRONMENT VARIABLES
41 .Bl -tag -width indent
42 .It Ev NETNAME
43 If no netname is specified on the command line with the
44 .Fl n
45 option, the value of this environment variable is used.
46 .El
47 .Sh COMMANDS
48 .Bl -tag -width indent
49 .It init Op Ar name
50 Create initial configuration files and RSA and ECDSA keypairs with default length.
51 If no
52 .Ar name
53 for this node is given, it will be asked for.
54 .It get Ar variable
55 Print the current value of configuration variable
56 .Ar variable .
57 If more than one variable with the same name exists,
58 the value of each of them will be printed on a separate line.
59 .It set Ar variable Ar value
60 Set configuration variable
61 .Ar variable
62 to the given
63 .Ar value .
64 All previously existing configuration variables with the same name are removed.
65 To set a variable for a specific host, use the notation
66 .Ar host Ns Li . Ns Ar variable .
67 .It add Ar variable Ar value
68 As above, but without removing any previously existing configuration variables.
69 .It del Ar variable Op Ar value
70 Remove configuration variables with the same name and
71 .Ar value .
72 If no
73 .Ar value
74 is given, all configuration variables with the same name will be removed.
75 .It edit Ar filename
76 Start an editor for the given configuration file.
77 You do not need to specify the full path to the file.
78 .It export
79 Export the host configuration file of the local node to standard output.
80 .It export-all
81 Export all host configuration files to standard output.
82 .It import Op Fl -force
83 Import host configuration data generated by the
84 .Nm
85 export command from standard input.
86 Already existing host configuration files are not overwritten unless the option
87 .Fl -force
88 is used.
89 .It exchange Op Fl -force
90 The same as export followed by import.
91 .It exchange-all Op Fl -force
92 The same as export-all followed by import.
93 .It invite Ar name
94 Prepares an invitation for a new node with the given
95 .Ar name ,
96 and prints a short invitation URL that can be used with the join command.
97 .It join Op Ar URL
98 Join an existing VPN using an invitation URL created using the invite command.
99 If no
100 .Ar URL
101 is given, it will be read from standard input.
102 .It start Op tincd options
103 Start
104 .Xr tincd 8 ,
105 optionally with the given extra options.
106 .It stop
107 Stop
108 .Xr tincd 8 .
109 .It restart Op tincd options
110 Restart
111 .Xr tincd 8 ,
112 optionally with the given extra options.
113 .It reload
114 Partially rereads configuration files. Connections to hosts whose host
115 config files are removed are closed. New outgoing connections specified
116 in
117 .Xr tinc.conf 5
118 will be made.
119 .It pid
120 Shows the PID of the currently running
121 .Xr tincd 8 .
122 .It generate-keys Op bits
123 Generate both RSA and ECDSA keypairs (see below) and exit.
124 .It generate-ecdsa-keys
125 Generate public/private ECDSA keypair and exit.
126 .It generate-rsa-keys Op bits
127 Generate public/private RSA keypair and exit.
128 If
129 .Ar bits
130 is omitted, the default length will be 2048 bits.
131 When saving keys to existing files, tinc will not delete the old keys;
132 you have to remove them manually.
133 .It dump [reachable] nodes
134 Dump a list of all known nodes in the VPN.
135 If the keyword reachable is used, only lists reachable nodes.
136 .It dump edges
137 Dump a list of all known connections in the VPN.
138 .It dump subnets
139 Dump a list of all known subnets in the VPN.
140 .It dump connections
141 Dump a list of all meta connections with ourself.
142 .It dump graph | digraph
143 Dump a graph of the VPN in
144 .Xr dotty 1
145 format.
146 Nodes are colored according to their reachability:
147 red nodes are unreachable, orange nodes are indirectly reachable, green nodes are directly reachable.
148 Black nodes are either directly or indirectly reachable, but direct reachability has not been tried yet.
149 .It info Ar node | subnet | address
150 Show information about a particular node, subnet or address.
151 If an address is given, any matching subnet will be shown.
152 .It purge
153 Purges all information remembered about unreachable nodes.
154 .It debug Ar N
155 Sets debug level to
156 .Ar N .
157 .It log Op Ar N
158 Capture log messages from a running tinc daemon.
159 An optional debug level can be given that will be applied only for log messages sent to
160 .Nm tinc .
161 .It retry
162 Forces
163 .Xr tincd 8
164 to try to connect to all uplinks immediately.
165 Usually
166 .Xr tincd 8
167 attempts to do this itself,
168 but increases the time it waits between the attempts each time it failed,
169 and if
170 .Xr tincd 8
171 didn't succeed to connect to an uplink the first time after it started,
172 it defaults to the maximum time of 15 minutes.
173 .It disconnect Ar NODE
174 Closes the meta connection with the given
175 .Ar NODE .
176 .It top
177 If
178 .Nm
179 is compiled with libcurses support, this will display live traffic statistics
180 for all the known nodes, similar to the UNIX
181 .Xr top 1
182 command.
183 See below for more information.
184 .It pcap
185 Dump VPN traffic going through the local tinc node in
186 .Xr pcap-savefile 5
187 format to standard output,
188 from where it can be redirected to a file or piped through a program that can parse it directly,
189 such as
190 .Xr tcpdump 8 .
191 .El
192 .Sh EXAMPLES
193 Examples of some commands:
194 .Bd -literal -offset indent
195 tinc -n vpn dump graph | circo -Txlib
196 tinc -n vpn pcap | tcpdump -r -
197 tinc -n vpn top
198 .Pp
199 .Ed
200 Example of configuring tinc using
201 .Nm :
202 .Bd -literal -offset indent
203 tinc -n vpn init foo
204 tinc -n vpn add Subnet 192.168.1.0/24
205 tinc -n vpn add bar.Address bar.example.com
206 tinc -n vpn add ConnectTo bar
207 tinc -n vpn export | gpg --clearsign | mail -s "My config" vpnmaster@example.com
208 .Ed
209 .Sh TOP
210 The top command connects to a running tinc daemon and repeatedly queries its per-node traffic counters.
211 It displays a list of all the known nodes in the left-most column,
212 and the amount of bytes and packets read from and sent to each node in the other columns.
213 By default, the information is updated every second.
214 The behaviour of the top command can be changed using the following keys:
215 .Bl -tag
216 .It Ic s
217 Change the interval between updates.
218 After pressing the
219 .Ic s
220 key, enter the desired interval in seconds, followed by enter.
221 Fractional seconds are honored.
222 Intervals lower than 0.1 seconds are not allowed.
223 .It Ic c
224 Toggle between displaying current traffic rates (in packets and bytes per second)
225 and cumulative traffic (total packets and bytes since the tinc daemon started).
226 .It Ic n
227 Sort the list of nodes by name.
228 .It Ic i
229 Sort the list of nodes by incoming amount of bytes.
230 .It Ic I
231 Sort the list of nodes by incoming amount of packets.
232 .It Ic o
233 Sort the list of nodes by outgoing amount of bytes.
234 .It Ic O
235 Sort the list of nodes by outgoing amount of packets.
236 .It Ic t
237 Sort the list of nodes by sum of incoming and outgoing amount of bytes.
238 .It Ic T
239 Sort the list of nodes by sum of incoming and outgoing amount of packets.
240 .It Ic b
241 Show amount of traffic in bytes.
242 .It Ic k
243 Show amount of traffic in kilobytes.
244 .It Ic M
245 Show amount of traffic in megabytes.
246 .It Ic G
247 Show amount of traffic in gigabytes.
248 .It Ic q
249 Quit.
250 .El
251 .Sh BUGS
252 If you find any bugs, report them to tinc@tinc-vpn.org.
253 .Sh SEE ALSO
254 .Xr tincd 8 ,
255 .Xr tinc.conf 5 ,
256 .Xr dotty 1 ,
257 .Xr pcap-savefile 5 ,
258 .Xr tcpdump 8 ,
259 .Xr top 1 ,
260 .Pa http://www.tinc-vpn.org/ ,
261 .Pa http://www.cabal.org/ .
262 .Pp
263 The full documentation for tinc is maintained as a Texinfo manual.
264 If the info and tinc programs are properly installed at your site,
265 the command
266 .Ic info tinc
267 should give you access to the complete manual.
268 .Pp
269 tinc comes with ABSOLUTELY NO WARRANTY.
270 This is free software, and you are welcome to redistribute it under certain conditions;
271 see the file COPYING for details.
272 .Sh AUTHORS
273 .An "Ivo Timmermans"
274 .An "Guus Sliepen" Aq guus@tinc-vpn.org
275 .Pp
276 And thanks to many others for their contributions to tinc!