传送6.0:数据库访问简单

2021-03-30 07:59:07

传送是一个开源,身份感知,具有集成证书颁发机构的访问代理。人们一直在使用传送用于SSH访问,Kubernetes集群以及传送6.0您获得数据库访问(后期和MySQL)。

在本教程中,我将向您展示如何从托管MySQL数据库的划痕(我也显示数据库安装)。

导出IP = {Ip for instans} #in我的案例导出IP = 212.2.240.196传送配置--acme [email protected] - cluster-name = magic-$ ip.nip.io - -output =" /etc/teleport.yaml"写入配置文件" /etc/teleport.yaml"现在您可以启动服务器。快乐传送!

systemctl start teleport systemctl启用teleport systemctl status传送tctl用户添加传送admin - rools = admin --logins = root用户" teleport-admin"已创建但需要密码。与用户共享此URL以完成用户设置,链接有效为1H:https://magic-212.2.240.196.nip.io:443/web/invite/b39e7b128d3243c6c10407b06d27be26注意:确保Magic-212.2.20.196.nip。 IO:用户可以访问的Teleport代理443分。

vi /etc/teleport.yaml #add下面是粗体proxy_service:启用:"是" listence_addr:0.0.0.0:3023 web_listen_addr ::443 public_addr:magic-212.2.240.196.nip.io:443 mysql_listen_addr:0.0.0.0:3036

#导出传送和#39; s证书颁发机构,并为主机db.example.com生成证书/密钥对#,具有一年的有效期。 tctl auth sign --format = db - host = localhost --out = server --ttl = 8760h已写入server.key,server.crt,server.cas

mysql>创建用户'爱丽丝' @'%'要求X509;查询OK,影响0行(0.00秒)MySQL>改变用户'爱丽丝' @'%'要求X509;查询OK,影响0行(0.00秒)MySQL>授予所有人`。*' alice' @'%&#39 ;;查询OK,影响0行(0.00秒)

step8:为要加入的数据库服务创建令牌(下面的命令应该在传送实例上运行)

tctl令牌add \ - type = db \ --db-name = mysql \ --db-protocol = mysql \ --db-uri = localhost:3306邀请令牌:30b936383ccd1d117d9315770c08a63c。这个令牌将在60分钟内到期。在节点上填写并运行此命令以开始代理数据库:>瞬移启动\ --roles = DB \ --token = 30b936383ccd1d117d9315770c08a63c \ --ca针= SHA256:0cff619a5e66cb079cbb6110ec884424e5a5d47f16e13b8855344889568b5770 \ --auth服务器= magic-212.2.240.196.nip.io:443 \ --db名= mysql的\ - 协议= mysql \ --db-uri = localhost:3306

您可以使用上面的令牌并使用仅使用令牌(https://goteleport.com/docs/ver/6.1/database/guides/mysqloSted /#start-database-service-with-config-file)

或者,您可以使用上述命令的输出并在数据库实例上运行它。

step9:在数据库实例上安装传送,然后从上面的命令运行输出

传送启动\> - rools = db \> --Token = 30b936383ccd1d117d9315770c08a63c \> - CO-PIN = SHA256:0CFF619A5E66CB079CBB6110EC884424CA5A5D47F16E13B88555344889568B5770 \> --auth-server = magic-212.2.240.196.nip.io:443 \> --db-name = mysql \> --db-protocol = mysql \> --db-uri = localhost:3306信息[proc:1]连接到群集Magic-2.2.240.196.nip.io与TLS客户端证书。服务/ Connect.Go:128 Info [审核:1]创建目录/ var / lib / teleport / log。服务/服务。:1895信息[审计:1]创建目录/ var / lib / teleport / log /上传。服务/服务。:1895信息[审计:1]创建目录/ var / lib / teleport / log /上传/会话。服务/服务。:1895信息[审计:1]创建目录/ var / lib / teleport / log /上传/会话/默认值。服务/服务。:1895信息[审计:1]创建目录/ var / lib / teleport / log。服务/服务。:1895信息[审计:1]创建目录/ var / lib / teleport / log /上传。服务/服务。:1895信息[审计:1]创建目录/ var / lib / teleport / log /上载/流。服务/服务。:1895信息[审计:1]创建目录/ var / lib / teleport / log /上载/流/默认。服务/服务。服务/ DB.GO:205

从UI登录到Teleport服务器后启动终端会话。您还可以在Teleport实例上使用TSH登录以作为特定用户登录。

现在让我们尝试访问在数据库实例上运行的MySQL数据库:

root @ teleport-9cd889ac:〜#tsh db ls名称描述标签连接---------- ----------------------------- ---------------------------------------------------------------- ---------------------------------------------------------------------- root@ teleport-9cd889ac :〜#tsh db登录mysql数据库的MySQL连接信息" Magic-212.2.20.196.nip.io-mysql"已被保存。您现在可以使用以下命令连接到数据库:$ mysql --defaults-group-suffix = _magic-212.2.240.196.nip.io-mysql或配置环境变量和使用常规CLI标志:$ eval $(TSH DB ENV )$ mysql root@ teleport-9cd889ac:〜#tsh db ls名称描述标签连接---------- ----------------- ---------------------------------------------------------------- --------------------------------------- mysql mysql --defaults-group-suffix = _magic-212.2.240.196.nip.io-mysql -User =< User> --database =<数据库> root @ teleport-9cd889ac:〜#mysql --defaults-group-suffix = _magic-212.2.240.196.nip.io-mysql -User = Alice --Database = MySQL阅读表信息,您可以完成表和列名称的表格和列名称关闭此功能以获得更快的启动-a欢迎光临MySQL Monitor。命令结束;或\ g。您的MySQL连接ID是10027服务器版本:8.0.0-Teleport(Ubuntu)版权所有(c)2000,2021,甲骨文和/或其附属公司。 Oracle是Oracle Corporation和/或其关联公司的注册商标。其他名称可能是其各自所有者的商标。类型'帮助;'或#39; \ h'求助。类型' \ c'清除当前输入语句。 mysql>显示数据库; + ------------------- + |数据库| + ------------------- + | Information_Schema | | mysql | | performance_schema | | sys | + ------------------ + 4行集合(0.00秒)

如您所见,用户可以从传送器建立MySQL服务器连接。多么酷啊 !!!!

在简单的10个步骤中,我能够设置传送,创建用户,创建数据库并从Teleport UI连接到数据库。可选地,您还可以创建RBAC作为传送支持RBAC,因此您可以为数据库创建DB角色,并相应地创建具有该角色的用户。文档要创建RBAC:https://goteleport.com/docs/ver/6.1/database-access/guides/mysql-self-hosted/#create- role-and-user