tools 网页版shell终端 发表于 2022-01-20 浏览量 615 没有评论 # 简介 通常情况下,我们在访问任何远程服务器时,会使用常见的通信工具如 OpenSSH 和 Putty 等。但是,有可能我们在防火墙后面不能使用这些工具访 问远程系统,或者防火墙只允许 HTTPS 流量才能通过。不用担心!即使你在这样的防火墙后面,我们依然有办法来访问你的远程系统。而且,你不需要安装任何 类似于 OpenSSH 或 Putty 的通讯工具。你只需要有一个支持 JavaScript 和 CSS 的现代浏览器,并且你不用安装任何插件或第三方应用软件。 # 环境 |系统|软件|依赖| |--|--| |centos7.9|shellinabox-2.20-5.el7.x86_64|OpenSsl # 安装 ``` yum install epel-release yum install openssl-devel yum install shellinabox # 如果yum安装不了这个包,可以下载这个包再安装 wget https://download-ib01.fedoraproject.org/pub/epel/7/x86_64/Packages/s/shellinabox-2.20-5.el7.x86_64.rpm rpm -ivh shellinabox-2.20-5.el7.x86_64.rp ``` # 配置文件 ``` /etc/sysconfig/shellinaboxd # 主配置文件 /usr/sbin/shellinaboxd # 启动文件 /usr/lib/systemd/system/shellinaboxd.service # systemctl管理 cat /etc/sysconfig/shellinaboxd | grep -v "^#" | grep -v "^$" USER=shellinabox GROUP=shellinabox CERTDIR=/var/lib/shellinabox PORT=4200 # 启动端口 OPTS="--user-css Normal:+white-on-black.css --disable-ssl-menu -t -s /:SSH:127.0.0.1" # 如果不加 - t 参数是需要使用 https 的方式访问的,配置了黑色背景。 # 如果想用白色背景,就替换opts的配置 OPTS="--disable-ssl-menu -t -s /:SSH:127.0.0.1" ``` # 启动 ``` systemctl start shellinaboxd ``` # 配置nginx反向代理 线上环境,如果不配置反向代理,记得开放端口~~ ``` server { listen 443 ssl; server_name shell.baidu.com; ssl_certificate /etc/nginx/conf.d/ssl_key/shell.ewain.top_nginx/shell.ewain.top_bundle.crt; ssl_certificate_key /etc/nginx/conf.d/ssl_key/shell.ewain.top_nginx/shell.ewain.top.key; ssl_session_timeout 5m; ssl_protocols TLSv1 TLSv1.1 TLSv1.2; ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE; ssl_prefer_server_ciphers on; auth_basic "Please input Password"; auth_basic_user_file /etc/nginx/conf.d/passwd; # 限制访问 location / { proxy_pass http://127.0.0.1:4022; proxy_http_version 1.1; proxy_cache_bypass $http_upgrade; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "upgrade"; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; proxy_set_header X-Forwarded-Host $host; proxy_set_header X-Forwarded-Port $server_port; } } ``` # 访问 shell.baidu.com