设置一个ssh client by web

参考

https://github.com/huashengdun/webssh

先安装docker和docker-compose,详细不说了

安装

git clone下来

git clone https://github.com/huashengdun/webssh.git

运行

第一次运行会需要时间下载各种包,时间大概10分钟 第二次直接运行,大概2秒

cd webssh
docker-compose up
#或者后台运行
docker-compose up -d

使用

没有配置nginx

如果没有配置nginx,那不用看访问限制那段了,直接用ip加8888端口即可访问到页面 例如我这台服务器的ip是10.2.10.52,那我只要再浏览器里输入http://10.2.10.52:8888 就能访问到了

配置了nginx

访问xxx.xxx.com即可,nginx内部会将请求转给webssh的,具体要看nginx如何配置了
具体参考下面的访问限制段落

访问限制

由于ssh的敏感性,webssh只监听私有网段的ip,如果用公网ip访问则拒绝 如果想用公网也能访问,前面放个nginx即可

server {
    listen  80;
    server_name     xxx.xxx.com;

    auth_basic      "who";
    auth_basic_user_file /etc/nginx/userpassword.db;
    location / {
            proxy_http_version 1.1;
            proxy_read_timeout 300;
            proxy_set_header Upgrade $http_upgrade;
            proxy_set_header Connection "upgrade";
            proxy_set_header Host $http_host;
            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header X-Real-PORT $remote_port;
            proxy_pass      http://10.2.10.52:8888;
    }
}

注意这里的proxy_pass用的是内网ip,而不是127.0.0.1,是因为我这个nginx也是跑在docker里的 如果nginx是跑在本机里,可以用127.0.0.1的

另外我多做了个认证

    auth_basic      "who";
    auth_basic_user_file /etc/nginx/userpassword.db;

如果不做认证,所有知道url的人都可以拿你这个ssh客户端用了

转载于:https://my.oschina.net/u/943306/blog/3064770

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值