SSH反向代理的使用

玖亖伍
2022-05-24 / 0 评论 / 373 阅读 / 正在检测是否收录...
温馨提示:
本文最后更新于2022年06月29日,已超过891天没有更新,若内容或图片失效,请留言反馈。

准备工作

说明:

  • 12.34.56.78 为公网服务器, ssh端口为22
  • 192.168.1.2 为内网服务器(未开放访问公网), ssh端口为10022
  • 192.168.1.5 为本机, 可访问192.168.1.212.34.56.78

涉及到的命令

# 设置SOCKS5代理
ssh -o StrictHostKeyChecking=no 12.34.56.78 -l user0 -p 22 -D 0.0.0.0:12080 -N -v
# 设置反向隧道到代理
ssh -o StrictHostKeyChecking=no 192.168.1.2 -l devops -p 10022 -R 8051:127.0.0.1:12080 -N -v
# 本机连接到私域服务器,下面的命令在其上执行
ssh 192.168.1.2 -l devops -p 10022

1. 修改hosts,绕过DNS解析

编辑hosts文件,按需设置: sudo vim /etc/hosts

119.84.77.214 mirrors.aliyun.com
140.83.35.89 ghproxy.com
65.52.183.205 packages.microsoft.com

2. 安装proxychains

获取proxychains源码

# 临时设置代理
export ALL_PROXY=socks5://127.0.0.1:8051
# 获取proxychains源码
git clone https://ghproxy.com/https://github.com/rofl0r/proxychains-ng.git proxychains-ng-src
# 取消临时代理
unset ALL_PROXY

proxychains编译和安装

cd proxychains-ng-src/
./configure
make
sudo make install
sudo make install-config

修改proxychains配置

添加代理: sudo vim /usr/local/etc/proxychains.conf

[ProxyList]
socks5  127.0.0.1 8051

3. 使用示例

通过proxychains安装.NET6和Powershell

proxychains4 wget -c https://packages.microsoft.com/config/ubuntu/20.04/packages-microsoft-prod.deb -O packages-microsoft-prod.deb
sudo proxychains4 apt update
# 安装常用和必要软件
sudo proxychains4 apt install -y apt-transport-https software-properties-common w3m tree
# 安装 .NET6和pwsh
sudo proxychains4 apt install -y dotnet-sdk-6.0 powershell
# 验证
dotnet --info
pwsh --version

运行filebrowser

proxychains4 wget -c https://ghproxy.com/https://github.com/filebrowser/filebrowser/releases/download/v2.21.1/linux-amd64-filebrowser.tar.gz
tar -zxvf linux-amd64-filebrowser.tar.gz
mkdir data-store
/home/devops/filebrowser/filebrowser --address "0.0.0.0" --port "2554" --root /home/devops/filebrowser/data-store
# 本地代理(本地访问: http://127.0.0.1:2554/)
ssh -o StrictHostKeyChecking=no 192.168.1.2 -l devops -p 10022 -L 2554:127.0.0.1:2554 -N -v
0

评论 (0)

取消