平时需要软件厂家技术支持时一直使用向日葵、Todesk等远程工具到服务器操作,但是这些工具在多台服务器和需要多个厂家维护的时候很不方便,没有权限分配和审计日志功能。
在网上找到Next Terminal这个工具,免费开源,支持RDP、SSH等协议,可以直接通过浏览器访问,无需再安装软件,而且支持审计,记录登录操作日志。
在任意位置创建文件夹 next-terminal,然后在此文件夹下创建 docker-compose.yml
1 mkdir next-terminal
2 cd next-terminal
3 touch docker-compose.yml
写入如下内容:
version: '3.3'
services:
guacd:
image: dushixiang/guacd:latest
volumes:
- ./data:/usr/local/next-terminal/data
restart:
always
next-terminal:
image: dushixiang/next-terminal:latest
environment:
DB: sqlite
GUACD_HOSTNAME: guacd
GUACD_PORT: 4822
ports:
- "8088:8088"
volumes:
- /etc/localtime:/etc/localtime
- ./data:/usr/local/next-terminal/data
restart:
always
# 后台启动
docker-compose up -d
# 更新
docker-compose pull && docker-compose restart
nginx等web服务器反向代理next-terminal使用,一是可有效避免伪造IP绕过系统限制,二是开启https后可无缝同步系统粘贴板。
通过nginx配置好vhost和ssl后,在nginx配置文件,添加以下配置
location / {
proxy_pass http://127.0.0.1:8088/;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection $http_connection;
}
默认账户密码 admin/admin 登录系统 Next Terminal
登录后操作步骤:
Linux默认的SSH端口是22,为了安全性就需要修改掉默认的SSH端口号,防止被穷举密码。禁止root登录,新建普通用户登录。
1 vim /etc/ssh/sshd_config
找到 Port 22 改成 Port 10086
# 重启ssh
1 /etc/init.d/ssh restart
# 添加防火墙,放行10086端口
2 iptables -A INPUT -p tcp --dport 10086 -j ACCEPT
1 useradd username #新建用户
2 passwd username #设置密码
3 sed -i 's/#PermitRootLogin yes/PermitRootLogin no/g' /etc/ssh/sshd_config #设置禁止root登陆
4 /etc/init.d/ssh restart #重启SSH
建议同时设置更强的密钥登录提升安全性