关于php:SSH-端口转发与-SOCKS-代理

52次阅读

共计 1934 个字符,预计需要花费 5 分钟才能阅读完成。

SSH port forwarding 端口转发的三种形式
Local Port Forwarding 本地端口转发
将连贯从客户端主机转发到 SSH 服务器主机,而后转发到指标主机端口。

ssh -L [LOCAL_IP:]LOCAL_PORT:DESTINATION:DESTINATION_PORT [USER@]SSH_SERVER
复制代码
参数阐明:

[LOCAL_IP:]LOCAL_PORT – 本地 IP 和端口号,LOCAL_IP 默认是 localhost。
DESTINATION:DESTINATION_PORT – 指标机器的 IP 地址和端口号。
[USER@]SERVER_IP – 近程 SSH 地址和登录用户。
案例:

应用本地地址 127.0.0.1:3336 连贯近程的数据库 db001.host:3306,同时 127.0.0.1:3337 连贯到 db002.host:3306:

ssh -L 3336:db001.host:3306 3337:db002.host:3306 user@pub001.host
复制代码
查看 SSH Server 配置:AllowTcpForwarding=yes

Remote Port Forwarding 近程端口转发
近程端口转发与本地端口转发相同。它容许您将近程(ssh 服务器)机器上的端口转发到本地(ssh 客户端)机器上的端口,而后再转发到指标机器上的端口。

近程端口转发次要用于向内部人员提供对外部服务的拜访权限。

ssh -R [REMOTE:]REMOTE_PORT:DESTINATION:DESTINATION_PORT [USER@]SSH_SERVER
复制代码
参数阐明:

[REMOTE:]REMOTE_PORT – 近程服务器地址和端口号。REMOTE 默认会所有地址。
DESTINATION:DESTINATION_PORT – 指标机器的 IP 地址和端口号。
[USER@]SERVER_IP – 近程 SSH 地址和登录用户。
案例:

ssh -R 8080:127.0.0.1:3000 -N -f user@remote.host
复制代码
下面的命令将使 ssh 服务器侦听端口 8080,并将所有流量从此端口传输到本地计算机的 3000 端口上。这样就能够在浏览器中输出 the_ssh_server_ip:8080 拜访利用了。

查看 SSH Server 配置:GatewayPorts=yes

Dynamic Port Forwarding 动静端口转发
动静端口转发容许您在本地(ssh 客户端)机器上创立一个套接字,它充当 SOCKS 代理服务器。当客户端连贯到这个端口时,连贯被转发到近程(ssh 服务器)机器,而后被转发到指标机器上的动静端口。

ssh -D [LOCAL_IP:]LOCAL_PORT [USER@]SSH_SERVER
复制代码
参数阐明:

[LOCAL_IP:]LOCAL_PORT – 本地 IP 地址和端口号。LOCAL_IP 默认是 localhost。
[USER@]SERVER_IP – 近程 SSH 地址和登录用户。
案例:

ssh -D 8080 -N -f -C -q user@remote.host
复制代码
-D 8080 启动一个 SOCKS 服务并监听本地的 9090 端口
-f 后盾运行
-C 压缩申请数据
-q 应用静默模式
-N 不执行近程命令
SOCKS 代理应用场景
cURL 代理
curl -x socks5://127.0.0.1:8080 https://google.com
复制代码
终端代理
export http_proxy=socks5://127.0.0.1:8080 \

https_proxy=socks5://127.0.0.1:8080 \
all_proxy=socks5://127.0.0.1:8080

复制代码
Git 代理
git config –global http.proxy socks5://127.0.0.1:8080
git config –global https.proxy socks5://127.0.0.1:8080
复制代码
SSH 代理
编辑 ~/.ssh/config:

Host github.com

HostName github.com
User git
IdentityFile ~/.ssh/id_rsa
ProxyCommand nc -v -x 127.0.0.1:8080 %h %p

最初
如果你感觉此文对你有一丁点帮忙,点个赞。或者能够退出我的开发交换群:1025263163 互相学习,咱们会有业余的技术答疑解惑

如果你感觉这篇文章对你有点用的话,麻烦请给咱们的开源我的项目点点 star:http://github.crmeb.net/u/defu 不胜感激!

PHP 学习手册:https://doc.crmeb.com
技术交换论坛:https://q.crmeb.com

正文完
 0