iis服务器助手广告广告
返回顶部
首页 > 资讯 > 服务器 >SSH隧道动态转发端口实现SOCKS代理 + HTTP代理(Privoxy)
  • 457
分享到

SSH隧道动态转发端口实现SOCKS代理 + HTTP代理(Privoxy)

ssh服务器运维 2023-09-20 19:09:25 457人浏览 泡泡鱼
摘要

一、文章概要 实现效果:ssh连接远程服务器进行网络转发,本地服务连接网络代理环境:windows11/10需要工具:MobaXterm(ssh隧道端口转发),Privoxy(socks转Http代理),一个云服务器  二、步骤 1. 用S

一、文章概要

  • 实现效果ssh连接远程服务器进行网络转发,本地服务连接网络代理
  • 环境windows11/10
  • 需要工具:MobaXterm(ssh隧道端口转发),Privoxy(socks转Http代理),一个云服务器

 二、步骤

1. 用SSH从本地计算机连接远程主机

多种方法选一种即可: 

  1. 命令行:ssh -C -N -D LOCAL_ADDRESS:LOCAL_PORT USER@REMOTE_ADDRESS
  2. Putty客户端
  3. MobaXteam中的MobaSSHTunnel
MobaSSHTunnel

2. Privoxy安装和配置

官网下载压缩包版本 http://www.privoxy.org/

修改配置文件:

  • 通过listen-address指定HTTP代理的监听地址和端口。默认privoxy的配置文件会带有这一项。

其格式为:listen-address  [ADDRESS]:[PORT] 

默认值是:listen-address  127.0.0.1:8118

  • 通过forward-socks5指定转发到socks代理

默认privoxy的配置文件不会配置这一项。

forward-socks5支持的格式比较复杂,但是这里只需要简单的写成如下内容就可以了:

forward-socks5 / [SOCKS_ADDRESS]:[SOCKS_PORT] .

其中“/”所在的位置是一个URL模式,与之匹配的URL都会转发到这个项目指定的socks代理。“/”这个值表示把所有请求都转发到socks5代理上去

例如:forward-socks5 / 127.0.0.1:9150 .

!注意

listen-address指定http代理监听地址只允许本地访问该端口,允许局域网(LAN)访问需要设置为:listen-address  0.0.0.0:8118

三、测试与使用

1. 浏览器

Chrome + Switchyomega:支持socks5代理

2. 命令行(Powershell)

curl -Uri www.Google.com -proxy http://127.0.0.1:8118

windows中的curl命令其实是包装的Invoke-WEBRequest

3. python

使用urllib3库进行测试

http代理测试代码:

import urllib3import JSONproxy_addr = 'http://127.0.0.1:8118'print(f'代理地址:{proxy_addr}')proxy = urllib3.ProxyManager(proxy_addr)resp = proxy.request('GET', 'https://httpbin.org/ip')print(resp.data.decode('utf-8'))

socks代理测试代码

from urllib3.contrib.socks import SOCKSProxyManagerimport jsonproxy_addr = 'socks5://127.0.0.1:80'print(f'SOCKS5代理地址:{proxy_addr}')proxy = SOCKSProxyManager(proxy_addr)resp = proxy.request('GET', 'https://httpbin.org/ip')print(resp.data.decode('utf-8'))url = 'https://www.google.com'resp = proxy.request('GET', url)print(f'返回状态码:{resp.status}')

四、遇到的坑

1. ping不通但是浏览器能连上?

简言之,就是ping走的是ICMP协议,在网络层(第三层),而ssr用的是socks代理是传输层 (第四层),上层协议无法对下层协议起作用,因此ping不通,但是通过http(超文本传输协议,应用层协议,在比socks代理层数更高)却可以访问。

大部分都不支持socks代理,而支持http代理

2. ssh隧道开启socks代理,其他代理隧道开启什么代理?

HTTPS代理隧道开启https、websocket隧道开启ws、ICMP隧道

References

建立和使用代理服务器 -doc文档

Privoxy教程使用详解_privoxy是什么东西_ZhaoYingChao88的博客-CSDN博客

来源地址:https://blog.csdn.net/m0_64768308/article/details/129480558

--结束END--

本文标题: SSH隧道动态转发端口实现SOCKS代理 + HTTP代理(Privoxy)

本文链接: https://www.lsjlt.com/news/413224.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • SSH隧道动态转发端口实现SOCKS代理 + HTTP代理(Privoxy)
    一、文章概要 实现效果:ssh连接远程服务器进行网络转发,本地服务连接网络代理环境:windows11/10需要工具:MobaXterm(ssh隧道端口转发),Privoxy(socks转http代理),一个云服务器  二、步骤 1. 用S...
    99+
    2023-09-20
    ssh 服务器 运维
  • JDK动态代理,代理接口没有实现类,实现动态代理方式
    目录JDK动态代理,代理接口没有实现类,实现动态代理被代理的接口:代理对象:那么接下来测试一下:jdk动态代理为什么要接口先通过一个简单例子实现功能:编写测试方法:里面的getPro...
    99+
    2024-04-02
  • 怎么使用Nginx实现端口转发TCP代理
    本篇内容介绍了“怎么使用Nginx实现端口转发TCP代理”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!需求产生背景最近同事在测试和生产环境中...
    99+
    2023-06-22
  • 使用Nginx实现端口转发TCP代理的实现示例
    目录需求产生背景为什么要使用Nginx实现使用Nginx实现端口转发安装依赖下载并安装启动并检查服务是否正常需求产生背景 最近同事在测试和生产环境中分别部署了一套应用,由于应用只能集...
    99+
    2024-04-02
  • 怎么实现秒切动态http代理换ip
    这篇文章主要介绍“怎么实现秒切动态http代理换ip”,在日常操作中,相信很多人在怎么实现秒切动态http代理换ip问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”怎么实现秒切动态http代理换ip”的疑惑有所...
    99+
    2023-06-20
  • Node实现前端本地开发接口代理服务
    目录背景目标方案实施创建NodeJS项目编写Express服务编写代理接口前端项目接入背景 我们在前端开发的接口联调阶段,经常会遇到跨域问题,因为本地通常使用localhost域名来...
    99+
    2024-04-02
  • 解读jdk动态代理为什么必须实现接口
    目录使用jdk生成代理类生成代理的字节码总结使用jdk生成代理类 通过jdk实现的动态代理会使用Proxy的newProxyInstance方法: 写一个类实现Invocation...
    99+
    2023-02-17
    jdk动态代理 jdk代理 jdk动态代理接口
  • Node怎么实现前端本地开发接口代理服务
    本篇内容介绍了“Node怎么实现前端本地开发接口代理服务”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!背景我们在前端开发的接口联调阶段,经常...
    99+
    2023-06-30
  • 动态ip代理中如何用爬虫实现前端页面渲染
    本篇文章为大家展示了动态ip代理中如何用爬虫实现前端页面渲染,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。  在很早以前,几乎绝大多数网站全全都是利用后端渲染的,即在服务器端组装形成完整的HTML页...
    99+
    2023-06-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作