反向代理让无外网权限的Linux主机通过本地主机访问网络

pexels-photo-2166711.jpeg

有时候由于安全问题,有些部署在内网的服务器无法访问外网服务。windows还好一点,能够直接安装各种依赖,对于Linux服务器来说,安装依赖就非常麻烦了。

接下来说明如何通过反向代理,让无外网权限的内网主机,通过本地连接它的电脑,实现外网访问

首先可以使用Clash/SSR/V2Ray等工具,在本地打开一个可以连接的通道。

以Clash为例,默认端口为7890

# 通过反向代理,让本地7890和服务器7890连接
# 在本地机器运行,ssh连接服务器并做一下反向端口转发
ssh -R 7890:localhost:7890 root@ip

# 进入服务器之后,在服务器端运行
# 设置代理,让流量走7890端口
export ALL_PROXY=socks5://127.0.0.1:7890
export https_proxy=socks5://127.0.0.1:7890
export http_proxy=socks5://127.0.0.1:7890
# Centos通过代理换源,测试一下连接,使用其他方式测试也行
sudo curl -x socks5://127.0.0.1:7890 -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo