You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 
Go to file
Andrew Dunham 223126fe5b cmd/derper, net/netcheck: add challenge/response to generate_204 endpoint
The Lufthansa in-flight wifi generates a synthetic 204 response to the
DERP server's /generate_204 endpoint. This PR adds a basic
challenge/response to the endpoint; something sufficiently complicated
that it's unlikely to be implemented by a captive portal. We can then
check for the expected response to verify whether we're being MITM'd.

Follow-up to #5601

Signed-off-by: Andrew Dunham <andrew@du.nham.ca>
Change-Id: I94a68c9a16a7be7290200eea6a549b64f02ff48f
2 years ago
.bencher
.github .github: update issue templates (#5978) 2 years ago
atomicfile
chirp
client/tailscale tsnet,client/tailscale: add APIClient which runs API over Noise. 2 years ago
cmd cmd/derper, net/netcheck: add challenge/response to generate_204 endpoint 2 years ago
control net/wsconn: add back custom wrapper for turning a websocket.Conn into a net.Conn 2 years ago
derp net/wsconn: add back custom wrapper for turning a websocket.Conn into a net.Conn 2 years ago
disco
docs
doctor
envknob
health
hostinfo
internal/tooldeps
ipn ipn/ipnlocal: fix E.G.G. port number accounting 2 years ago
jsondb
kube kube: handle 201 as a valid status code. 2 years ago
licenses licenses: update android licenses 2 years ago
log
logpolicy
logtail logtail: default to 2s log flush delay on all platforms 2 years ago
metrics
net cmd/derper, net/netcheck: add challenge/response to generate_204 endpoint 2 years ago
packages/deb
paths
portlist refactor: move from io/ioutil to io and os packages 2 years ago
prober prober: add utilities to generate alerts and warnings. 2 years ago
safesocket
scripts
smallzstd
ssh/tailssh
syncs
tailcfg control/controlclient,ipn/ipnlocal,tailcfg: rotate node-key signature on register 2 years ago
tempfork
tka tka: make rotation signatures use nested keyID 2 years ago
tool
tsconst
tsnet tsnet,client/tailscale: add APIClient which runs API over Noise. 2 years ago
tstest
tstime
tsweb
types types/view: add ContainsNonExitSubnetRoutes func 2 years ago
util cmd/tsconnect: pre-compress main.wasm when building the NPM package 2 years ago
version
wf
wgengine wgengine/magicsock: restore allocation-free endpoint.DstToString (#5971) 2 years ago
words words: space, the final frontier (#5952) 2 years ago
.gitattributes
.gitignore
ALPINE.txt
AUTHORS
CODE_OF_CONDUCT.md
Dockerfile
Dockerfile.base
LICENSE
Makefile
PATENTS
README.md
SECURITY.md
VERSION.txt
api.md api.md: document using '-' value as default tailnet 2 years ago
build_dist.sh
build_docker.sh
go.mod prober: expand certificate verification logic in the TLS prober 2 years ago
go.sum
go.toolchain.branch
go.toolchain.rev
pull-toolchain.sh
shell.nix
staticcheck.conf
version-embed.go
version_test.go

README.md

Tailscale

https://tailscale.com

Private WireGuard® networks made easy

Overview

This repository contains all the open source Tailscale client code and the tailscaled daemon and tailscale CLI tool. The tailscaled daemon runs on Linux, Windows and macOS, and to varying degrees on FreeBSD, OpenBSD, and Darwin. (The Tailscale iOS and Android apps use this repo's code, but this repo doesn't contain the mobile GUI code.)

The Android app is at https://github.com/tailscale/tailscale-android

The Synology package is at https://github.com/tailscale/tailscale-synology

Using

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

Other clients

The macOS, iOS, and Windows clients use the code in this repository but additionally include small GUI wrappers that are not open source.

Building

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

If you're packaging Tailscale for distribution, use build_dist.sh instead, to burn commit IDs and version info into the binaries:

./build_dist.sh tailscale.com/cmd/tailscale
./build_dist.sh tailscale.com/cmd/tailscaled

If your distro has conventions that preclude the use of build_dist.sh, please do the equivalent of what it does in your distro's way, so that bug reports contain useful version information.

We require the latest Go release, currently Go 1.19.

Bugs

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

Contributing

PRs welcome! But please file bugs. Commit messages should reference bugs.

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

About Us

Tailscale is primarily developed by the people at https://github.com/orgs/tailscale/people. For other contributors, see:

WireGuard is a registered trademark of Jason A. Donenfeld.