访问并保护您全部基础设施的最简单、最安全的方式。
Teleport 为基础设施提供连接、身份验证、访问控制和审计。
你可以使用 Teleport 来:
Teleport 可与 SSH、Kubernetes、数据库、RDP、云控制台、内部 Web 服务、Git 仓库和模型上下文协议(MCP)服务器配合使用。
Teleport 快速入门
Teleport 架构
参考指南
常见问题
Teleport 包含一个身份感知访问代理、一个签发短期证书的 CA、一个统一的访问控制系统,以及一个用于访问防火墙后资源的隧道系统。
Teleport 是一个单一的 Go 二进制文件,可与多种协议和云服务集成,包括
你可以将 Teleport 设置为 Linux 守护进程 或 Kubernetes 部署。
Teleport 专注于基础设施安全的最佳实践,包括:
Teleport 使用 Go crypto。它与 OpenSSH 完全兼容,与 sshd 服务器、ssh 客户端、Kubernetes 集群等兼容。
| 项目链接 | 描述 |
|---|---|
| Teleport 官网 | 该项目的官方网站。 |
| 文档 | 管理员指南、用户手册等。 |
| 功能 | 探索 Teleport 功能的完整列表。 |
| 博客 | 我们发布 Teleport 新闻和实用文章的博客。 |
| 论坛 | 向我们询问设置问题,或发布教程、反馈或想法。 |
| 开发者工具 | 数十种免费的基于浏览器的工具,用于代码处理、密码学、数据转换等。 |
| Teleport 学院 | 操作指南、最佳实践,以及深入探讨 SSH、Kubernetes、MCP 等主题。 |
| Slack | 设置需要帮助?在我们的 Slack 频道中联系我们。 |
| 云与自托管 | Teleport Enterprise 是为需要轻松安全访问其计算环境的团队提供的云托管选项。 |
在 Rackspace 共事期间,Teleport 的创建者注意到,大多数云用户都在为设置和配置基础设施安全而苦恼。许多为此设计的流行工具在现代分布式计算基础设施中难以理解且维护成本高昂。
我们决定构建一个易于使用、易于理解和易于扩展的解决方案。让所有服务器实时呈现在你面前,就像被神奇地传送到了你所在的房间一样。于是,Teleport 诞生了!
如今,从爱好者到超大规模云服务商都信赖 Teleport,它可以简化云 CLI 和控制台、Kubernetes 集群、SSH 服务器、数据库、内部 Web 应用,以及 AI 代理使用的模型上下文协议(MCP)的安全。
我们的目标是从清晰全面的文档开始,让 Teleport 易于采用和贡献。
如果你有问题、正在探索想法,或想验证某些内容,请从 GitHub Discussion 开始。讨论帮助我们回答问题、探索用例,并共同决定某件事是否应成为错误报告或功能请求。
在 Teleport Discussions 中发起对话
这是提问、分享想法和获得帮助的最佳场所。我们的工程师积极参与,当有明确且可操作的下一步时,讨论可以升级为 issue。
Issue 用于已确认的错误和定义明确的功能请求
如果某件事已被验证为错误或增强功能,请随时提交 issue。如有疑问,请先发起讨论,我们会帮助引导。
企业版和 POC 支持
如果你正在评估 Teleport Enterprise,或需要在 POC 期间获得更快速的响应支持,我们可以为你设置一个专门的 Slack 频道。你可以通过我们的网站联系我们开始。
要设置单实例 Teleport 集群,请遵循我们的入门指南。然后,你可以将服务器、Kubernetes 集群和其他基础设施注册到你的 Teleport 集群中。
你也可以从 Teleport Enterprise Cloud 开始,这是一种托管式 Teleport 部署,可以更轻松地为你的基础设施启用安全访问。
注册 Teleport Enterprise Cloud 的免费试用,并按照本指南注册你的第一台服务器。
如果你希望在 Docker 容器中部署 Teleport,请参阅安装指南。
要在本地运行完整的测试套件,请参阅测试依赖项列表
teleport 仓库包含 Teleport 守护进程二进制文件(使用 Go 编写)和一个使用 TypeScript 编写的 Web UI。
如果你的目的是构建并部署到生产环境,应使用已发布的标签。默认分支 master 是即将发布的主版本的当前开发分支。获取 https://goteleport.com/download/ 中列出的最新发布标签,然后在 git clone 中使用该标签。例如,git clone https://github.com/gravitational/teleport.git -b v18.5.0 将获取 v18.5.0 版本。
使用 Docker 构建通常最为简便,这可以确保构建所需的所有工具都可用。要执行 Docker 化构建,请确保 docker 已安装并正在运行,然后执行:``` make -C build.assets build-binaries
此命令将构建与主机架构匹配的 Linux 二进制文件。
无法交叉编译到不同的目标架构。
### 本地构建
#### 依赖项
要从源码构建 Teleport,需要以下依赖项。为了获得最大的兼容性,请使用
[`build.assets/versions.mk`](https://github.com/gravitational/teleport/blob/master/build.assets/versions.mk) 中列出的版本安装这些依赖项:
1. [`Go`](https://golang.org/dl/)
1. [`Rust`](https://www.rust-lang.org/tools/install)
1. [`Node.js`](https://nodejs.org/en/download/)
1. [`libfido2`](https://github.com/Yubico/libfido2)
1. [`pkg-config`](https://www.freedesktop.org/wiki/Software/pkg-config/)
关于 macOS 上开发环境设置的示例,请参阅[这些
说明](https://github.com/gravitational/teleport/blob/master/BUILD_macos.md)。
#### 执行构建
>**重要**
>
>* Go 编译器对内存大小有些敏感:你需要
**至少** 1GB 的虚拟内存来编译 Teleport。一个没有交换空间的 512MB
实例将 **无法** 工作。
>* 这将构建最新版本的 Teleport。
获取源码```shell
git clone https://github.com/gravitational/teleport.git
cd teleport
要执行构建```shell make full
`tsh` 默认动态链接 libfido2,以支持开发环境,只要该库本身能够找到:```shell
$ brew install libfido2 pkg-config # Replace with your package manager of choice
$ make build/tsh
> libfido2 found, setting FIDO2=dynamic
> (...)
发布二进制文件与 libfido2 静态链接。您可以使用
FIDO2 变量切换链接模式:```shell
make build/tsh FIDO2=dynamic # dynamic linking
make build/tsh FIDO2=static # static linking, for an easy setup use make enter
# or build.assets/macos/build-fido2-macos.sh.
make build/tsh FIDO2=off # doesn't link libfido2 in any way
支持 Touch ID 的 `tsh` 构建需要访问 Apple 开发者
账户。如果你是 Teleport 维护者,请向团队申请访问权限。
#### 构建输出与本地运行
如果构建成功,安装程序会将二进制文件放置在 `build`
目录中。
开始之前,请创建默认数据目录:```shell
sudo mkdir -p -m0700 /var/lib/teleport
sudo chown $USER /var/lib/teleport
为了加快开发过程,你可以使用 CompileDaemon 运行 Teleport。每当任何 Go 源文件发生变化时,它都会构建并运行 Teleport 二进制文件,然后重新构建并重启它。