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

Anton Tolchanov 26af329fde prober: expand certificate verification logic in the TLS prober 3 лет назад
.bencher babd163aac bencher: add config to suppress failures on benchmark regressions. 4 лет назад
.github 7686446c60 Drop duplicated `$` 3 лет назад
atomicfile f0347e841f refactor: move from io/ioutil to io and os packages 3 лет назад
chirp d4811f11a0 all: fix spelling mistakes 3 лет назад
client 1841d0bf98 wgengine/magicsock: make debug-level stuff not logged by default 3 лет назад
cmd f9120eee57 wgengine: start network logger in Userspace.Reconfig (#5908) 3 лет назад
control 680f8d9793 all: fix more resource leaks found by staticmajor 3 лет назад
derp b2855cfd86 derp/derphttp: fix nil pointer dereference when closing a netcheck client 3 лет назад
disco d4811f11a0 all: fix spelling mistakes 3 лет назад
docs 5fc8843c4c docs/k8s: [proxy] fix sysctl command 3 лет назад
doctor b1867457a6 doctor: add package for running in-depth healthchecks; use in bugreport (#5413) 3 лет назад
envknob 73db56af52 ipn/ipnlocal: filter peers with bad signatures when tka is enabled 3 лет назад
health 3562b5bdfa envknob, health: support Synology, show parse errors in status 3 лет назад
hostinfo f0347e841f refactor: move from io/ioutil to io and os packages 3 лет назад
internal 7c671b0220 .github/workflows: add gofmt (goimports) check 3 лет назад
ipn b2994568fe ipn/localapi: put all the LocalAPI methods into a map 3 лет назад
jsondb 96afd1db46 jsondb: small package to load/save JSON DBs. 3 лет назад
kube 0868329936 all: use any instead of interface{} 4 лет назад
licenses 39d03b6b63 licenses: update win/apple licenses 3 лет назад
log f0347e841f refactor: move from io/ioutil to io and os packages 3 лет назад
logpolicy d4811f11a0 all: fix spelling mistakes 3 лет назад
logtail a315336287 logtail: change batched upload mechanism to not use CPU when idle 3 лет назад
metrics 94fb42d4b2 all: use testingutil.MinAllocsPerRun 4 лет назад
net 3555a49518 net/dns: always attempt to read the OS config on macOS/iOS 3 лет назад
packages f0347e841f refactor: move from io/ioutil to io and os packages 3 лет назад
paths d4811f11a0 all: fix spelling mistakes 3 лет назад
portlist f0347e841f refactor: move from io/ioutil to io and os packages 3 лет назад
prober 26af329fde prober: expand certificate verification logic in the TLS prober 3 лет назад
safesocket f0347e841f refactor: move from io/ioutil to io and os packages 3 лет назад
scripts 51d488673a scripts/installer.sh: add OSMC 3 лет назад
smallzstd f0347e841f refactor: move from io/ioutil to io and os packages 3 лет назад
ssh e24de8a617 ssh/tailssh: add password-forcing workaround for buggy SSH clients 3 лет назад
syncs b75f81ec00 syncs: add generic AtomicValue 3 лет назад
tailcfg 01ebef0f4f tailcfg: add views for ControlDialPlan (#5843) 3 лет назад
tempfork 4de1601ef4 ssh/tailssh: add support for sending multiple banners 3 лет назад
tka 8602061f32 ipn/ipnlocal,tka: Fix bugs found by integration testing 3 лет назад
tool 7e4883b261 .github/workflows: add tsconnect static build to wasm GitHub action 3 лет назад
tsconst eccc2ac6ee net/interfaces/windows: update Tailscale interface detection logic to 4 лет назад
tsnet 680f8d9793 all: fix more resource leaks found by staticmajor 3 лет назад
tstest 79755d3ce5 tstest/natlab: add Firewall.Reset method to drop firewall state 3 лет назад
tstime 9214b293e3 tstime: add ParseDuration helper function 3 лет назад
tsweb 614a24763b tsweb: sort top-level expvars after removing type prefixes 3 лет назад
types 5363a90272 types/view: add ContainsNonExitSubnetRoutes func 3 лет назад
util a7efc7bd17 util/singleflight: sync with upstream 3 лет назад
version 1ac4a26fee ipn/localapi: send Tailscale version in ACME User-Agent (#5499) 3 лет назад
wf d4811f11a0 all: fix spelling mistakes 3 лет назад
wgengine 3555a49518 net/dns: always attempt to read the OS config on macOS/iOS 3 лет назад
words 185f2e4768 words: this title should have been a pun, but I chickened out (#5506) 3 лет назад
.gitattributes 1813c2a162 .: add .gitattributes entry to use Go hunk-header driver 4 лет назад
.gitignore 0ada42684b Makefile: update make spk target to use the new go spk builder 4 лет назад
ALPINE.txt 88133c361e Docker: add ALPINE.txt to manage alpine versions 3 лет назад
AUTHORS a8d8b8719a Move Linux client & common packages into a public repo. 6 лет назад
CODE_OF_CONDUCT.md 452b81d56b Add a code of conduct. 6 лет назад
Dockerfile 5623ef0271 Update Dockerfile to use golang:1.19-alpine 3 лет назад
Dockerfile.base cfa484e1a2 Dockerfile: bump alpine to 3.16 3 лет назад
LICENSE bf6205d200 LICENSE: Reformat for Github 5 лет назад
Makefile c3270af52b Makefile: add target for wasm and make it part of check 3 лет назад
PATENTS a8d8b8719a Move Linux client & common packages into a public repo. 6 лет назад
README.md e1309e1323 all: require Go 1.19 3 лет назад
SECURITY.md e59605595e Add a SECURITY.md for vulnerability reports. 6 лет назад
VERSION.txt 1b9ed9f365 VERSION.txt: this is 1.33. 3 лет назад
api.md d05dd41bc1 api.md: document using '-' value as default tailnet 3 лет назад
build_dist.sh d5fb852718 build_dist.sh: add --box and --extra-small flag to produce smaller and boxed binaries 3 лет назад
build_docker.sh cfa484e1a2 Dockerfile: bump alpine to 3.16 3 лет назад
go.mod 26af329fde prober: expand certificate verification logic in the TLS prober 3 лет назад
go.sum e24de8a617 ssh/tailssh: add password-forcing workaround for buggy SSH clients 3 лет назад
go.toolchain.branch e5176f572e go.toolchain.rev: switch to Go 1.19rc2+ 3 лет назад
go.toolchain.rev 7714261566 go.toolchain.rev: update to Go 1.19.2 3 лет назад
pull-toolchain.sh 408522ddad go.toolchain.rev: add update script 4 лет назад
shell.nix 7a74466998 shell.nix: update Go toolchain to 1.19 3 лет назад
staticcheck.conf ece138ffc3 staticcheck.conf: remove unnecessary warning 4 лет назад
version-embed.go 88133c361e Docker: add ALPINE.txt to manage alpine versions 3 лет назад
version_test.go 4bda41e701 Dockerfile: add test that build-env Alpine version matches go.mod 3 лет назад

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.