2016年11月22日星期二

CentOS安装OpenVPN

天使羊波波闪耀光芒软件及互联网爱好者

通过RSS订阅

首页存档关于

161月/1233

CentOS安装OpenVPN

OpenVPN是不同于PPTP、L2TP的另一种VPN软件包,基于SSL的VPN。OpenVPN使用需要客户端支持。这里系统为CentOS6.2。

一、检查OpenVPN所需环境
OpenVPN需要TUN设备支持,还需要iptables的nat模块支持。
1、检查TUN模块:

modinfo tun

显示如下:

如果报错则不支持TUN设备。

2、在OpenVZ虚拟化的VPS上,需要管理员在母鸡上打开TUN/TAP设备。

cat /dev/net/tun

如果返回:

cat: /dev/net/tun: File descriptor in bad state


VPS的TUN/TAP已经可以使用。

如果返回:

cat: /dev/net/tun: No such device


或者其它,说明TUN/TAP设备没有被正确配置,需要与客服沟通开通TUN/TAP。

3、检查OpenVZ的VPS上iptables是否支持:

iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o venet0 -j MASQUERADE

如果返回:

iptables: Unknown error 4294967295


说明支持。

二、编译安装OpenVPN
1、安装LZO
LZO是一种数据压缩算法。

cd /tmp
wget http://www.oberhumer.com/opensource/lzo/download/lzo-2.06.tar.gz
tar -zxvf lzo-2.06.tar.gz
cd lzo-2.06
./configure
make
make install

2、安装OpenVPN

cd /tmp
wget http://swupdate.openvpn.org/community/releases/openvpn-2.2.2.tar.gz
tar -zxvf openvpn-2.2.2.tar.gz
cd openvpn-2.2.2
./configure

此时提示:

configure: error: OpenSSL Crypto headers not found.


原来是openssl的开发包没有安装:

yum install openssl-devel

继续安装:

./configure
make
make install
mkdir /etc/openvpn
cp -R /tmp/openvpn-2.2.2/easy-rsa/ /etc/openvpn/ #复制生成证书的脚本

三、生成密钥和证书
1、初始化PIK

cd /etc/openvpn/easy-rsa/2.0/
vim vars

设置最后的证书字段值:

export KEY_COUNTRY="CN"
export KEY_PROVINCE="SH"
export KEY_CITY="shanghai"
export KEY_ORG="xxxx"
export KEY_EMAIL="xxx@xxx.com"
export KEY_EMAIL=xxx@xxx.com
export KEY_CN=tom
export KEY_NAME=tom
export KEY_OU=tom
export PKCS11_MODULE_PATH=tom
export PKCS11_PIN=1234

使vars设置生效:

source ./vars

报错:

No /etc/openvpn/easy-rsa/2.0/openssl.cnf file could be found
Further invocations will fail


将/etc/openvpn/easy-rsa/2.0目录下的openssl-1.0.0.cnf改名为openssl.cnf可解决:

cp openssl-1.0.0.cnf openssl-1.0.0.cnf.bak
mv openssl-1.0.0.cnf openssl.cnf

继续运行脚本设置变量,并清理:

source ./vars
./clean-all

建立私钥:

./build-ca


build-ca脚本用于生成一个1024位的RSA私钥,由于前面已经设置过vars文件,直接按回车。

2、建立server key

./build-key-server server


前面几个按回车,中间有extra属性要填,最后按两个y。

3、建立client key

./build-key client1


和建立server key基本相同,生成的每个客户端证书名字要不同。一份客户端证书对应一个客户端。

4、生成Diffie Hellman参数

./build-dh

5、将keys下的所有文件下载到本地
可以用winscp等工具。

6、创建服务端配置文件
将源代码解压后目录下的规范配置文件复制过来。

mkdir /etc/openvpn/easy-rsa/2.0/conf/
cp /tmp/openvpn-2.2.2/sample-config-files/server.conf /etc/openvpn/easy-rsa/2.0/conf/

编辑配置文件:

vim /etc/openvpn/easy-rsa/2.0/conf/server.conf

找到:

ca ca.crt
cert server.crt
key server.key
dh dh1024.pem


修改为:

ca /etc/openvpn/easy-rsa/2.0/keys/ca.crt
cert /etc/openvpn/easy-rsa/2.0/keys/server.crt
key /etc/openvpn/easy-rsa/2.0/keys/server.key
dh /etc/openvpn/easy-rsa/2.0/keys/dh1024.pem

并将以下几句前的分号去掉:

push "redirect-gateway def1 bypass-dhcp"
push "dhcp-option DNS 208.67.222.222"
push "dhcp-option DNS 208.67.220.220"
client-to-client
user nobody
group nobody

7、设置IP包转发

vim /etc/sysctl.conf

将“net.ipv4.ip_forward”的值改为1。

使sysctl.conf配置生效:

sysctl -p

8、添加iptables转发

iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o eth0 -j MASQUERADE
/etc/init.d/iptables save
/etc/init.d/iptables restart

PS:如果iptables save报错

iptables: Saving firewall rules to /etc/sysconfig/iptables: /etc/init.d/iptables: line 268: restorecon: command not found


要安装一个软件包:

yum install policycoreutils

9、设置OpenVPN开机自启动

echo "/usr/local/sbin/openvpn --config /etc/openvpn/easy-rsa/2.0/conf/server.conf &" >> /etc/rc.local

10、启动OpenVPN

/usr/local/sbin/openvpn --config /etc/openvpn/easy-rsa/2.0/conf/server.conf

四、安装Windows客户端OpenVPN GUI For Windows
1、下载客户端软件并安装
http://openvpn.se/files/install_packages/openvpn-2.0.9-gui-1.0.3-install.exe

2、配置客户端
将下载下来的keys文件夹内的:
ca.crt
ca.key
client1.crt
client1.csr
client1.key
复制到客户端安装路径config文件夹下。
例如:
C:\Program Files\OpenVPN\config

将安装路径sample-config文件夹下的client.ovpn也复制到config文件夹内。

打开client.ovpn,找到:

remote my-server-1 1194


将my-server-1修改为OpenVPN服务端的ip地址。

找到:

cert client.crt
key client.key


修改为客户端证书的名字。

cert client1.crt
key client1.key

在最后加上:

redirect-gateway def1

使客户端把OpenVPN服务器IP设为默认网关。

双击client.ovpn即可启动openvpn,或者通过OpenVPN GUI的控制启动VPN。

随后到ip查询的网站上查看自己的ip是否为OpenVPN服务器ip。

备注:
客户端连接时报错:

There are no TAP-Win32 adapters on this system. You should be able to create a TAP-Win32 adapter by going to Start -> All Programs -> OpenVPN -> Add a new TAP-Win32 virtual ethernet adapter.


需要安装TAP-Win32 virtual ethernet adapter。

参考资料:
http://rashost.com/blog/centos-openvpn-install
http://www.cnblogs.com/fangbo/archive/2011/08/04/2127710.html
http://www.fallday.org/archives/230
http://openvpn.net/index.php/open-source/documentation/howto.html

分类: LINUX发表评论

评论 (33)引用 (3)(订阅这个帖子上的评论)

巴拉克
2012年06月21日 12:36

好文……赞

(回复)

PS
2012年07月30日 15:47

iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o eth0 -j MASQUERADE
返回
iptables: Unknown error 4294967295
应该是不支持才对喔

(回复)

csj555
2012年07月30日 20:40

我测试了OpenVZ VPS没有MASQUERADE模块应该提示:iptables: No chain/target/match by that name. 可能这样判断不准确,最好使用cat /proc/net/ip_tables_targets查看是否有MASQUERADE模块。有的主机商提供这个模块有的没有提供~

(回复)

张某
2012年08月15日 23:44

我是看着这篇文章来配置的,真的很感谢。
但我遇到了问题,配置好以后,打开服务端openvpn,再打开客户端开始连接,一直停着……
看log也看不出什么事,用wireshark试下抓包,结果什么都没有……
求教

(回复)

csj555
2012年08月16日 20:29

额 连接一直停着…? 会不会是windows系统或防火墙阻止了客户端连接? 看看权限或防火墙设置

(回复)

张某
2012年08月21日 15:34

windows和防火墙我想没问题的,之前用这个客户端,用别人的VPN能连上。
自己搭的就杯具了……

(回复)

张某
2012年08月21日 20:12

原来是我客户端的配置里IP写错了……感谢csj555
突然为我的前途感到担忧了……

(回复)

csj555
2012年08月22日 21:18

呵呵,没事的啦。以后仔细点就行了~ O(∩_∩)O

林某某
2012年11月02日 19:47

开着Openvpn我浏览网页,不想用了,就关了。然后发现就打不开。ping一下,返回一般故障。这咋回事啊?就我刚才开着openvpn浏览的网站打不开出现一般性故障,其他网站都行的啊!
难道没其他在配置方法可以不让这种情况发生?

(回复)

csj555
2012年11月03日 08:42

查了下应该是openvpn在断开后,默认网关没有恢复成原来的地址,目前没有找到好的办法,可以先把宽带连接断开重连一下,有没有配置的方法我再找找看

(回复)

林某某
2012年11月03日 08:48

麻烦你了,非常感谢哦

(回复)

林某某
2012年11月03日 08:55

顺便问下,要是以后openvpn处新版本了,想升级的话要怎么弄?要全部重新安装?

(回复)

csj555
2012年11月03日 20:43

我觉得如果没有重大BUG,用一年左右再升级,升级时先备份配置文件、公钥私钥证书,停止服务。然后下载新版编译安装,它会覆盖原来安装的文件的,原来的证书还可以用的

(回复)

林某某
2012年11月03日 21:13

这样啊。目前2.2.2这个版本没有大的bug吧?对了那个关于我用openvpn后断开。网页就打不开这是咋回事啊?貌似有些人说没有这种情况,是不是配置什么的有问题?我查了下是不是要添加这个?
#VPN启动后,在VPN Server上增加的路由,VPN停止后自动删除
;route 10.9.0.0 255.255.255.252

我在http://www.chinaunix.net/old_jh/50/503434.html 这里看的

(回复)

csj555
2012年11月03日 21:49

这是添加静态路由,到server.conf里找找看有没有这句,把注释去掉,IP换成10.8.0.0 255.255.255.0 试试

(回复)

csj555
2012年11月04日 09:02

有效果不?

(回复)

林某某
2012年11月04日 17:57

不行啊,所有网页都打不开啊。算了。就那样凑合着用吧,非常感谢你的帮忙! 

林某某
2012年11月03日 13:43

使用的使用返回Sat Nov 03 14:13:20 2012 Replay-window backtrack occurred [1]
Sat Nov 03 14:15:03 2012 Replay-window backtrack occurred [2]
Sat Nov 03 14:40:37 2012 Replay-window backtrack occurred [3] 这个咋回事啊?

(回复)

csj555
2012年11月03日 20:55

这个信息看上去好像是请求失败,ping外网 google 或 baidu 能ping通吗?

(回复)

林某某
2012年11月03日 21:11

可以上网的啊

(回复)

csj555
2012年11月04日 09:01

是这样的http://personalvpn.org/troubleshoot_openvpn.htm

“Replay-window backtrack occurred”
Sometimes network congestion and latency cause the UDP protocol, most commonly used with OpenVPN, to drop packets and even lose the connection. You will see a ‘Replay window backtrack occurred’ error in the log if this is occurring. One solution is to switch to the TCP protocol, assuming your server is configured to support a TCP connection.

(回复)

Ansen
2012年11月14日 12:22

 感谢博主,已经搭建成功,已经转载到我自己的博客了附上了原文链接,地址是:http://www.ansen.org/in-centos-6-2-build-on-OpenVPN-Server.html

(回复)

csj555
2012年11月15日 09:32

不客气

(回复)

Manfred
2012年12月04日 21:06

感谢楼主,我转载到我的bolg上了。

顺便请教一个问题,我严格按照你的设置方法的,
但是在设置中出现一个问题
执行/etc/init.d/iptables restart 后,有个过滤fliter是[failed]结果,其他都[OK]

最后,在链接中报错,无法链接:
Tue Dec 04 22:10:29 2012 TLS Error: TLS key negotiation failed to occur within 60 seconds (check your network connectivity)
Tue Dec 04 22:10:29 2012 TLS Error: TLS handshake failed

怎么回事呢,能否帮忙看一下。
谢谢!

(回复)

csj555
2012年12月05日 15:17

我觉得这个错和iptables的端口转发有关,iptables重启时具体错误是什么?或把iptables规则清空,重新设置下看看。

(回复)

Manfred
2012年12月04日 21:16

哦对了,我的openvpn2.1 这个会不会也产生问题???

(回复)

csj555
2012年12月05日 15:18

应该是兼容的

(回复)

Manfred
2012年12月04日 21:25

openvpn2.1 requires ‘–script-security 2’ or higher to call user-defined scripts or executables.

连接中还有这个问题,这个怎么处理呢??

(回复)

csj555
2012年12月05日 15:09

这是要你设置这个参数,到配置文件里找找看有没有相关的设置

(回复)

杜。。。
2013年09月10日 12:25

非常感谢您的分享,但是我遇到个问题,按照这个步骤安装没有什么问题。就是安装完以后能够连接,ping 我的vps 外网ip地址能够ping通,服务器vps安装了openvpn以后自动建立了一个tun内网,这个内网我也在windows连接以后能够ping通,但是windows连接vpn以后就无法上网,不知道是什么情况。能给个什么建议吗??
非常感谢!

(回复)

csj555
2013年09月11日 07:28

你好,ping其它外网IP能ping通吗,检查下DNS设置看看。

(回复)

win
2013年11月22日 07:28

我的也是一样,vpn连上去了,但是自己的(win)掉网了。在win上ping百度啥的都ping不通了。

(回复)

csj555
2013年11月23日 13:23

你好,系统是win7还是xp,会不会是权限问题。

(回复)

Leave a comment 

姓名 (required)

电子邮件 (required)

站点

                     

mysql主从同步 »« USB接口

 

日历

2016年十一月一二三四五六日« 10月   123456789101112131415161718192021222324252627282930 

存档

存档  选择月份   2016年十月    2016年九月    2016年八月    2016年七月    2016年五月    2016年四月    2016年三月    2016年二月    2016年一月    2015年十二月    2015年十一月    2015年十月    2015年九月    2015年七月    2015年六月    2015年五月    2015年四月    2015年三月    2015年二月    2015年一月    2014年十二月    2014年十一月    2014年十月    2014年九月    2014年八月    2014年七月    2014年六月    2014年五月    2014年四月    2014年三月    2014年二月    2014年一月    2013年十二月    2013年十一月    2013年十月    2013年九月    2013年八月    2013年七月    2013年六月    2013年五月    2013年四月    2013年三月    2013年二月    2013年一月    2012年十二月    2012年十一月    2012年十月    2012年九月    2012年八月    2012年七月    2012年六月    2012年五月    2012年四月    2012年三月    2012年二月    2012年一月    2011年十二月    2011年十一月    2011年十月    2011年九月    2011年八月    2011年七月    2011年六月    2011年五月    2011年四月    2011年三月    2011年二月    2011年一月    2010年十二月    2010年十一月    2010年十月    2010年九月    2010年八月    2010年七月    2010年六月    2010年五月    2010年四月    2010年三月    2010年二月  

分类

C/C++LINUXORACLEWP日剧未分类生活电子书

功能

登录文章RSS评论RSSWordPress.org

友情链接

伍小虎的博客山里来了攻城狮老牛博客

AD

Copyright © 2016 天使羊波波闪耀光芒 · Powered by WordPress 
Lightword Theme translated by Der Tee Blog and Businessangels返回页首 ↑

openvpn连接后无法上网

openvpn连接后无法上网

 牛刀杀鸡 2016-03-18  系统运维   258

安装配置参照基础流程,之后会出现vpn可以连接,但是却无法上网。纠结了一天。

原因是路由转发的问题:

就是把iptables的转发规则中的 -o eth0 去掉,即:iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -j MASQUERADE然后/etc/init.d/iptables save还不行就清空所有规则iptables -F , iptables -X iptables -Z, 然后iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -j MASQUERADE, /etc/init.d/iptables save搞定!

基本设置参照http://www.voidcn.com/blog/liuyuyefz/article/p-1532029.html

你可以从 EPEL仓库获取OpenVPN. 如果你没有安装过这个支持,你需要先做如下步骤:

[html]  view plain  copy

wget http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm  rpm -Uvh epel-release-6*.rpm  

安装 OpenVPN:

[html]  view plain  copy

yum -y install openvpn easy-rsa  

如果你上面步骤出错可以尝试如下方案之后再重新尝试安装:

运行命令来升级repo 以便可以使用 HTTP 而不是 HTTPS:

[html]  view plain  copy

sudo sed -i "s/mirrorlist=https/mirrorlist=http/" /etc/yum.repos.d/epel.repo  

然后确认一下更新:

[html]  view plain  copy

yum check-update  

找到文件夹 /etc/openvpn 创建一个 server.conf, 把下面内容粘贴进来就好了(如果你熟悉vim你也可以vim/etc/openvpn/server.conf):

[html]  view plain  copy

port 1194  proto udp  dev tun  ca ca.crt  cert server.crt  key server.key  dh dh2048.pem  server 10.8.0.0 255.255.255.0  ifconfig-pool-persist ipp.txt  push "redirect-gateway def1 bypass-dhcp"  push "dhcp-option DNS 8.8.8.8"  push "dhcp-option DNS 8.8.4.4"  keepalive 10 120  comp-lzo  max-clients 100  user nobody  group nobody  persist-key  persist-tun  status /var/log/openvpn-status.log  log-append /var/log/openvpn.log  verb 3  

现在来创建一个服务器证书.  

[html]  view plain  copy

mkdir -p /etc/openvpn/easy-rsa/keys  cp -r /usr/share/easy-rsa/2.0/* /etc/openvpn/easy-rsa/  cd /etc/openvpn/easy-rsa  source ./vars  ./clean-all  ./build-ca  ./build-key-server server  ./build-dh  

所有的选项让它默认就好如果有出现 [y/n] 的询问就输入 y 然后回车.

下一步我们来做一个客户端的证书:

[html]  view plain  copy

./build-key client1  

Everything is similar. If you want multiple clients, the operation is repeated several times, changing client1 on client2, client3 and so on. 

如果你想做多个客户端认证参考这个步骤就好了比如想要做client2, client3 按照client1的步骤就可以。

拷贝所有的key:

[html]  view plain  copy

cd keys/  cp dh2048.pem ca.crt server.crt server.key /etc/openvpn  

修改一下 /etc/sysctl.conf 文件里面的IP Forwarding

[html]  view plain  copy

net.ipv4.ip_forward = 0  

改为

[html]  view plain  copy

net.ipv4.ip_forward = 1  

把设置好的东西提交一下:

[html]  view plain  copy

sysctl -p  

编辑 Iptables, SERVER-IP 这边记住要替换成你自己的服务器 IP 地址.

[html]  view plain  copy

iptables -t nat -A POSTROUTING -o venet0 -j SNAT --to SERVER-IP  iptables -A FORWARD -i venet0 -o tun0 -m state --state RELATED,ESTABLISHED -j ACCEPT  iptables -A FORWARD -i tun0 -o venet0 -j ACCEPT  

上面其实就完成了所有 VPS OpenVZ的设置, 但是要做一个独立运行OpenVPN服务器还需要一下步骤:

[html]  view plain  copy

iptables -A FORWARD -s 10.8.0.0/24 -j ACCEPT  iptables -A FORWARD -m state --state RELATED,ESTABLISHED -j ACCEPT  iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o eth0 -j MASQUERADE  (有问题)

保存设置然后重启iptables: 

[html]  view plain  copy

service iptables save  service iptables restart  

开启OpenVPN 服务器 然后让它开机启动: 

[html]  view plain  copy

service openvpn start  chkconfig openvpn on  

以上服务端的设置就完成了,我们现在来配置客户端 

你可以下载Openvpn的客户端软件再这里下载对应的版本就好了 the official site

然后从服务器上拷贝如下三个文件:

[html]  view plain  copy

/etc/openvpn/ca.crt    /etc/openvpn/easy-rsa/keys/client1.crt     /etc/openvpn/easy-rsa/keys/client1.key  

到你本地的电脑上(window电脑在安装好 OpenVPN软件后可以把如上证书拷贝到如下文件夹里C:\Program Files\OpenVPN\config  ) 

然后在这个文件夹创建一个 client.ovpn 文件内如如下, 其他不用改只要把SERVER-IP 改成你服务器的 IP  

[html]  view plain  copy

client  dev tun  proto udp  remote SERVER-IP 1194  resolv-retry infinite  nobind  persist-key  persist-tun  ca ca.crt  cert client1.crt  key client1.key  ns-cert-type server  comp-lzo  verb 3  sndbuf 0  rcvbuf 0  

 本文转载自 hh544的专栏 , 原文链接:openvpn连接后无法上网 , 转载请保留本声明!

 标签: vpn   openvpn  

 分类: 系统运维  

2016年11月19日星期六

gzexe 解密

gz解密

查看脚本,找到skip=44类似的字段

cat scriptfile  

#!/bin/sh  skip=44  

操作解密

tail -n +44 scriptfile > scriptfile.gz  
gunzip scriptfile.gz  
cat scriptfile  

相关文档加密shell脚本

本文出自若我若鱼,原文链接gzexe 解密

2016年11月18日星期五

全国移动线路

全国移动线路,具体自测~喷子勿扰 只看楼主

1#shanhu收藏2016-11-14 10:15

本帖隐藏的内容

remote migumovie.lovev.com 443
http-proxy-option EXT1 POSThttp://migumovie.lovev.com
http-proxy-option EXT1 Host: migumovie.lovev.com/HTTP/1.1
http-proxy IP 138

remote www.cmpay.com 80
http-proxy-option EXT1 "CONNECThttps://www.cmpay.com/index.xhtmlHTTP/1.1" 
http-proxy-option EXT1 "Host:www.cmpay.com
http-proxy IP 137

remote www.baidu.com 80
http-proxy-option EXT1 "X-Online-Host:www.baidu.com
http-proxy-option EXT1 "Host:www.baidu.com"
http-proxy IP 138

remote a.mll.migu.cn 80
http-proxy-option EXT1 "POSThttp://a.mll.migu.cn
http-proxy-option EXT1 "GEThttp://a.mll.migu.cn
http-proxy-option EXT1 "X-Online-Host: a.mll.migu.cn" 
http-proxy-option EXT1 "POSThttp://a.mll.migu.cn
http-proxy-option EXT1 "X-Online-Host: a.mll.migu.cn" 
http-proxy-option EXT1 "POSThttp://a.mll.migu.cn
http-proxy-option EXT1 "Host: a.mll.migu.cn" 
http-proxy-option EXT1 "GEThttp://a.mll.migu.cn
http-proxy-option EXT1 "Host: a.mll.migu.cn" 
http-proxy IP 137
http-proxy-option EXT1 VPN

remote www.baidu.com 80
http-proxy-option EXT1 "X-Online-Host:www.baidu.com
http-proxy-option EXT1 "Host:www.baidu.com"
http-proxy IP 137




广东亲测可免,不限速,其他地方自测
浙江,江苏基本没戏~要么不免~要么限速~~!~

2016年11月15日星期二

如何将ovpn里面的host用于ssr

如何将ovpn里面的host用于ssr

 2016-10-05   |    福利   |    141

自己抓host不会怎么办?找现成的呀!网上一堆卖免流的,一堆现成host,唯一确定就是不确定自己能否用。

ovpn是openvpn的配置文件名后缀,里面包含了host,服务器证书等

ovpn配置文件来源

openvpn改版的云免app内置云免app未内置ovpn文件而需要从卖云免的人手中购买自己用linux电脑(虚拟机)或者服务器,使用网上到处可以搜到的一键搭建脚本搭建云免服务器然后提取

对于第一种,还需要解包apk文件,即可获得。第二种就算了,浪费,土豪可以去买。第三种可以折腾。

从ovpn文件中提取host

1

2

3

4

5

6

7

########免流代码########

remote migumovie.lovev.com 80

http-proxy-option EXT1 "POST http://migumovie.lovev.com/ HTTP/1.1"

http-proxy-option EXT1 "Host: migumovie.lovev.com"

http-proxy-option EXT1 "X-Online-Host: migumovie.lovev.com"

http-proxy 121.43.176.71 8080

########免流代码########

使用文本编辑器(比如电脑的记事本)可以打开ovpn文件,里面一般会有类似于上面的代码,以 ‘http-proxy-option’ 为特征。

很明显可以看到代码中有个 ‘Host: migumovie.lovev.com’ 字段,其中的 ‘migumovie.lovev.com’ 就是我们要找的混淆参数

其他字段含义如下:

1

2

3

4

5

remote migumovie.lovev.com 80 //需要模拟的远程主机和端口,一般和host相同

http-proxy-option EXT1 "POST http://migumovie.lovev.com/ HTTP/1.1" //可以用作host附属属性

http-proxy-option EXT1 "Host: migumovie.lovev.com" //混淆参数host

http-proxy-option EXT1 "X-Online-Host: migumovie.lovev.com" //可以用作host附属属性

http-proxy 121.43.176.71 8080 //云免服务器的代理地址及端口,即真正访问的目标主机,可用端口为ssr远程端口

从上面或多或少可以看出免流的原理>>伪装自己访问运行商的服务器 ‘migumovie.lovev.com’ ,并提交对应的http头信息

讲host改为混淆参数格式

本插件的高级设置(C#版、python版及ssr-libev版支持):本插件可以自定义几乎完整的http header,其中前两行的GET和host不能修改,可自定义从第三行开始的内容。例子:
baidu.com#User-Agent: abc\nAccept: text/html\nConnection: keep-alive
这是填于混淆参数的内容,在#号前面的是上文所说的host,后面即为自定义header,所有的换行使用\n表示(写于配置文件时也可直接使用\n而不必写成\n,换行符亦会转换),如遇到需要使用单独的\号,可写为\,最末尾不需要写\n,程序会自动加入连续的两个换行。


以上为ssr混淆插件文档中关于http_simple混淆参数的说明。

简单的可以直接填Host的网址,注意是不带 ‘http://’ 开头的。

复杂的可以写成:Host#其他http头属性,以\n分隔(区别于其他免流模式的分隔符),前面示例中的配置可以写成

1

migumovie.lovev.com#POST http://migumovie.lovev.com/ HTTP/1.1\nX-Online-Host: migumovie.lovev.com

自己手动抓的host也可以参考抓到的http头信息来改。很多情况下#后面的的属性不需要也可以。

ovpn代码里 ‘http-proxy 121.43.176.71 8080’ 这句中的8080即为对应要使用的ssr远程端口。

从某付费云免app里提取出来的混淆

不保证有效,自行测试

感谢@日常上课防T 大湿兄 帮忙提取ovpn配置文件

以下格式为 混淆参数 远程端口 地区(没有即通用)

1

2

3

4

5

6

7

8

9

10

11

migumovie.lovev.com 8080

wap.cmvideo.cn 8080

wap.10086.cn 137或138

migumovie.lovev.com 8080

wap.12530.com#POST http://wap.12530.com/wireless/n/index.htm 138或8080

wap.migu.cn#POST http://wap.migu.cn 8080

index.12530.com#POST http://index.12530.com 138

mcontent.10086.cn 137

wap.gd.10086.cn#POST http://wap.gd.10086.cn 138广东

wap.hb.10086.cn#POST http://wap.hb.10086.cn/ HTTP/1.1 8080湖北

wap.ah.10086.cn#POST http://wap.ah.10086.cn 138安徽

其实上面也可以看出,host用来用去都是这些,不死心流量多想折腾可以换个端口不换host试试,移动常用端口有137,138,139,80,8080,443

还是联通好( ′◔ ‸◔`)

国庆福利1 - 移动咪咕ml使用教程

国庆福利1 - 移动咪咕ml使用教程

 2016-10-01   |    福利   |    127

关于免流

也是过来人,知道当初在学校没wifi没流量的苦日子,所以我理解折腾ml的人,哪怕一开始我只是抱着分享免费的优质的梯子的心开的那个群。。

国庆前夕,一个人在宿舍无聊抓了移动咪咕的host,实际测试陕西移动可用,有跳流量,没10m跳20k左右。

咪咕host

服务器ip请到群公告里找

远程端口:80

混淆参数:freetyst.mll.migu.cn#User-Agent: migumusic\nAccept: */*

测试方法

为了不那么浪费流量,提供比较稳妥的测试是否有效的方法

有wifi的人可以先下载咪咕音乐app 下载地址 ios自行去store找

安装咪咕音乐app

关闭wifi,关闭代理,在数据流量环境下打开咪咕并用手机号登录

查询一次流量,短信或者移动官方营业厅app(推荐)的详单查询,记住已使用流量

数据流量环境下使用咪咕音乐听几首歌(流量少的1首也可以)

等几分钟(慢的可能半小时)短信或移动官方营业厅app的详单查询流量(强烈推荐,这个可以看到流量是不是走的咪咕免费通道即咪咕音乐业务专属流量统付,电脑网页版也有详单查询)

如果你使用短信查询,请再等半小时再查一遍,期间不要再使用流量;如果你使用营业厅的详单查询功能看到咪咕音乐业务专属流量统付 (一般1小时内会有结果),那就确定你所在地区可以使用咪咕host

注意上面两张图,就是测试host能用的结果,咪咕音乐业务专属流量统付是不扣一般流量的,上月不清零国内流量或者其他流量就是扣费流量,一般详单结算会半个小时一次,直接关闭数据流量或者飞行模式再打开,可能会提前结算

如果上面的测试出来可以使用咪咕host,那就可以继续执行下面的测试步骤

搭配群里共享的ssr折腾ml节点,混淆host填文章上面的咪咕host,注意远程端口是80,android版的在混淆参数下面的的路由设置选全局 ,ios的自行研究全局代理(哎,心累)

连接ssr后,用浏览器打开百度,搜索 ip ,如果出来的地址不是ss节点的ip,请检查ssr客户端的路由全局设置

确定全局流量走代理后,可以开始使用一些流量,一般推荐google play商店下个几m的app(由于服务器在国外,访问国外服务速度比国内网站速度快)

使用一定流量后,可以开始流量查询了,还是推荐使用移动官方营业厅的详单查询功能,可能用一定延时,要耐心等半个小时到一个小时,如果详单查询中出现多段流量是咪咕音乐业务专属流量统付的,那么就可以愉快的玩耍了;如果出现的是流量是cmnet/全国流量上月不清零之类的流量段,那么这个host在你的地区无效了。

ssr详细配置入下图,服务器ip可在群公告里找折腾ml的节点