生活不只是眼前的苟且,还有诗和远方!

【Docker镜像推荐】GateOne —— 高效的WebSSH工具

0. 一堆废话

最近我也一直在这些事情上饱受折磨:

  • 有的时候需要连接SSH,但却没有SSH客户端 (比如Xshell)
  • 装个客户端太麻烦,还经常踩中丁丁的坑
  • 有的环境,人家不想让你乱装软件

那么,有没有一种能够在Web上就可以部署的SSH方案呢?

答案是,Docker镜像 liftoff/gateone !

先上个效果图:

《【Docker镜像推荐】GateOne —— 高效的WebSSH工具》

是不是感觉很方便?

而且常用的按键,GateOne都支持:

  • Shift+Insert 粘贴
  • Ctrl+A+D 登出
  • Ctrl+C 中断
  • (还有其他常用的命令)

1. 部署教程

由于官方的镜像基于Debian Linux制作而成,体积相对较大(312MB),建议先使用docker pull命令拉取镜像到本地,然后再启动镜像!
安装Docker
curl -sSL https://get.docker.com/ | sh
service docker start

部署方法非常简单,首先,我们先拉取镜像:

docker pull liftoff/gateone

然后等待镜像拉取结束后,使用以下命令行启动镜像:

docker run [-d/-t] -p [443]:8000 -h [hostname] --name gateone liftoff/gateone gateone

命令行的说明:

-d/-t:决定镜像是使用Deamon(后台)模式启动,或者显示启动过程
-p 443:8000:绑定端口,注意:GateOne强制使用SSL,8000端口为Docker容器内的固定映射端口,请只改动冒号前面的端口,不要动后面的端口号!
-h hostname:设置Docker容器的主机名(这个将会显示在你的浏览器标题中,想个好的主机名)
–name gateone:设置Docker容器的名称(不是主机名),用来docker ps时识别用
liftoff/gateone:镜像名称,勿动
gateone:启动命令行,勿动(默认命令行会发生Python io_loop报错,故使用此命令行来避免错误)

然后访问你的浏览器地址:

https://gateone.your-domain.com:6001/
注意:https前缀不要丢掉,GateOne默认使用自签证书,会报SSL证书错误,无视即可,下面的教程会介绍如何集成自己的证书;域名部分请替换成你自己的域名或者IP;端口号和你前面启动参数中暴露的端口保持一致!

2. 导入自己的SSL证书 (可选)

如果你有自己的SSL证书,并且你想要将其与你的GateOne相结合的话,可以接着往下操作:

首先,结束掉你之前运行的GateOne容器:

docker kill gateone

然后,创建一个Dockerfile文件(文件名就叫Dockerfile,没有后缀名,严格区分大小写),写入以下内容:

FROM liftoff/gateone

ADD gateone-ssl/certificate.pem /etc/gateone/ssl/certificate.pem
ADD gateone-ssl/keyfile.pem /etc/gateone/ssl/keyfile.pem

CMD [ "gateone" ]

然后和Dockerfile同目录创建gateone-ssl文件夹,将你的证书和密钥导入:

mkdir gateone-ssl
cd gateone-ssl
vim certificate.pem
(导入你的证书)
vim keyfile.pem
(导入你的密钥)
cd ..

确认密钥无误后,执行命令:

docker build --t="gateone-ssl" .
上面的命令,请注意后面有个英文句号(点),不要忽略掉!

当出现Successfully Built即重建成功。

启动镜像

执行命令:

如果最后一步出现 "/gateone" is already in use by container错误,请先使用命令:

以上就是GateOne搭建和开启SSL访问的全部过程,过程很简单明了。安装完成后就可以输入IP、端口、用户名、密码访问你的服务器了。

本文出自:https://blog.ilemonrain.com/docker/liftoff-gateone.html

https://www.0513c.com/brs4zezhctmw.html

点赞

发表评论

电子邮件地址不会被公开。 必填项已用*标注

This site uses Akismet to reduce spam. Learn how your comment data is processed.