基于WireGuard的VPN。免费支持最多20个节点。 https://tailscale.com/

Joe Tsai b2035a1dca cmd/netlogfmt: handle any stream of network logs (#6108) il y a 3 ans
.bencher babd163aac bencher: add config to suppress failures on benchmark regressions. il y a 4 ans
.github 7b745a1a50 .github: run CI on release branches il y a 3 ans
atomicfile f0347e841f refactor: move from io/ioutil to io and os packages il y a 3 ans
chirp d4811f11a0 all: fix spelling mistakes il y a 3 ans
client 630bcb5b67 tsnet,client/tailscale: add APIClient which runs API over Noise. il y a 3 ans
cmd b2035a1dca cmd/netlogfmt: handle any stream of network logs (#6108) il y a 3 ans
control 5e9e57ecf5 control/controlhttp: add AcceptHTTP hook to add coalesced Server->Client write il y a 3 ans
derp 9d04ffc782 net/wsconn: add back custom wrapper for turning a websocket.Conn into a net.Conn il y a 3 ans
disco d4811f11a0 all: fix spelling mistakes il y a 3 ans
docs 944f43f1c8 docs/webhooks: add sample endpoint code il y a 3 ans
doctor b1867457a6 doctor: add package for running in-depth healthchecks; use in bugreport (#5413) il y a 3 ans
envknob 73db56af52 ipn/ipnlocal: filter peers with bad signatures when tka is enabled il y a 3 ans
health 3562b5bdfa envknob, health: support Synology, show parse errors in status il y a 3 ans
hostinfo f0347e841f refactor: move from io/ioutil to io and os packages il y a 3 ans
internal 7c671b0220 .github/workflows: add gofmt (goimports) check il y a 3 ans
ipn 19b5586573 cmd/tailscale/cli: add beginnings of `tailscale set` il y a 3 ans
jsondb 96afd1db46 jsondb: small package to load/save JSON DBs. il y a 3 ans
kube af966391c7 kube: handle 201 as a valid status code. il y a 3 ans
licenses a1a2c165e9 licenses: update win/apple licenses il y a 3 ans
log f0347e841f refactor: move from io/ioutil to io and os packages il y a 3 ans
logpolicy d4811f11a0 all: fix spelling mistakes il y a 3 ans
logtail a04f1ff9e6 logtail: default to 2s log flush delay on all platforms il y a 3 ans
metrics 94fb42d4b2 all: use testingutil.MinAllocsPerRun il y a 4 ans
net c21a3c4733 types/netlogtype: new package for network logging types (#6092) il y a 3 ans
packages f0347e841f refactor: move from io/ioutil to io and os packages il y a 3 ans
paths d4811f11a0 all: fix spelling mistakes il y a 3 ans
portlist 35bee36549 portlist: use win32 calls instead of running netstat process [windows] il y a 3 ans
prober bd47e28638 prober: optionally spread probes over time il y a 3 ans
safesocket f0347e841f refactor: move from io/ioutil to io and os packages il y a 3 ans
scripts 9beb07b4ff scripts/install.sh: add Ubuntu Kinetic Kudu il y a 3 ans
smallzstd f0347e841f refactor: move from io/ioutil to io and os packages il y a 3 ans
ssh e24de8a617 ssh/tailssh: add password-forcing workaround for buggy SSH clients il y a 3 ans
syncs b75f81ec00 syncs: add generic AtomicValue il y a 3 ans
tailcfg 74693793be net/netcheck, tailcfg: track whether OS supports IPv6 il y a 3 ans
tempfork 4de1601ef4 ssh/tailssh: add support for sending multiple banners il y a 3 ans
tka 8c09ae9032 tka, types/key: add NLPublic.KeyID il y a 3 ans
tool d60f7fe33f cmd/tsconnect: run wasm-opt on the generated wasm file il y a 3 ans
tsconst eccc2ac6ee net/interfaces/windows: update Tailscale interface detection logic to il y a 4 ans
tsnet 630bcb5b67 tsnet,client/tailscale: add APIClient which runs API over Noise. il y a 3 ans
tstest 79755d3ce5 tstest/natlab: add Firewall.Reset method to drop firewall state il y a 3 ans
tstime 9214b293e3 tstime: add ParseDuration helper function il y a 3 ans
tsweb 614a24763b tsweb: sort top-level expvars after removing type prefixes il y a 3 ans
types a3602c28bd wgengine/netlog: embed the StableNodeID of the authoring node (#6105) il y a 3 ans
util 63ad49890f cmd/tsconnect: pre-compress main.wasm when building the NPM package il y a 3 ans
version 1ac4a26fee ipn/localapi: send Tailscale version in ACME User-Agent (#5499) il y a 3 ans
wf d4811f11a0 all: fix spelling mistakes il y a 3 ans
wgengine 48ddb3af2a wgengine/netlog: enforce hard limit on network log message sizes (#6109) il y a 3 ans
words f36ddd9275 words: even the odds with something that reminds you of vacation (#6025) il y a 3 ans
.gitattributes 1813c2a162 .: add .gitattributes entry to use Go hunk-header driver il y a 4 ans
.gitignore 0ada42684b Makefile: update make spk target to use the new go spk builder il y a 4 ans
ALPINE.txt 88133c361e Docker: add ALPINE.txt to manage alpine versions il y a 3 ans
AUTHORS a8d8b8719a Move Linux client & common packages into a public repo. il y a 6 ans
CODE_OF_CONDUCT.md 452b81d56b Add a code of conduct. il y a 6 ans
Dockerfile 5623ef0271 Update Dockerfile to use golang:1.19-alpine il y a 3 ans
Dockerfile.base cfa484e1a2 Dockerfile: bump alpine to 3.16 il y a 3 ans
LICENSE bf6205d200 LICENSE: Reformat for Github il y a 5 ans
Makefile 42d9e7171c Makefile: add publishdevimage target il y a 3 ans
PATENTS a8d8b8719a Move Linux client & common packages into a public repo. il y a 6 ans
README.md e1309e1323 all: require Go 1.19 il y a 3 ans
SECURITY.md e59605595e Add a SECURITY.md for vulnerability reports. il y a 6 ans
VERSION.txt 1b9ed9f365 VERSION.txt: this is 1.33. il y a 3 ans
api.md d0b7a44840 api.md: add expirySeconds as parameter to post Tailnet keys il y a 3 ans
build_dist.sh d5fb852718 build_dist.sh: add --box and --extra-small flag to produce smaller and boxed binaries il y a 3 ans
build_docker.sh cfa484e1a2 Dockerfile: bump alpine to 3.16 il y a 3 ans
go.mod b2035a1dca cmd/netlogfmt: handle any stream of network logs (#6108) il y a 3 ans
go.sum b2035a1dca cmd/netlogfmt: handle any stream of network logs (#6108) il y a 3 ans
go.toolchain.branch e5176f572e go.toolchain.rev: switch to Go 1.19rc2+ il y a 3 ans
go.toolchain.rev 7714261566 go.toolchain.rev: update to Go 1.19.2 il y a 3 ans
pull-toolchain.sh 408522ddad go.toolchain.rev: add update script il y a 4 ans
shell.nix 527741d41f shell.nix: add graphviz il y a 3 ans
staticcheck.conf ece138ffc3 staticcheck.conf: remove unnecessary warning il y a 4 ans
version-embed.go 88133c361e Docker: add ALPINE.txt to manage alpine versions il y a 3 ans
version_test.go 4bda41e701 Dockerfile: add test that build-env Alpine version matches go.mod il y a 3 ans

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:

Legal

WireGuard is a registered trademark of Jason A. Donenfeld.