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之旅吧!