[转帖]把SSH客户端放在网页上运行?这个开源项目教你部署实现

ssh,客户端,放在,网页,运行,这个,开源,项目,部署,实现 · 浏览次数 : 0

小编点评

**使用docker部署SSH服务** **步骤 1:下载镜像文件** 使用以下命令下载docker镜像文件: ``` curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun ``` **步骤 2:验证docker安装** 运行以下命令检查docker是否已安装和运行: ``` docker --version systemctl status docker ``` **步骤 3:设置证书和公钥** 创建一个名为`domain.key`和`domain.crt`的文件,分别存放证书和公钥。 使用以下命令设置证书和公钥: ``` openssl req -newkey rsa:4096 -nodes -keyout domain.key -x509 -days 90 -out domain.crt ``` **步骤 4:启动SSH服务** 运行以下命令启动SSH服务: ``` docker run --detach --restart always --publish 8182:8182 --env SSHWIFTY_DOCKER_TLSCERT=\"$(cat domain.crt)\" --env SSHWIFTY_DOCKER_TLSCERTKEY=\"$(cat domain.key)\" --name sshwifty --image niruix/sshwifty:latest ``` **步骤 5:放行防火墙端口** 由于SSH服务默认端口为8182,需要在防火墙上开放该端口。 使用以下命令允许8182端口的tcp端口: ``` firewall-cmd --add-port --zone=public --permanentfirewall-cmd --reload ``` **步骤 6:访问SSH服务** 使用浏览器在设备上访问`localhost:8182`。 如果一切正常,您应该能够正常连接到服务器。

正文

https://zhuanlan.zhihu.com/p/420301596

 

 

有时候为了管理服务器,又不想去下载各种各样的客户端,只是想在ipad、手机上操作一下,这款SSH开源客户端工具一定适合你,运行在网页端,只要有浏览器的设备就能访问使用。

环境准备

我们的主角依然是docker,采用最方便的一键脚本安装方式。(本次演示使用CentOS 7来部署)

# 适用于CentOS/RHEL 7及以上操作系统
curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun

# 适用于Ubuntu类发行版Linux 
curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun

运行完毕后,验证docker是否正常启动。

# 查看docker版本
[root@master ~]# docker --version
Docker version 20.10.9, build c2ea9bc

# 查看运行状态
[root@master ~]#systemctl status docker

如果显示为绿色的active,则表示docker已经成功安装并正常运行

部署Web SSH服务 首先生成证书与公钥文件,用于连接的加密。

openssl req \
  -newkey rsa:4096 -nodes -keyout domain.key -x509 -days 90 -out domain.crt
# 运行以下命令,开始部署
docker run --detach \
  --restart always \
  --publish 8182:8182 \
  --env SSHWIFTY_DOCKER_TLSCERT="$(cat domain.crt)" \
  --env SSHWIFTY_DOCKER_TLSCERTKEY="$(cat domain.key)" \
  --name sshwifty \
  niruix/sshwifty:latest

如果无正常报错,则部署成功。第一次部署的话,会下载镜像文件。

此服务占用8182端口,我们查看一下端口的监听状态,为LISTEN正常监听。

[root@master ~]# netstat -antpu | grep 8182
tcp        0      0 0.0.0.0:8182            0.0.0.0:*               LISTEN      28474/docker-proxy
tcp6       0      0 :::8182                 :::*                    LISTEN      28480/docker-proxy
[root@master ~]#
放行防火墙端口 我们需要在防火墙下放行8182的tcp端口,并使其永久生效,如果不考虑安全,也可以关闭防火墙。
# 放行8182 tcp端口
firewall-cmd --add-port --zone=public --permanent
firewall-cmd --reload

# 可选:直接关闭防火墙,允许所有端口通过
systemctl stop firewalld
# 不自启动
systemctl disable firewalld

尝试访问一下,用我们主机的来访问。

如果你的浏览器出现非私人连接,请在高级里选择继续访问即可,因为我们证书是由我们手动生成而非签发,如需规避这个问题,正常使用https可去一些证书签发网站搭配域名一起使用。

简单使用

点击页面上的+号,可以新建一个连接,支持ssh和telnet协议

使用ssh来连接一台我们的服务器,填写用户名和主机ip。

选择yes后输入密码。

登录成功,体给很流畅,尽情玩耍吧~

如需获得开源项目地址,请私信。

与[转帖]把SSH客户端放在网页上运行?这个开源项目教你部署实现相似的内容:

[转帖]把SSH客户端放在网页上运行?这个开源项目教你部署实现

https://zhuanlan.zhihu.com/p/420301596 有时候为了管理服务器,又不想去下载各种各样的客户端,只是想在ipad、手机上操作一下,这款SSH开源客户端工具一定适合你,运行在网页端,只要有浏览器的设备就能访问使用。 环境准备 我们的主角依然是docker,采用最方便的

[转帖]自动化配置SSH免密登录和取消SSH免密配置脚本

1. 前文 搭建了一套有多台主机的局域网环境,不完全考虑安全性的情况下,为方便管理局域网内主机,配置SSH免密登录,因主机较多,前阵子针对配置ssh免密和取消ssh免密功能单独写了脚本来自动化批量部署,现把两个功能封装在一起做成交互式程序 2.实现代码 #!/bin/bash #Author:cos

[转帖]ssh 远程执行命令

https://www.cnblogs.com/youngerger/p/9104144.html SSH 是 Linux 下进行远程连接的基本工具,但是如果仅仅用它来登录那可是太浪费啦!SSH 命令可是完成远程操作的神器啊,借助它我们可以把很多的远程操作自动化掉!下面就对 SSH 的远程操作功能进

[转帖]把VIM打造成一个真正的IDE(1)

http://www.vimer.cn/2009/10/15/ba-vimda-zao-cheng-yi-ge-zhen-zheng-de-ide-1/ 这里所说的IDE主要是指C/C++开发,但是由于笔者之前也搞java和c#开发,所以对这两种语言也会有所兼顾。 这个话题可能要分好几篇文章来写了,

[转帖]把VIM打造成一个真正的IDE(2)

作者是 Dante 发布于 2009年10月17日 in Vim. OK,上一篇文章,我们已经配置好了一个可以正常使用的VIM,那么在我们真正来到程序员的VIM世界之前,希望你能在VIM里面再多加下面几个配置。 set go= "无菜单、工具栏 对,让我真正抛弃鼠标,进入美妙的VIM之旅吧! 首先说

[转帖]把大象装入货柜里——Java容器内存拆解

https://blog.mygraphql.com/zh/notes/java/native-mem/java-native-mem-case/ 介绍 测试环境 配置容量 POD 容量配置 JVM 容量配置 神秘的 MaxDirectMemorySize 默认值 maxThreadCount 最大

[转帖]把Windows打造成一个NTP时间同步服务器

https://zhuanlan.zhihu.com/p/453366437 起因是这样的,在项目中有一个机器人是使用的ARM版本的Ubuntu操作系统,但是它上面没有纽扣电池用于保存时间,因此每次重启后时间错误,需要手动校正,非常麻烦。所以使用NTP来同步服务器时间,但并没有公网环境,且局域网中只

[转帖]美国把龙芯列入黑名单没有什么用

https://baijiahao.baidu.com/s?id=1759406814932648369 美国商务部周四在黑名单中又增加了28家中国实体,龙芯中科名列其中,理由仍是“威胁美国国家安全”之类的陈词滥调。谁都知道龙芯迟早会被美国制裁,只是笔者以为应该是在半年之后…… 笔者难以理解,龙芯是

[转帖]s3fs把 s3-like 对象存储挂载到本地

https://www.cnblogs.com/hiyang/p/12631908.html s3fs-fuse 是一个采用 c++🚀 开发的开源应用,它的作用是可以将 AWS S3 以及兼容 S3 API 的第三方对象存储像普通文件系统一样挂载到本地计算机,由于这种功能通过 FUSE 实现,因此

[转帖]s3fs把 s3-like 对象存储挂载到本地

s3fs把 s3-like 对象存储挂载到本地 s3fs把 s3-like 对象存储挂载到本地 s3fs-fuse 是一个采用 c++🚀 开发的开源应用,它的作用是可以将 AWS S3 以及兼容 S3 API 的第三方对象存储像普通文件系统一样挂载到本地计算机,由于这种功能通过 FUSE 实现,因