简述
有时候想创建一个简单的代理,但是需要安装很多软件,因此这里分享一个用 ssh 就能快速创建代理服务的方法。
教程完全基于 ssh 并不需要安装其他软件,客户端可以是 linux 或 windows 的系统,非常简单易用。
此办法适用但是不限于以下情景:
- 在服务器集群中,有的服务器没有分配外网IP而无法访问外网;
- 从外网访问办公室局域网的 OA 服务;
准备
首先必须有两台机器:
第一台,有外网IP或者在局域网里外网能访问到(比如软路由),这台机器必须开启 ssh 登录,称为服务器;
第二台,可以是 linux 或 windows 的机器,如果是 windows 可以下载 ssh.exe 使用,称为客户端。
代理创建和使用
服务器只需要开启 ssh 登录就行了,以下主要是客户端的教程:
# 创建代理
ssh -TfnN -D <代理端口> <服务器IP> -p <服务器端口>
# 使用示例1
curl -x "socks://127.0.0.1:<代理端口>" ip.gs
# 使用示例2
export http_proxy=socks://127.0.0.1:<代理端口>
export https_proxy=socks://127.0.0.1:<代理端口>
curl ip.gs
如果你是 windows 作为客户端的话,请自行搜索浏览器使用 socks 代理的教程。
当然,也可以直接在服务器上创建代理,但是代理没有设置密码且数据没有加密很不安全,所以不推荐这么做!