The easiest, most secure way to use WireGuard and 2FA.
Go to file
Avery Pennarun 34c30eaea0 router_linux: use only baseline 'ip rule' features that exist in old kernels.
This removes the use of suppress_ifgroup and fwmark "x/y" notation,
which are, among other things, not available in busybox and centos6.

We also use the return codes from the 'ip' program instead of trying to
parse its output.

I also had to remove the previous hack that routed all of 100.64.0.0/10
by default, because that would add the /10 route into the 'main' route
table instead of the new table 88, which is no good. It was a terrible
hack anyway; if we wanted to capture that route, we should have
captured it explicitly as a subnet route, not as part of the addr. Note
however that this change affects all platforms, so hopefully there
won't be any surprises elsewhere.

Fixes #405
Updates #320, #144

Signed-off-by: Avery Pennarun <apenwarr@tailscale.com>
2020-05-28 07:07:39 -04:00
.github Disable staticcheck for tempfork packages. 2020-04-24 20:46:06 -07:00
atomicfile scripts: add a license header checker. 2020-03-17 21:34:44 -07:00
cmd cmd/tailscale: make ip_forward warnings more actionable. 2020-05-28 07:07:39 -04:00
control/controlclient control/controlclient: use "getprop net.hostname" for Android hostname 2020-05-27 12:50:41 -07:00
derp all: make client use server-provided DERP map, add DERP region support 2020-05-23 22:31:59 -07:00
ipn router_linux: use only baseline 'ip rule' features that exist in old kernels. 2020-05-28 07:07:39 -04:00
log/logheap tailcfg: add MapResponse.Debug mechanism to trigger logging heap pprof 2020-05-25 15:22:13 -07:00
logpolicy ipnserver and logpolicy: configure zstd with low-memory settings. 2020-05-20 11:23:26 -04:00
logtail filch_test: clarify the use of os.RemoveAll(). 2020-05-27 18:50:44 -04:00
metrics metrics: add a LabelMap type for variables with 1 label dimension. 2020-03-04 13:22:50 -08:00
net net/netcheck: fix race condition initializting RegionLatency maps. 2020-05-28 03:41:37 -04:00
paths paths: use /var/db for state on BSDs, and /var/run for sockets. 2020-03-03 17:49:31 -08:00
portlist portlist: fix "readdirent: no such file or directory" errors on Linux. 2020-05-19 01:51:21 -04:00
safesocket safesocket: gofmt 2020-03-30 11:23:18 -07:00
scripts wgengine/router: split out from wgengine. 2020-04-30 13:31:24 -07:00
syncs syncs: add new package for extra sync types 2020-03-12 11:13:33 -07:00
tailcfg tailcfg: add MapResponse.Debug mechanism to trigger logging heap pprof 2020-05-25 15:22:13 -07:00
tempfork tempfork/x509: moved to tailscale/go's crypto/x509 instead 2020-04-27 08:14:54 -07:00
tstest tstest: document PanicOnLog 2020-05-14 10:05:32 -07:00
tstime tstime: hand-implement parseInt for specific needs of rfc3339 parsing. 2020-04-14 12:36:55 -07:00
tsweb tstest: rename from testy. 2020-04-28 20:45:12 -07:00
types types/strbuilder: add a variant of strings.Builder that uses sync.Pool 2020-05-25 08:50:48 -07:00
version version: bump date 2020-04-10 08:23:36 -07:00
wgengine router_linux: use only baseline 'ip rule' features that exist in old kernels. 2020-05-28 07:07:39 -04:00
.gitattributes .gitattributes: add a smudge filter for go.mod. 2020-02-19 20:02:02 -05:00
.gitignore cmd/relaynode: drop local --acl-file in favour of central packet filter. 2020-02-20 00:15:43 -05:00
AUTHORS Move Linux client & common packages into a public repo. 2020-02-09 09:32:57 -08:00
CODE_OF_CONDUCT.md Add a code of conduct. 2020-02-10 22:16:30 -08:00
Dockerfile Dockerfile: install iproute2 in the container image. 2020-05-10 17:12:17 -07:00
go.mod all: make client use server-provided DERP map, add DERP region support 2020-05-23 22:31:59 -07:00
go.sum all: make client use server-provided DERP map, add DERP region support 2020-05-23 22:31:59 -07:00
LICENSE Move Linux client & common packages into a public repo. 2020-02-09 09:32:57 -08:00
PATENTS Move Linux client & common packages into a public repo. 2020-02-09 09:32:57 -08:00
README.md Dockerfile: add some usage docs, bump to Go 1.14 2020-04-06 07:57:47 -07:00
SECURITY.md Add a SECURITY.md for vulnerability reports. 2020-02-11 10:26:41 -08:00

Tailscale

https://tailscale.com

Private WireGuard® networks made easy

Overview

This repository contains all the open source Tailscale code. It currently includes the Linux client.

The Linux client is currently cmd/relaynode, but will soon be replaced by cmd/tailscaled.

Using

We serve packages for a variety of distros at https://pkgs.tailscale.com .

Building

go install tailscale.com/cmd/tailscale{,d}

We only guarantee to support the latest Go release and any Go beta or release candidate builds (currently Go 1.14) in module mode. It might work in earlier Go versions or in GOPATH mode, but we're making no effort to keep those working.

Bugs

Please file any issues about this code or the hosted service on the issue tracker.

Contributing

under_construction.gif

PRs welcome, but we are still working out our contribution process and tooling.

We require Developer Certificate of Origin Signed-off-by lines in commits.

About Us

We are apenwarr, bradfitz, crawshaw, danderson, dfcarney, from Tailscale Inc. You can learn more about us from our website.

WireGuard is a registered trademark of Jason A. Donenfeld.