利用gost实现pptp转socks5或http代理
利用gost实现pptp转socks5或http代理
以debian10为例
1、安装pptp服务器端
sudo apt-get install pptpd #debian系统
编辑/etc/pptpd.conf,ip段可以自己设置,增加以下两行:
localip 192.168.0.1
remoteip 192.168.0.234-238,192.168.0.245
这里localip指pptp服务端的IP, remoteip是客户端连接后分配的IP范围
编辑/etc/ppp/chap-secrets,设置pptp认证信息,在最后面新增一行:
user1 pptpd 123456 *
user2 pptpd 123456 192.168.0.245
*为从地址池随机分配,也可以固定一个ip地址
2、安装gost
官网链接在这儿不会编译就直接下二进制文件,丢进去就行:https://latest.gost.run/
创建gost-config.json 可以创建很多个配置文件。我这儿只写了两条,多个可以自行再生成
{
"Debug": true,
"Retries": 0,
"ServeNodes": [
{
"Name": "transparent_proxy_1",
"Listen": "tcp://:31339",
"ProxyProtocol": "socks5", #透明代理协议,http,https,socks5之类的。
"ProxyAddress": "10.0.0.1:1082",
"Protocol": "redirect",
"Target": ""
"Username": "your_username", #账号密码,有的话加上,没有的话删了这两行。
"Password": "your_password"
},
{
"Name": "transparent_proxy_2",
"Listen": "tcp://:31338",
"ProxyProtocol": "socks5",
"ProxyAddress": "10.0.0.1:54213",
"Protocol": "redirect",
"Target": ""
}
]
}
手动执行命令./gost -C gost-config.json
创建服务项gost.service
[Unit]
Description=Gost Transparent Proxy Service
After=network.target
[Service]
ExecStart=/path/to/gost -C /path/to/gost-config.json #写你的配置文件和gost所在的目录
Restart=always
[Install]
WantedBy=multi-user.target
使用iptables进行数据转发
创建ipt.conf,看不懂的话就直接抄作业
*nat
:PREROUTING ACCEPT
:INPUT ACCEPT
:OUTPUT ACCEPT
:POSTROUTING ACCEPT
# Create new chain
:REDSOCKS -
#指定源ip转发数据到指定端口
-A PREROUTING -i ppp+ -s 192.168.0.234 -p tcp -j REDIRECT --to 31338
-A PREROUTING -i ppp+ -s 192.168.0.235 -p tcp -j REDIRECT --to 31339
# Ignore LANs and some other reserved addresses.
# See http://en.wikipedia.org/wiki/Reserved_IP_addresses#Reserved_IPv4_addresses
# and http://tools.ietf.org/html/rfc5735 for full list of reserved networks.
-A REDSOCKS -d 0.0.0.0/8 -j RETURN
-A REDSOCKS -d 10.0.0.0/8 -j RETURN
-A REDSOCKS -d 127.0.0.0/8 -j RETURN
-A REDSOCKS -d 169.254.0.0/16 -j RETURN
-A REDSOCKS -d 172.24.0.0/16 -j RETURN
-A REDSOCKS -d 192.168.0.0/16 -j RETURN
-A REDSOCKS -d 224.0.0.0/4 -j RETURN
-A REDSOCKS -d 240.0.0.0/4 -j RETURN
# Anything else should be redirected to respective ports
#指定源ip转发数据到指定端口
-A REDSOCKS -p tcp -m iprange --src-range 192.168.0.234-192.168.0.234 -j REDIRECT --to 31338
-A REDSOCKS -p tcp -m iprange --src-range 192.168.0.235-192.168.0.235 -j REDIRECT --to 31339
-A OUTPUT -p tcp -j REDSOCKS
-A POSTROUTING -s 192.168.0.0/24 -o eth0 -j MASQUERADE
COMMIT
应用iptables规则并保存配置
sudo iptables-restore < ipt.conf
sudo iptables-save
另附清空iptables的命令
iptables -F # 清空过滤器(filter)表的规则
iptables -X # 删除所有自定义链
iptables -t nat -F # 清空网络地址转换(NAT)表的规则
iptables -t nat -X # 删除所有自定义链
iptables -t mangle -F # 清空mangle表的规则
iptables -t mangle -X # 删除所有自定义链
iptables -P INPUT ACCEPT # 将INPUT链的默认策略设置为接受(ACCEPT)
iptables -P FORWARD ACCEPT # 将FORWARD链的默认策略设置为接受(ACCEPT)
iptables -P OUTPUT ACCEPT # 将OUTPUT链的默认策略设置为接受(ACCEPT)
最后再测试pptp连接后网络是否走对应的链路
利用gost实现pptp转socks5或http代理的更多相关文章
- Sublime 配置代理以及 Socks5 转 http 代理
一.原因 在使用 sublime 3.2.1 的时候,安装插件时出错 因为被墙的原因,所以要设置代理 设置路径: 首选项 -> Package -> Settings -> Pack ...
- 利用proxychains在终端使用socks5代理
最近用各种脚本下载东西的时候发现有的站点需要当地IP才能下,比如.....nico, youtube等: 所以就找了下能在终端用socks5代理的工具,最后找到了proxychains,从此再无压力= ...
- 使用 某款基于Socks5协议的代理软件 一段时间后 被封锁掉IP的一些技术思考
由于关键词比较敏感为了不被删除帖子所以文中某软件(上图所示软件)不用全称表示. 去年9月末在 在某国外网站 上弄了一个vpn,在上面安装了某软件,使用起来还是蛮不错的,平时查查英文论文,看看美剧还是比 ...
- Curl测试socks5 or http 代理命令
测试socks5命令:curl --socks5 125.119.175.48:8909 http://example.com/ 测试http命令: curl --connect-timeout 2 ...
- iOS 利用webView加载html代码,在代理中获取html页面的链接时出现的问题
getDetailWebview.loadHTMLString(webViewData as String, baseURL:NSURL(string: "\(ProBaseWeb)&quo ...
- 在容器中利用Nginx-proxy实现多域名的自动反向代理、免费SSL证书
在个人的小项目或者测试环境中,配置反向代理显得十分繁琐,而借助 Nginx-proxy 的镜像,即使是小白,也能快速实现域名转发. 1.域名.IP自动转发 在开始之前,首先黑进了自家的路由器,将某个域 ...
- 让终端走socks5代理
(2017.9.17更新) 方法1: 在终端中直接运行命令 1 export http_proxy=http://proxyAddress:port 这个办法的好处是简单直接,并且影响面很小(只对当前 ...
- 使用 EW 作Socks5代理
简介: EarthWorm是一款用于开启 SOCKS v5 代理服务的工具,基于标准 C 开发,可提供多平台间的转接通讯,用于复杂网络环境下的数据转发. 主页: http://rootkiter.co ...
- 不用Unity库,利用.NET动态代理自己实现AOP
AOP意为面向切面的程序设计,主要表现为对不同的代码逻辑进行隔离,从而降低不同业务逻辑之间的耦合性,AOP又理解为“横切”,可以在不改变原有实现的情况下,对代码进行拦截和扩展,如果原有设计像一个瓶子, ...
- windows使用proxifier全局代理 - 配置可用; windows10 配置全局代理 走 socks5
最近windows上需要配置全局代理 走 socks5,发现同类型的有 cow pcap 等解决方案,通过尝试发现还是proxifier 比较好用! 下载:https://www.proxifier. ...
随机推荐
- AgileConfig 1.8.0 已适配 .NET8
Hello 大家好.本月圈子里最大的事莫过于 .NET8 正式 release.群友们都在适配 .NET8.抽个周末我也把 AgileConfig 升级到了 .NET8.下面把升级的过程简单记录一下, ...
- python生成列表的时间复杂度
在刷题的时候,经常碰到需要生成非常大的邻接矩阵,往往我们都是用 list 存储,但是我在最近刷题的过程中就遇上了TLE的情况,原因就是生成邻接矩阵时间太花时间了. 先说结论:[ ]* n 比 [ fo ...
- python tkinter 使用(八)
python tkinter 使用(八) 本文主要讲下tkinter库中的其他的一些模块,如simpleDialog,scrollerText等. 1: simpleDialog simpledial ...
- 获取微信的token工具类
import cn.hutool.extra.spring.SpringUtil; import cn.hutool.http.HttpUtil; import cn.RedisUtil; impor ...
- 部署堡垒机4——CentOS7 编译安装 Python 3.8.12
1.去python3的官方网站下载源代码 https://www.python.org/downloads/ 下载安装Python 3.8.12到/opt/python3 cd /opt wget h ...
- CentOS基线检测脚本
本脚本适用于CentOS 7.5-7.9版本,其他版本不详 1.检查系统信息 查看代码 echo " " echo "########################## ...
- Redis配置模式及各自优缺点
大家好,我是闲者,今天简单聊下redis部署模式.Redis支持多种不同的数据结构和模式,以满足不同的使用场景.以下是一些常见的Redis配置和模式示例以及详解.原文地址:Redis配置模式及各自优缺 ...
- 容器处于`Pending`状态Warning FailedScheduling <unknown> default-scheduler 0/10 nodes are available
Warning FailedScheduling default-scheduler 0/10 nodes are available: 1 node(s) had taint {agreeml: a ...
- 从VMWare安装到Nginx配置
1.安装VMWare Workstation 16 player,Mac也可使用Parallels Desktop,自己有虚拟主机的跳过: 2.在虚拟机中,安装Centos7操作系统,使用Minima ...
- 4种Python中基于字段的不使用元类的ORM实现方法
本文分享自华为云社区<Python中基于字段的不使用元类的ORM实现>,作者: 柠檬味拥抱 . 不使用元类的简单ORM实现 在 Python 中,ORM(Object-Relational ...