@@ -17,9 +17,8 @@ Idea to create a easy-to-use wrapper over [tinc vpn](https://www.tinc-vpn.org).
17
17
18
18
tinc-boot run
19
19
20
-
21
20
** node 2**
22
-
21
+
23
22
follow command from previous operation
24
23
25
24
### Custom token
@@ -32,28 +31,38 @@ follow command from previous operation
32
31
33
32
tinc-boot run -t MYSECRET --join http://<node1>:8665
34
33
34
+ ### Firewall
35
+
36
+ > Use (--ufw) to open port on ufw-based systems automatically
37
+ >
38
+ > tinc-boot run --ufw ...
39
+ >
40
+ > Required opened default ports:
41
+ >
42
+ > * ` <port>/udp,<port>/tcp ` - port defined as ` --tinc-port ` or generated in ` tinc.conf `
43
+ > * ` 8665/tcp ` - port defined as ` -p --port ` for boot protocol
44
+ > * ` 18655/tcp (tinc interface) ` - internal port for communication. Only for interface defined in ` tinc.conf `
35
45
36
46
## Overview
37
47
38
48
Tinc VPN - is full-mesh, auto-healing, time-proofed VPN system without single point of failure, with high-throughput and
39
- serious cryptography.
40
- All nodes in a Tinc network are fully equal. New nodes discovering full topology through any entry point.
41
- Node may interact with each other even if they don't have direct connections.
49
+ serious cryptography. All nodes in a Tinc network are fully equal. New nodes discovering full topology through any entry
50
+ point. Node may interact with each other even if they don't have direct connections.
42
51
43
- Tinc is a great and have a lot of features. It's ideal for a complicated situations (China, Russia and others).
44
- I really admire the project.
52
+ Tinc is a great and have a lot of features. It's ideal for a complicated situations (China, Russia and others). I really
53
+ admire the project.
45
54
46
55
![ transit] ( https://user-images.githubusercontent.com/6597086/65304801-1b4ae480-dbb4-11e9-933f-b890242358ab.png )
47
56
48
57
** But...** it's pain to configure and maintain.
49
58
50
59
Pain to create a new node. Pain to add new node to network.
51
60
52
- Minimal configuration for a first public node:
61
+ Minimal configuration for a first public node:
53
62
54
- * 2 files (tinc.conf, hostfile),
55
- * 1 script (tinc-up),
56
- * 2 directories (net, hosts),
63
+ * 2 files (tinc.conf, hostfile),
64
+ * 1 script (tinc-up),
65
+ * 2 directories (net, hosts),
57
66
* 1 command execution (key generation).
58
67
59
68
(let's not count service initialization and other common stuff)
@@ -62,15 +71,16 @@ Second node adds key exchange (+1 operation if we will use `rsync`, or +2 operat
62
71
63
72
![ second_node] ( https://user-images.githubusercontent.com/6597086/65304124-72e85080-dbb2-11e9-939f-6359095dbe54.png )
64
73
65
- Next new public nodes require increasing number of additional operations (+N operations, where N is a number of public nodes).
74
+ Next new public nodes require increasing number of additional operations (+N operations, where N is a number of public
75
+ nodes).
66
76
67
77
![ third_node] ( https://user-images.githubusercontent.com/6597086/65304303-df634f80-dbb2-11e9-8b9a-32bd4c6b9c46.png )
68
78
69
79
70
- > To be honest, to just to connect to the network an only single key exchange operation required: with any public node.
80
+ > To be honest, to just to connect to the network an only single key exchange operation required: with any public node.
71
81
> Than tincd will discover all other nodes.
72
82
>
73
- > ** But** after your node disconnect/reboot and in case of death of your entry node you will be no more able to connect
83
+ > ** But** after your node disconnect/reboot and in case of death of your entry node you will be no more able to connect
74
84
> to other alive nodes (because they don't know your key and your node don't know theirs).
75
85
76
86
@@ -90,18 +100,20 @@ Donating always welcome
90
100
* ETH: ` 0xA4eD4fB5805a023816C9B55C52Ae056898b6BdBC `
91
101
* BTC: ` bc1qlj4v32rg8w0sgmtk8634uc36evj6jn3d5drnqy `
92
102
93
-
94
103
## Installation
95
104
96
105
* (recommended) look at [ releases] ( https://github.com/reddec/tinc-boot/releases ) page and download
97
106
* one line shell command:
107
+
98
108
```
99
109
curl -L https://github.com/reddec/tinc-boot/releases/latest/download/tinc-boot_linux_amd64.tar.gz | sudo tar -xz -C /usr/local/bin/ tinc-boot
100
110
```
111
+
101
112
* build from source ` go get -v github.com/reddec/tinc-boot/cmd/... `
102
113
* [ Ansible galaxy] ( https://galaxy.ansible.com/reddec/tinc_boot ) : ` ansible-galaxy install reddec.tinc_boot `
103
114
104
115
* From bintray repository for most ** debian** -based distribution (` trusty ` , ` xenial ` , ` bionic ` , ` buster ` , ` wheezy ` ):
116
+
105
117
``` bash
106
118
sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 379CE192D401AB61
107
119
echo " deb https://dl.bintray.com/reddec/debian {distribution} main" | sudo tee -a /etc/apt/sources.list
@@ -110,7 +122,8 @@ sudo apt install tinc-boot
110
122
111
123
### Independent maintainers
112
124
113
- * ** Arch Linux** in AUR [ package ` tinc-boot-git ` ] ( https://aur.archlinux.org/packages/tinc-boot-git/ ) : ` yaourt -S tinc-boot-git `
125
+ * ** Arch Linux** in
126
+ AUR [ package ` tinc-boot-git ` ] ( https://aur.archlinux.org/packages/tinc-boot-git/ ) : ` yaourt -S tinc-boot-git `
114
127
115
128
### Support
116
129
@@ -139,8 +152,7 @@ sudo apt install tinc-boot
139
152
* Archlinux (Q1 2019) x64
140
153
* Manjaro (Q1 2019) x64
141
154
142
- Should work on all major linux systems, except generated helpers useful only for systemd-based OS.
143
-
155
+ Should work on all major linux systems, except generated helpers useful only for systemd-based OS.
144
156
145
157
# Quick start
146
158
@@ -157,7 +169,7 @@ and follow recommendations
157
169
### Explanation
158
170
159
171
* ` --standalone ` means that it's a first node, no need for keys exchange
160
- * ` -a <address> ` sets public address of node (if exists); could be used several times
172
+ * ` -a <address> ` sets public address of node (if exists); could be used several times
161
173
162
174
Will generate all required files under ` /etc/tinc/dnet ` .
163
175
@@ -173,7 +185,7 @@ and follow recommendations
173
185
174
186
* ` --service ` generates systemd file to ` /etc/systemd/system/tinc-boot-{net}.service `
175
187
* ` --dir ` location of tinc configuration
176
- * ` --token ` set's authorization token that will be used by clients
188
+ * ` --token ` set's authorization token that will be used by clients
177
189
178
190
## Create another node and join to net
179
191
@@ -204,10 +216,11 @@ Requirements:
204
216
205
217
1 . Tinc for Windows: [ download on official site] ( https://www.tinc-vpn.org/ )
206
218
2 . ** Install TAP driver** !:
207
- * Go to ` C:\Program Files(x86)\tinc\tap-win64 `
208
- * As administrator run ` addtap.bat `
209
- 3 . Rename generated network adapter to the name of the network (` dnet ` by-default)
210
219
220
+ * Go to ` C:\Program Files(x86)\tinc\tap-win64 `
221
+ * As administrator run ` addtap.bat `
222
+
223
+ 3 . Rename generated network adapter to the name of the network (` dnet ` by-default)
211
224
212
225
Usage:
213
226
0 commit comments