loadlwipv6 inlined
[vde.git] / vde-2 / man / vde_cryptcab.1
blobc54ab189550e497a63d452b64955a8630871e067
1 .TH VDE_CRYPTCAB 1 "December 6, 2006" "Virtual Distributed Ethernet"
2 .SH NAME
3 vde_cryptcab \- Virtual Distributed Ethernet encrypted cable manager
4 .SH SYNOPSIS
5 .B vde_cryptcab 
6
7 .B \-p   
8 .I portnum  
9
10
11 .B \-s 
12 .I socketpath  
13
14
15 .B \-c   
16 .I  [remote_user@]host[:remote_portnum]  
17
18
19 .B \-P 
20 .I  pre_shared.key 
21
22 .br
23 .SH DESCRIPTION
25 \fBvde_cryptcab\fP 
26 is a distributed cable manager for VDE switches.
27 It allows two VDE switches on two machines to communicate
28 using a blowfish encrypted channel.
30 When used in client mode (i.e., with -c option), it generates a random
31 blowfish key, and uses
32 .B scp (1)
33 to transfer the key to the remote server.
35 After a 4-way handshake phase to verify client credentials, server and 
36 client will exchange VDE datagrams encapsulating them into cryptograms
37 that are sent via udp to each remote host.
39 On server side, one could run: 
40 .RS
41 .br
42 .B vde_cryptcab -s /tmp/vde2.ctl -p 2100
43 .RE
44 To start a multi-peer cryptcab server, accepting udp datagrams on port
45 2100, that connects each authenticated remote client to a different 
46 port of the switch. In fact, a new instance of 
47 .B vde_plug (1)
48 is started and connected to the switch through local unix socket.
50 The command
51 .RS
52 .br
53 .B vde_cryptcab -s /tmp/vde2.ctl -c foo@remote.machine.org:2100
54 .RE
55 will connect a client to the remote server, running on udp port 2100.
56 At this point, on server side a verify for user "foo" credentials is required, 
57 typically it could be: host-based authentication, password challenge 
58 or public key authentication. See
59 .B ssh (1)
60 for more details about it.
62 If the two vde_switches run as daemon and they are connected to tap interfaces
63 a level 2 encrypted tunnel is established.
65 .SH OPTIONS
66 .TP
67 .B \-p "\fIportnum\fP" 
68 It is possible to decide which local udp port to use.
69 When this option is not specified, cryptcab will use default udp port number,
70 7667.
71 .TP
72 .B \-c "\fI[remote_user@]host[:remote_portnum]\fP" 
73 run vde_cryptcab in client mode, trying to connect to 
74 .B host .
75 Both 
76 .B remote_user 
77 and 
78 .B remote_portnum 
79 parameters are not required.
80 If not specified, the same user running vde_cryptcab is used for
81 authentication on server, and default udp port 7667 is used.
82 .TP
83 .B \-s "\fIsocketpath\fP"
84 specify the UNIX socket to be used by local programs for joining the VDE.
85 The default value is "/tmp/vde.ctl".
86 .TP
87 .B \-P "\fIpre_shared.keypath\fP"
88 if specified, vde_cryptcab will run in pre-shared key mode, instead of generating a
89 random key to transmit with ssh.
90 Given option is the path to the pre-shared symmetric key file to use for data encryption.
91 The same key has to be used on both client and server.
92 .SH KNOWN ISSUE
93 Encapsulating IP packets into session+udp layer results in real datagrams larger
94 than tap device mtu. Since vde_cryptcab gets confused by packet fragmentation, the 
95 tap device mtu must be set to a smaller value than real interface mtu. Use 
96 .BR ip (8) 
97 or 
98 .BR ifconfig (8) 
99 to set up your tap device mtu.
102 .SH NOTICE
103 Virtual Distributed Ethernet is not related in any way with
104 www.vde.com ("Verband der Elektrotechnik, Elektronik und Informationstechnik"
105 i.e. the German "Association for Electrical, Electronic & Information
106 Technologies"). 
108 .SH SEE ALSO
109 \fBvde_switch\fP(1),
110 \fBvdeq\fP(1),
111 \fBvde_plug\fP(1),
112 \fBvde_plug2tap\fP(1),
113 \fBscp\fP(1),
114 \fBssh\fP(1).
116 .SH AUTHORS 
117 VDE is a project by Renzo Davoli <renzo@cs.unibo.it>.
119 vde_cryptcab is a VDE component by Daniele Lacamera <root@danielinux.net>