home

使用Cloudflare Zero Trust实现网页登录SSH

首先登录https://one.dash.cloudflare.com/开始操作

网络->Tunnels,创建隧道,隧道类型选择Cloudflared,隧道名自定义hhssh

按照提示安装cloudflared并连接隧道,vps在这里选择debian,然后按照提示安装cloudflared并运行。

curl -L --output cloudflared.deb https://github.com/cloudflare/cloudflared/releases/latest/download/cloudflared-linux-amd64.deb && 

sudo dpkg -i cloudflared.deb && 

sudo cloudflared service install eyJhIjoiOWRmMjczNGM3NjI3ZTNiMmZh

连接成功后,页面下方 Connectors 会显示当前已连接的设备。

下一步,开始设置公共主机名。

子域中自定义hhssh,域选择自有域名,路径(path)留空,服务类型选择SSH,URL里填写localhost:22,其中22为服务器ssh端口,按照实际情况设置,保存隧道。

Access->应用程序,添加应用程序。

应用程序类型选择 自托管,基本信息中应用程序名设置为hhssh,会话持续时长默认24小时,可自定义。

点击添加公共主机名,同上述Tunnels域名设置即可,点击下一步,在最后高级设置中,浏览器呈现设置中选择SSH保存设置。

下来设置邮箱验证策略,Access->策略,添加策略。

策略名自定义emailauth,操作为允许(allow),添加规则中,选择器设置为Emails,值中填写自己用来接收验证码的邮箱地址,保存。

Access->应用程序,选择刚建立的hhss,右侧三点菜单,编辑配置,在策略tab中,点击选择现有策略,勾选刚才新建的emailauth即可。

通过域名hhssh.0x8.net来登录页面,会提示输入邮箱接收验证码,输入验证码后即可按提示输入服务器账号密码来登录ssh。

享受你的webssh之旅吧!

webssh

:-)