热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

开发笔记:Teleport安装与配置

本文由编程笔记#小编为大家整理,主要介绍了Teleport安装与配置相关的知识,希望对你有一定的参考价值。系统环境#cat/etc/r
本文由编程笔记#小编为大家整理,主要介绍了Teleport安装与配置相关的知识,希望对你有一定的参考价值。



系统环境

# cat /etc/redhat-release
CentOS Linux release 7.4.1708 (Core)
# uname -r
3.10.0-693.21.1.el7.x86_64

安装

下载最新的teleport安装包(teleport-server-linux-x64-3.0.1.6.tar),放到/usr/src目录下并执行下列命令:

# wget http://teleport.eomsoft.net/static/download/teleport-server-linux-x64-3.0.1.6.tar.gz
# tar zxvf teleport-server-linux-x64-3.0.1.6.tar
# cd teleport-server-linux-x64-3.0.1.6.tar
# ./setup.sh

仅需几秒钟,安装就已完成,并且teleport服务也成功启动运行了
技术分享图片
现在,您的堡垒机已经准备就绪,可以访问了






安装完成后的必要设置

请访问 http://您的堡垒机IP地址:7190 进行配置管理。默认管理员账号 admin,默认管理员密码 admin。
安装完成后,请以管理员身份登录,首次安装的系统会进行数据库的创建和初始化操作,完成之后刷新页面即可进入teleport主界面。




Teleport服务的启动与停止

启动teleport服务:

# /etc/init.d/teleport start

停止teleport服务:

# /etc/init.d/teleport stop

重新启动teleport服务:

# /etc/init.d/teleport restart

查看Teleport服务的运行状况:

# /etc/init.d/teleport status



WEB服务设置

默认情况下,teleport的WEB服务使用7190端口,安装后可按如下地址访问:
http://您的堡垒机IP地址:7190
如果您需要更改默认端口号,请修改配置文件(注意,两个配置文件均涉及到web端口,要一并修改)。

# /usr/local/teleport/data/etc/web.ini
# /usr/local/teleport/data/etc/core.ini

重要提示:修改完配置文件后,需要重新启动teleport服务使修改生效!




管理配置



  1. 登录
    管理员账号是 admin,默认密码是 admin。登录后,请第一时间修改管理员密码!!
    技术分享图片
    登录成功,显示主界面
    技术分享图片

  2. 主机管理
    添加主机
    点击添加主机按钮添加单台主机或者根据导入模版批量添加主机
    技术分享图片
    单台主机添加
    技术分享图片
    技术分享图片
    批量添加主机
    技术分享图片
    编辑好主机信息文件后,点击“导入主机和账号”按钮,选择刚刚编辑好的主机信息文件,即可上传到服务器并自动导入到主机列表中。

  3. 账号管理
    远程访问Windows主机一般通过RDP协议(即,远程桌面协议),用户认证方式采用 用户名/密码 方式。
    远程访问Linux主机一般通过SSH,用户认证方式有两种:用户名/密码 和用户名/ SSH密钥认证
    添加账号
    点击账号数,添加主机账号
    技术分享图片
    账号认证方式
    用户名+密码认证
    技术分享图片
    用户名+私钥认证
    技术分享图片

  4. 用户管理
    添加用户
    这里可以添加,删除用户。
    技术分享图片
    用户授权
    技术分享图片

  5. 配置管理
    Teleport核心服务默认端口设置:































监听地址端口号用途备注
localhost52080提供给WEB后台的RPC接口本机跨进程通讯建议不做修改
0.0.0.052089提供RDP跳转服务对外提供RDP跳转服务可以不做修改
0.0.0.052189提供SSH跳转服务对外提供SSH跳转服务可以不做修改

Teleport在默认端口配置下即可正常工作,但是在某些情况下,可能需要修改端口号来匹配您公司的防火墙策略,您可以在配置文件中进行设置。




运维人员日常使用


登录

系统中没有默认的运维人员账号,需要由管理员添加用户,方可登录。新创建的用户,请登录绑定邮箱,获取账号密码,如若忘记密码,可以在登录界面选择忘记密码,输入账号,绑定邮箱,登录绑定邮箱点击重置链接,重新设置登录密码(密码长度不得少于8位,且必须包含字母大小写及数字)
技术分享图片
技术分享图片
技术分享图片


主机管理

技术分享图片


远程连接

远程助手
点击主机信息右侧的“远程”按钮,可以进行远程连接。但是在第一次使用远程连接时,会跳出以下对话框:
技术分享图片
需要下载并运行 远程助手
官网下载地址:http://teleport.eomsoft.net/download
技术分享图片
技术分享图片
安装完成后双击启动它(您可以在系统托盘区看到助手小图标)。启动之后,刷新主机管理页面。
技术分享图片
技术分享图片
技术分享图片
连接主机
点击 远程 按钮,助手会打开对应的客户端软件进行远程连接。
SSH:
技术分享图片
RDP:
技术分享图片
助手设置
助手设置默认的SSH连接和Telnet连接是Putty,SFTP连接是WinSCP,RDP连接是FreeRDP。
点击红框内的助手设置可以选择其他连接工具代替。
技术分享图片
技术分享图片
完成后保存即可


安装mysql(用mysql替代默认的sqlite数据库)

# yum install -y mariadb mariadb-devel mariadb-server

运行mysql

# systemctl start mariadb

设置开机启动

# systemctl enable mariadb

初始化设置账号密码

mysql_secure_installation

root初始密码为空,设置root密码并禁止root远程登陆,删除guest等
技术分享图片


设置mysql字符集

# vim /etc/my.cnf

在[mysqld]标签下添加

init_cOnnect=‘SET collation_cOnnection= utf8_unicode_ci‘
init_cOnnect=‘SET NAMES utf8‘
character-set-server=utf8
collation-server=utf8_unicode_ci
skip-character-set-client-handshake

技术分享图片

# vim /etc/my.cnf.d/client.cnf

在[client]中添加

default-character-set=utf8

技术分享图片

# vim /etc/my.cnf.d/mysql-clients.cnf

在[mysql]中添加

default-character-set=utf8

技术分享图片
重启mysql

# systemctl restart mariadb

进入mysql查看是否配置正确

> show variables like "%character%";show variables like "%collation%";

技术分享图片


建立数据库账号及实例

建立数据库新用户(teleport)

> create user [email protected] identified by ‘123456‘;

建立新实例(teleport)

> create database teleport;

赋予用户权限

> grant all privileges on teleport.* to [email protected] identified by ‘123456‘ with grant option;

用户名是teleport,密码是123456.
接下来我们需要更改配置文件将mariadb数据库的一些信息填入。
配置文件的默认路径是/usr/local/teleport/data/etc,我们需要编辑文件web.ini.

# cp /usr/local/teleport/data/etc/web.ini /usr/local/teleport/data/etc/web.ini.bak #先备份配置文件

编辑配置文件web.ini
技术分享图片
重启teleport:

# /etc/init.d/teleport restart

常见问题FAQ



  • rdp客户端连接win2008以上服务器失败,日志提示“协议不支持”
    解决办法:
    服务器端打开 计算机-属性-远程设置,将默认的“仅允许运行使用网络级别身份验证的远程桌面的计算机连接”,更改为“允许运行任意版本远程桌面的计算机连接” 即可正常连接
    如下图红框,取消该项目的的勾选
    技术分享图片

  • 将web界面运行在80端口后无法正常查看log录像(此问题已在3.0.1.6版本修正)
    问题原因:原软件bug,由于80端口默认不显示,服务器取不到端口值导致
    解决办法:

    vim /usr/local/teleport/www/teleport/static/js/ui/log.js

    if (protocol === PROTOCOL_TYPE_RDP) {
    $(cell_obj).find(‘[ywl-btn-record]‘).click(function () {
    var ip = window.location.hostname;
    var port = parseInt(window.location.port);
    var url = ‘http://‘ + ip + ‘:‘ + port + ‘/log/replay/rdp/‘ + row_data.id;
    var tail = ‘log/replay/rdp/‘ + prefixInteger(row_data.id, 6);
    var args = {};
    args.id = parseInt(row_data.id);
    args.host = ip;
    args.port = port;
    args.tail = tail;
    args.url = url;
    start_rdp_replay(args,
    function () {
    ywl.notify_success(‘RDP 录像播放器成功启动!‘);
    },
    function (code, msg) {
    if (code === TPE_NO_ASSIST)
    g_assist.alert_assist_not_found();
    else {
    ywl.notify_error(msg);
    console.log(‘error:‘, msg)
    }
    });
    });

    将代码中的
    args.port = port
    改为
    if(port){
    args.port = port;}
    else{
    args.port = 80;}

    业务迁移

    因业务需求,需要将原有teleport迁移到新的虚拟机,其思路如下:环境配置+数据库导出导入,若是阿里云机器,还需要放开对应的端口


  • 第一步、配置环境,具体步骤如上述,确保数据库名称及密码跟原机器一样

  • 第二步、导出数据库文件

    # mysqldump -uroot -p teleport > teleport.sql

    可以将导出的数据库文件下载到本地后再上传到新机器,或者通过命令scp teleport.sql [email protected]:/root传到新的机器上(确保两台台机器是互通的)


  • 第三步、导入数据文件到新机器

    # mysql -uroot -p teleport

    nginx反向代理

    添加反向代理


  • 安装nginx

    # yum install -y nginx

    添加nginx代理配置文件ops.conf,

    vim /etc/nginx/conf.d/ops.conf

    ...略
    server
    {
    listen 80;
    location /
    {
    proxy_pass http://x.x.x.x:7190;
    proxy_set_header Host $http_host;
    proxy_set_header X-Forwarded-Host $host;
    proxy_set_header X-Forwarded-Server $host;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    }
    }

    保存,重启nginx。浏览器输入地址:http://IP地址 即可




推荐阅读
  • 本文介绍了在Windows环境下如何配置php+apache环境,包括下载php7和apache2.4、安装vc2015运行时环境、启动php7和apache2.4等步骤。希望对需要搭建php7环境的读者有一定的参考价值。摘要长度为169字。 ... [详细]
  • 本文介绍了Python高级网络编程及TCP/IP协议簇的OSI七层模型。首先简单介绍了七层模型的各层及其封装解封装过程。然后讨论了程序开发中涉及到的网络通信内容,主要包括TCP协议、UDP协议和IPV4协议。最后还介绍了socket编程、聊天socket实现、远程执行命令、上传文件、socketserver及其源码分析等相关内容。 ... [详细]
  • 搭建Windows Server 2012 R2 IIS8.5+PHP(FastCGI)+MySQL环境的详细步骤
    本文详细介绍了搭建Windows Server 2012 R2 IIS8.5+PHP(FastCGI)+MySQL环境的步骤,包括环境说明、相关软件下载的地址以及所需的插件下载地址。 ... [详细]
  • Java序列化对象传给PHP的方法及原理解析
    本文介绍了Java序列化对象传给PHP的方法及原理,包括Java对象传递的方式、序列化的方式、PHP中的序列化用法介绍、Java是否能反序列化PHP的数据、Java序列化的原理以及解决Java序列化中的问题。同时还解释了序列化的概念和作用,以及代码执行序列化所需要的权限。最后指出,序列化会将对象实例的所有字段都进行序列化,使得数据能够被表示为实例的序列化数据,但只有能够解释该格式的代码才能够确定数据的内容。 ... [详细]
  • 本文介绍了如何使用php限制数据库插入的条数并显示每次插入数据库之间的数据数目,以及避免重复提交的方法。同时还介绍了如何限制某一个数据库用户的并发连接数,以及设置数据库的连接数和连接超时时间的方法。最后提供了一些关于浏览器在线用户数和数据库连接数量比例的参考值。 ... [详细]
  • 图解redis的持久化存储机制RDB和AOF的原理和优缺点
    本文通过图解的方式介绍了redis的持久化存储机制RDB和AOF的原理和优缺点。RDB是将redis内存中的数据保存为快照文件,恢复速度较快但不支持拉链式快照。AOF是将操作日志保存到磁盘,实时存储数据但恢复速度较慢。文章详细分析了两种机制的优缺点,帮助读者更好地理解redis的持久化存储策略。 ... [详细]
  • 如何在服务器主机上实现文件共享的方法和工具
    本文介绍了在服务器主机上实现文件共享的方法和工具,包括Linux主机和Windows主机的文件传输方式,Web运维和FTP/SFTP客户端运维两种方式,以及使用WinSCP工具将文件上传至Linux云服务器的操作方法。此外,还介绍了在迁移过程中需要安装迁移Agent并输入目的端服务器所在华为云的AK/SK,以及主机迁移服务会收集的源端服务器信息。 ... [详细]
  • Oracle优化新常态的五大禁止及其性能隐患
    本文介绍了Oracle优化新常态中的五大禁止措施,包括禁止外键、禁止视图、禁止触发器、禁止存储过程和禁止JOB,并分析了这些禁止措施可能带来的性能隐患。文章还讨论了这些禁止措施在C/S架构和B/S架构中的不同应用情况,并提出了解决方案。 ... [详细]
  • 本文介绍了Hyperledger Fabric外部链码构建与运行的相关知识,包括在Hyperledger Fabric 2.0版本之前链码构建和运行的困难性,外部构建模式的实现原理以及外部构建和运行API的使用方法。通过本文的介绍,读者可以了解到如何利用外部构建和运行的方式来实现链码的构建和运行,并且不再受限于特定的语言和部署环境。 ... [详细]
  • 本文介绍了RPC框架Thrift的安装环境变量配置与第一个实例,讲解了RPC的概念以及如何解决跨语言、c++客户端、web服务端、远程调用等需求。Thrift开发方便上手快,性能和稳定性也不错,适合初学者学习和使用。 ... [详细]
  • 本文介绍了Web学习历程记录中关于Tomcat的基本概念和配置。首先解释了Web静态Web资源和动态Web资源的概念,以及C/S架构和B/S架构的区别。然后介绍了常见的Web服务器,包括Weblogic、WebSphere和Tomcat。接着详细讲解了Tomcat的虚拟主机、web应用和虚拟路径映射的概念和配置过程。最后简要介绍了http协议的作用。本文内容详实,适合初学者了解Tomcat的基础知识。 ... [详细]
  • 从零学Java(10)之方法详解,喷打野你真的没我6!
    本文介绍了从零学Java系列中的第10篇文章,详解了Java中的方法。同时讨论了打野过程中喷打野的影响,以及金色打野刀对经济的增加和线上队友经济的影响。指出喷打野会导致线上经济的消减和影响队伍的团结。 ... [详细]
  • 本文介绍了在mac环境下使用nginx配置nodejs代理服务器的步骤,包括安装nginx、创建目录和文件、配置代理的域名和日志记录等。 ... [详细]
  • Linux如何安装Mongodb的详细步骤和注意事项
    本文介绍了Linux如何安装Mongodb的详细步骤和注意事项,同时介绍了Mongodb的特点和优势。Mongodb是一个开源的数据库,适用于各种规模的企业和各类应用程序。它具有灵活的数据模式和高性能的数据读写操作,能够提高企业的敏捷性和可扩展性。文章还提供了Mongodb的下载安装包地址。 ... [详细]
  • Centos7搭建ELK(Elasticsearch、Logstash、Kibana)教程及注意事项
    本文介绍了在Centos7上搭建ELK(Elasticsearch、Logstash、Kibana)的详细步骤,包括下载安装包、安装Elasticsearch、创建用户、修改配置文件等。同时提供了使用华为镜像站下载安装包的方法,并强调了保证版本一致的重要性。 ... [详细]
author-avatar
手机用户2602906305_849
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有