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

简介: 把SSH客户端放在网页上运行?这个开源项目教你部署实现

有时候为了管理服务器,又不想去下载各种各样的客户端,只是想在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已经成功安装并正常运行


image.png


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

openssl req \
  -newkey rsa:4096 -nodes -keyout domain.key -x509 -days 90 -out domain.crt

image.png


# 运行以下命令,开始部署
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

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


image.png


此服务占用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://IP:8182来访问。


image.png


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


image.png

简单使用

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

image.png

image.png

image.png

如需获得开源项目地址,请私信回复102

相关文章
|
1月前
|
Devops 网络安全 Docker
百度搜索:蓝易云【DevOps系列文章之Docker部署web ssh工具sshwifty教程。】
同时,了解DevOps和Docker的基本原理和概念也对你进行部署和管理这样的工具非常有帮助。你可以进一步研究Docker容器化技术和相关的DevOps实践,以更好地理解和应用这些概念。
62 0
|
8月前
|
网络协议 安全 Shell
如何在 SSH 客户端中强制使用 IPv4 或 IPv6?
如何在 SSH 客户端中强制使用 IPv4 或 IPv6?
507 0
如何在 SSH 客户端中强制使用 IPv4 或 IPv6?
|
8月前
|
网络安全 数据安全/隐私保护
百度搜索:蓝易云【多个端口怎么运行SSH服务器?】
记得替换 `username`为你的用户名,`your_server_ip`为你的服务器IP地址。根据需要,可以添加其他端口并进行相应的配置。
95 0
|
8月前
|
Ubuntu Linux 网络安全
SSH客户端连接远程服务器
一、什么是客户端连接远程服务器 发起连接的一方,计算机或设备(称为客户端)与另一个计算机或设备(称为远程服务器)建立连接。 客户端通过网络连接到远程服务器,远程服务器则是提供所需服务或资源的一方。 客户端通常使用特定的协议(如SSH、HTTP、FTP等)与远程服务器进行通信。 示例:你使用SSH客户端从本地计算机连接到远程服务器以执行远程命令。 二、什么是服务端连接远程服务器
219 1
|
运维 Linux 网络安全
推荐几款SSH客户端
对于经常使用Linux服务器的,应该都对SSH比较熟悉吧!特别是做运维的,而对于做Linux或Android系统开发的,一般会在公司搭建一台性能强劲的服务器,然后大家一起在上面做开发。大家一般都是通过SSH客户端登录到服务器上进行开发。那接下来给大家推荐几款平时常用的SSH客户端。
|
11天前
|
Ubuntu Linux 网络安全
ubuntu linux 搭建 webssh 网页ssh远程登录其他服务器
ubuntu linux 搭建 webssh 网页ssh远程登录其他服务器
|
1月前
|
Devops jenkins 网络安全
【DevOps】(四)jekins服务器ssh部署
【DevOps】(四)jekins服务器ssh部署
22 1
|
1月前
|
安全 网络安全 数据安全/隐私保护
Termius 一款优秀的跨平台 SSH 客户端工具
Termius 一款优秀的跨平台 SSH 客户端工具
149 0
|
8月前
|
安全 Linux 网络安全
【工具使用】几款优秀的SSH连接客户端软件工具推荐FinalShell、Xshell、MobaXterm、OpenSSH、PUTTY、Terminus、mRemoteNG、Terminals等
【工具使用】几款优秀的SSH连接客户端软件工具推荐FinalShell、Xshell、MobaXterm、OpenSSH、PUTTY、Terminus、mRemoteNG、Terminals等
7780 0
|
1月前
|
关系型数据库 网络安全 数据库
通过SSH登录OceanBase数据库需要修改用户密码,然后使用SSH客户端进行远程登录
通过SSH登录OceanBase数据库需要修改用户密码,然后使用SSH客户端进行远程登录
101 6