1VPNC(8)                 System Administration Utilities                VPNC(8)
2
3
4

NAME

6       vpnc - client for Cisco VPN3000 Concentrator, IOS and PIX
7

SYNOPSIS

9       vpnc  [--version]  [--print-config]  [--help]  [--long-help]  [options]
10       [config files]
11

DESCRIPTION

13       This manual page documents briefly the vpnc  and  vpnc-disconnect  com‐
14       mands.
15
16       vpnc is a VPN client for the Cisco 3000 VPN  Concentrator,  creating  a
17       IPSec-like connection as a tunneling network device for the local  sys‐
18       tem. It uses the TUN/TAP driver in  Linux  kernel  2.4  and  above  and
19       device tun(4) on BSD. The created connection is presented as a  tunnel‐
20       ing network device to the local system.
21
22       OBLIGATORY  WARNING:  the most used configuration (XAUTH authentication
23       with pre-shared  keys  and  password  authentication)  is  insecure  by
24       design,  be  aware of this fact when you use vpnc to exchange sensitive
25       data like passwords!
26
27       The vpnc daemon by itself  does  not  set  any  routes,  but  it  calls
28       vpnc-script  to  do this job. vpnc-script displays a connect banner. If
29       the concentrator supplies a network list for split-tunneling these net‐
30       works are added to the routing table.  Otherwise the default-route will
31       be modified to point to the tunnel.  Further a host route to  the  con‐
32       centrator  is  added in the later case.  If the client host needs DHCP,
33       care must be taken to add another host route to the DHCP-Server  around
34       the tunnel.
35
36       The  vpnc-disconnect command is used to terminate the connection previ‐
37       ously created by vpnc and restore the previous routing configuration.
38
39

CONFIGURATION

41       The daemon reads configuration data from the following places:
42       ·      command line options
43       ·      config file(s) specified on the command line
44       ·      /etc/vpnc/default.conf
45       ·      /etc/vpnc.conf
46       ·      prompting the user if not found above
47
48       vpnc can parse options and configuration files in  any  order.  However
49       the  first  place to set an option wins.  configuration filenames which
50       do not contain  a  /  will  be  searched  at  /etc/vpnc/<filename>  and
51       /etc/vpnc/<filename>.conf.   Otherwise  <filename>  and <filename>.conf
52       will be used.  If no configuration file is specified  on  the  command-
53       line  at  all,  both  /etc/vpnc/default.conf and /etc/vpnc.conf will be
54       loaded.
55

OPTIONS

57       The program options can be either given as arguments (but  not  all  of
58       them for security reasons) or be stored in a configuration file.
59
60       --gateway <ip/hostname>
61              IP/name of your IPSec gateway
62       conf-variable: IPSec gateway <ip/hostname>
63
64       --id <ASCII string>
65              your group name
66       conf-variable: IPSec ID <ASCII string>
67
68       (configfile only option)
69              your group password (cleartext)
70       conf-variable: IPSec secret <ASCII string>
71
72       (configfile only option)
73              your group password (obfuscated)
74       conf-variable: IPSec obfuscated secret <hex string>
75
76       --username <ASCII string>
77              your username
78       conf-variable: Xauth username <ASCII string>
79
80       (configfile only option)
81              your password (cleartext)
82       conf-variable: Xauth password <ASCII string>
83
84       (configfile only option)
85              your password (obfuscated)
86       conf-variable: Xauth obfuscated password <hex string>
87
88       --domain <ASCII string>
89              (NT-) Domain name for authentication
90       conf-variable: Domain <ASCII string>
91
92       --xauth-inter
93              enable   interactive   extended  authentication  (for  challenge
94              response auth)
95       conf-variable: Xauth interactive
96
97       --vendor <cisco/netscreen>
98              vendor of your IPSec gateway
99              Default: cisco
100       conf-variable: Vendor <cisco/netscreen>
101
102       --natt-mode <natt/none/force-natt/cisco-udp>
103              Which NAT-Traversal Method to use:
104              ·      natt -- NAT-T as defined in RFC3947
105              ·      none -- disable use of any NAT-T method
106              ·      force-natt -- always use NAT-T encapsulation even without
107                     presence  of  a NAT device (useful if the OS captures all
108                     ESP traffic)
109              ·      cisco-udp -- Cisco proprietary  UDP  encapsulation,  com‐
110                     monly over Port 10000
111              Note: cisco-tcp encapsulation is not yet supported
112              Default: natt
113       conf-variable: NAT Traversal Mode <natt/none/force-natt/cisco-udp>
114
115       --script <command>
116              command  is  executed using system() to configure the interface,
117              routing and so on. Device name, IP, etc. are passed using  envi‐
118              roment  variables,  see  README.  This  script is executed right
119              after ISAKMP is done, but before tunneling  is  enabled.  It  is
120              called when vpnc terminates, too
121              Default: /etc/vpnc/vpnc-script
122       conf-variable: Script <command>
123
124       --dh <dh1/dh2/dh5>
125              name of the IKE DH Group
126              Default: dh2
127       conf-variable: IKE DH Group <dh1/dh2/dh5>
128
129       --pfs <nopfs/dh1/dh2/dh5/server>
130              Diffie-Hellman group to use for PFS
131              Default: server
132       conf-variable: Perfect Forward Secrecy <nopfs/dh1/dh2/dh5/server>
133
134       --enable-1des
135              enables weak single DES encryption
136       conf-variable: Enable Single DES
137
138       --enable-no-encryption
139              enables using no encryption for data traffic (key exchanged must
140              be encrypted)
141       conf-variable: Enable no encryption
142
143       --application-version <ASCII string>
144              Application Version to report. Note: Default string is generated
145              at runtime.
146              Default: Cisco Systems VPN Client 0.5.3:Linux
147       conf-variable: Application version <ASCII string>
148
149       --ifname <ASCII string>
150              visible name of the TUN/TAP interface
151       conf-variable: Interface name <ASCII string>
152
153       --ifmode <tun/tap>
154              mode of TUN/TAP interface:
155              ·      tun: virtual point to point interface (default)
156              ·      tap: virtual ethernet interface
157              Default: tun
158       conf-variable: Interface mode <tun/tap>
159
160       --debug <0/1/2/3/99>
161              Show verbose debug messages
162              ·
163                      0: Do not print debug information.
164              ·
165                      1: Print minimal debug information.
166              ·
167                      2:  Show  statemachine  and packet/payload type informa‐
168                     tion.
169              ·
170                      3: Dump everything exluding authentication data.
171              ·      99: Dump everything INCLUDING AUTHENTICATION  data  (e.g.
172                     PASSWORDS).
173       conf-variable: Debug <0/1/2/3/99>
174
175       --no-detach
176              Don't detach from the console after login
177       conf-variable: No Detach
178
179       --pid-file <filename>
180              store the pid of background process in <filename>
181              Default: /var/run/vpnc/pid
182       conf-variable: Pidfile <filename>
183
184       --local-addr <ip/hostname>
185              local IP to use for ISAKMP / ESP / ... (0.0.0.0 == automatically
186              assign)
187              Default: 0.0.0.0
188       conf-variable: Local Addr <ip/hostname>
189
190       --local-port <0-65535>
191              local ISAKMP port number to use (0 == use random port)
192              Default: 500
193       conf-variable: Local Port <0-65535>
194
195       --udp-port <0-65535>
196              Local UDP port number to use (0 == use random  port).   This  is
197              only  relevant  if cisco-udp nat-traversal is used.  This is the
198              _local_ port, the remote udp port is  discovered  automatically.
199              It is especially not the cisco-tcp port.
200              Default: 10000
201       conf-variable: Cisco UDP Encapsulation Port <0-65535>
202
203       --dpd-idle <0,10-86400>
204              Send DPD packet after not receiving anything for <idle> seconds.
205              Use 0 to disable DPD completely (both ways).
206              Default: 600
207       conf-variable: DPD idle timeout (our side) <0,10-86400>
208
209       --non-inter
210              Don't ask anything, exit on missing options
211       conf-variable: Noninteractive
212
213       --auth-mode <psk/cert/hybrid>
214              Authentication mode:
215              ·      psk:    pre-shared key (default)
216              ·      cert:   server + client certificate (not implemented yet)
217              ·      hybrid: server certificate + xauth (if built with openssl
218                     support)
219              Default: psk
220       conf-variable: IKE Authmode <psk/cert/hybrid>
221
222       --ca-file <filename>
223              filename and path to the CA-PEM-File
224       conf-variable: CA-File <filename>
225
226       --ca-dir <directory>
227              path of the trusted CA-Directory
228              Default: /etc/ssl/certs
229       conf-variable: CA-Dir <directory>
230
231       --target-network <target network/netmask>
232              Target network in dotted decimal or CIDR notation
233              Default: 0.0.0.0/0.0.0.0
234       conf-variable: IPSEC target network <target network/netmask>
235
236       --print-config
237              Prints your configuration; output can be used as vpnc.conf
238

FILES

240       /etc/vpnc.conf /etc/vpnc/default.conf
241              The  default configuration file. You can specify the same config
242              directives as with command line options  and  additionaly  IPSec
243              secret  and  Xauth password both supplying a cleartext password.
244              Scrambled passwords from the Cisco configuration profiles can be
245              used with IPSec obfuscated secret and Xauth obfuscated password.
246
247              See EXAMPLES for further details.
248
249       /etc/vpnc/*.conf
250              vpnc  will  read  configuration files in this directory when the
251              config filename (with or without .conf) is specified on the com‐
252              mand line.
253
254

EXAMPLES

256       This is an example vpnc.conf with pre-shared keys:
257
258              IPSec gateway vpn.example.com
259              IPSec ID ExampleVpnPSK
260              IKE Authmode psk
261              IPSec secret PskS3cret!
262              Xauth username user@example.com
263              Xauth password USecr3t
264
265       And  another  one  with  hybrid  authentication (requires that vpnc was
266       built with openssl support):
267
268              IPSec gateway vpn.example.com
269              IPSec ID ExampleVpnHybrid
270              IKE Authmode hybrid
271              CA-Dir /etc/vpnc
272              or
273              CA-File /etc/vpnc/vpn-example-com.pem
274              IPSec secret HybS3cret?
275              Xauth username user@example.com
276              Xauth password 123456
277
278       The lines begin with a keyword (no leading spaces!).  The values  start
279       exactly  one space after the keywords, and run to the end of line. This
280       lets you put any kind of weird character (except CR,  LF  and  NUL)  in
281       your  strings,  but it does mean you can't add comments after a string,
282       or spaces before them.
283
284       In case the the CA-Dir option is used, your  certificate  needs  to  be
285       named  something like 722d15bd.X, where X is a manually assigned number
286       to make sure that files with colliding hashes have different names. The
287       number can be derived from the certificate file itself:
288
289       openssl x509 -subject_hash -noout -in /etc/vpnc/vpn-example-com.pem
290
291       See  also  the --print-config option to generate a config file, and the
292       example file in the package documentation directory where more advanced
293       usage is demonstrated.
294
295       Advanced  features  like  manual  setting of multiple target routes and
296       disabling /etc/resolv.conf rewriting is documented in the README of the
297       vpnc package.
298
299

TODO

301       Certificate support (Pre-Shared-Key + XAUTH is known to be insecure).
302       Further points can be found in the TODO file.
303
304

AUTHOR

306       This  man-page  has  been written by Eduard Bloch <blade(at)debian.org>
307       and Christian Lackas <delta(at)lackas.net>, based  on  vpnc  README  by
308       Maurice  Massar  <vpnc(at)unix-ag.uni-kl.de>.  Permission is granted to
309       copy, distribute and/or modify this document under the terms of the GNU
310       General  Public  License,  Version 2 any later version published by the
311       Free Software Foundation.
312
313       On Debian systems, the complete text of the GNU General Public  License
314       can be found in /usr/share/common-licenses/GPL.
315

SEE ALSO

317       pcf2vpnc(1),    cisco-decrypt(1),    ip(8),    ifconfig(8),   route(1),
318       http://www.unix-ag.uni-kl.de/~massar/vpnc/
319
320
321
322vpnc version 0.5.3               December 2009                         VPNC(8)
Impressum