Next Terminal堡垒机,使用Golang和React开发的一款HTML5的远程桌面网关,也是一个简单好用且安全的开源交互审计系统,支持RDP、SSH、VNC、Telnet、Kubernetes协议。对于手上有很多服务器的用户,且由于国内网络环境复杂,导致在我们在本地SSH连接到服务器时不时因为网络问题中断,通过跳板机来管理服务器不失为一种很好的办法,这里说明下Next Terminal堡垒机的安装配置。
官方提供原生安装和通过docker安装两种方式,提供的安装教程稍有些简陋,本文主要介绍原生安装方式并对其略加详细描述,基于Centos7系统;文章源自技术白-https://jishubai.com/879.html
官方文档地址:https://next-terminal.typesafe.cn/docs/文章源自技术白-https://jishubai.com/879.html
安装 Apache Guacamole-Server
1、执行安装命令文章源自技术白-https://jishubai.com/879.html
yum install -y epel-release yum install -y libguac-client-kubernetes \ libguac-client-rdp \ libguac-client-ssh \ libguac-client-telnet \ libguac-client-vnc \ guacd
2、配置 guacd 服务文章源自技术白-https://jishubai.com/879.html
mkdir /etc/guacamole/ && cat <<EOF >> /etc/guacamole/guacd.conf [daemon] pid_file = /var/run/guacd.pid log_level = info [server] # 监听地址 bind_host = 127.0.0.1 bind_port = 4822 EOF
3、为了避免权限问题导致错误修改使用 root 用户启动guacd服务,执行 vi /usr/lib/systemd/system/guacd.service
编辑文件,注释掉 User 和 Group 这两行;文章源自技术白-https://jishubai.com/879.html
[Unit] Description=Guacamole proxy daemon Documentation=man:guacd(8) After=network.target [Service] EnvironmentFile=-/etc/sysconfig/guacd Environment=HOME=/var/lib/guacd ExecStart=/usr/sbin/guacd -f $OPTS Restart=on-failure LimitNOFILE=1048576 # User=guacd # Group=guacd [Install] WantedBy=multi-user.target
4、启动 guacd 服务,执行启动命令和开机自启命令;文章源自技术白-https://jishubai.com/879.html
# 重载服务 systemctl daemon-reload # 开机自启 systemctl enable guacd # 启动服务 systemctl start guacd # 查看状态 systemctl status guacd
安装字体(SSH使用)
1、安装字体管理软件文章源自技术白-https://jishubai.com/879.html
yum install -y fontconfig mkfontscale
2、下载字体文件并移动到 /usr/share/fonts/目录下文章源自技术白-https://jishubai.com/879.html
cd /usr/share/fonts/
# 下载英文字体
wget https://gitee.com/dushixiang/next-terminal/raw/master/guacd/fonts/Menlo-Regular.ttf
# 下载中文字体
wget https://gitee.com/dushixiang/next-terminal/raw/master/guacd/fonts/SourceHanSansCN-Regular.otf
3、更新字体文章源自技术白-https://jishubai.com/879.html
mkfontscale
mkfontdir
fc-cache
安装 Next Terminal
1、下载next terminal文件并解压文章源自技术白-https://jishubai.com/879.html
cd wget https://gitee.com/dushixiang/next-terminal/releases/download/v1.3.3/next-terminal.tar.gz tar -zxvf next-terminal.tar.gz -C /usr/local/
2、输入 cd /usr/local/next-terminal && vi config.yml
命令修改配置文件,把下列代码复制粘贴进去;
db: sqlite
# 当db为sqlite时mysql的配置无效
#mysql:
# hostname: 172.16.101.32
# port: 3306
# username: root
# password: mysql
# database: next-terminal
# 当db为mysql时sqlite的配置无效
sqlite:
file: 'next-terminal.db'
server:
addr: 0.0.0.0:8088
# 当设置下面两个参数时会自动开启https模式(前提是证书文件存在)
# cert: /root/next-terminal/cert.pem
# key: /root/next-terminal/key.pem
# 授权凭证和资产的密码,密钥等敏感信息加密的key,默认`next-terminal`
#encryption-key: next-terminal
guacd:
hostname: 127.0.0.1
port: 4822
# 此路径需要为绝对路径,并且next-terminal和guacd都能访问到
recording: '/usr/local/next-terminal/data/recording'
# 此路径需要为绝对路径,并且next-terminal和guacd都能访问到
drive: '/usr/local/next-terminal/data/drive'
sshd:
# 是否开启sshd服务
enable: false
# sshd 监听地址,未开启sshd服务时此配置不会使用
addr: 0.0.0.0:8089
# sshd 使用的私钥地址,未开启sshd服务时此配置不会使用
key: ~/.ssh/id_rsa
3、使用系统服务方式启动,执行以下命令创建 next-terminal 系统服务文件
cat <<EOF >> /etc/systemd/system/next-terminal.service
[Unit]
Description=next-terminal service
After=network.target
[Service]
User=root
WorkingDirectory=/usr/local/next-terminal
ExecStart=/usr/local/next-terminal/next-terminal
Restart=on-failure
LimitNOFILE=1048576
[Install]
WantedBy=multi-user.target
EOF
4、启动 Next-Terminal 服务,执行启动和开机启动命令
# 重载服务
systemctl daemon-reload
# 开机启动
systemctl enable next-terminal
# 启动服务
systemctl start next-terminal
# 查看状态
systemctl status next-terminal
5、访问Next-Terminal,在浏览器输入 服务器IP地址:8088
即可打开,如果打不开请检查Next-Terminal运行状态和8088端口开放状态,默认账户和密码:admin/admin
配置反向代理:默认Next-Terminal采用IP+端口访问,这样不是很美观也没有https,这时候可以配置个域名进行反代来通过域名访问,开启 https 后可无缝同步系统粘贴板,需要配置的参考:【网站管理】Nginx配置-CDN加速/反向代理图文教程 ;
- 本站TG群组:skill_blog 联系博主:nbskill (微信协助) 苹果ID号:曙光商店