summaryrefslogtreecommitdiff
path: root/README
blob: 00a88bc2426478bcb44c33e282ec36b9f5b415b1 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
Dependencies
============

uAnytun can be built by using either libgcrypt or the openssl-crypto library. 
The latter is more performant in most cases but there are some license 
issues when using this library. It also needs more space when installed.


Linux
-----

using libgcrypt:
 
 build-essential
 libgcrypt11-dev

using ssl crypto library:

 build-essential
 libssl-dev

only for manpage:

 asciidoc


OpenBSD/FreeBSD
---------------

using libgcrypt:

 devel/gmake
 security/libgcrypt

using ssl crypto library:

 devel/gmake

only for manpage:

 textproc/asciidoc
 textproc/libxslt
 textproc/docbook-xsl
 sysutils/readlink
 misc/getopt 



Installation
============

Getting the source via subversion:
----------------------------------

svn co https://svn.anytun.org/uanytun/trunk uanytun
cd uanytun


Building from source
--------------------

using libgcrypt:

# cd src
# ./configure
# make

using ssl crypto library:

# cd src
# ./configure --use-ssl-crypto
# make

Notes: 
  - try './configure --help' for further information
  - if using openssl pre 0.9.8 you have to disable passphrase
    because openssl had no SHA256 implementation prior to this
    version
  - on OpenBSD/FreeBSD you have to use gmake instead of make


Installing
----------

# sudo make install

This will install anytun under the --prefix defined with configure.


Uninstalling
------------

# sudo make remove

This removes everytthing except for the config files

# sudo make purge

This also removes the config files



Usage:
======

init.d script
-------------

The init.d script can be used to start uanytun at boot time. It searches for 
configuration files which reside at $CONFIG_DIR. For each instance of uanytun
which should be started there must be a directory containing at least a file
named config. This file must contain all command line parameter which should
be used when starting the daemon. One line for each parameter. Empty lines and
lines starting with # are ignored. Besides the config file there may be a script
named post-up.sh which will be called when the tun/tap device comes up. 
This is an example of how the init.d script can be used to start uanytun:

# /etc/init.d/uanytun start client1 p2p-a

In this case the script will start 2 instances of uanytun using the config files
$CONFIG_DIR/client1/config and $CONFIG_DIR/p2p-a/config. 
If no instance name is specified the script will use the file $CONFIG_DIR/autostart
to determine which instances to start or stop. This file must contain a list 
of instance names which should be used when no names are specified at the command 
line. One line for each name. Empty lines and lines starting with # are ignored.