|
增加简单版本,
1 使用 haxc 大大的 r38621:版本固件 因为在 服务->菜单里面 有red------------sock2, s-s, pdnsd (实际上不需要red------------sock2) , 还有在服务->菜单 里面的每个项 名词就是叫luci菜单. 意思是首先需要在openwrt里面命令行安装某个服务功能,然后再安装luci的界面部分. 这样就可以通过路由菜单就能控制了.
绝版 r38621 下载 http://pan.baidu.com/s/1kTspLqf (里面有两个版本 一个针对水星MW4530r 的 一个是针对 TP-link WDR4320 我教程里面刷的是 openwrt-ar71xx-generic-tl-wdr4310-v1-squashfs-factory38621-16m)
2 设置s-s 按下面的图设置就可以.
注意不要设置 SOCK5 启动,就是不要勾选启动. 只要透明代理勾选即可. 端口号按图上设置即可, 也可以自己随便设置,大于10000比较好,以免冲突
这里有一些公益的服务器https://www.s-s.net/
3 关闭 red------------sock2(red------------sock) 因为s-s 1.4.2后本身就带了透明代理功能
4 设置pdnsd
ip 改为8.8.8.8 google DNS 即可 其实不改也可以. 或换其他的DNS.
端口号要改成1053
此时已经可以上国外的网站了,但只有三个网站上不去youtbue,facebook,twitter
5 设置dnsmasq
修改/etc/dnsmasq.conf 在该文件里面最后 加入一行 conf-dir=/etc/dnsmasq.d
然后新建一个目录 mkdir /etc/dnsmasq.d
在 /etc/dnsmasq.d目录里面新建一个文件 vim gfw.conf
写入 以下DNS
#Google and Youtube
server=/.google.com/127.0.0.1#1053
server=/.google.com.hk/127.0.0.1#1053
server=/.gstatic.com/127.0.0.1#1053
server=/.ggpht.com/127.0.0.1#1053
server=/.googleusercontent.com/127.0.0.1#1053
server=/.appspot.com/127.0.0.1#1053
server=/.googlecode.com/127.0.0.1#1053
server=/.googleapis.com/127.0.0.1#1053
server=/.gmail.com/127.0.0.1#1053
server=/.google-analytics.com/127.0.0.1#1053
server=/.youtube.com/127.0.0.1#1053
server=/.googlevideo.com/127.0.0.1#1053
server=/.youtube-nocookie.com/127.0.0.1#1053
server=/.ytimg.com/127.0.0.1#1053
server=/.blogspot.com/127.0.0.1#1053
server=/.blogger.com/127.0.0.1#1053
#FaceBook
server=/.facebook.com/127.0.0.1#1053
server=/.thefacebook.com/127.0.0.1#1053
server=/.facebook.net/127.0.0.1#1053
server=/.fbcdn.net/127.0.0.1#1053
server=/.akamaihd.net/127.0.0.1#1053
#Twitter
server=/.twitter.com/127.0.0.1#1053
server=/.t.co/127.0.0.1#1053
server=/.bitly.com/127.0.0.1#1053
server=/.twimg.com/127.0.0.1#1053
server=/.tinypic.com/127.0.0.1#1053
server=/.yfrog.com/127.0.0.1#1053
保存后 重启 pdnsd 和 dnsmasq
/etc/init.d/pdnsd restart
/etc/init.d/dnsmasq restart
设置 pdnsd的路由器开机自动启动 (也可以在路由器界面 “系统”-》“启动项” 设置 重启和开机启动)
/etc/init.d/pdnsd restart enable
一切完成 真不容易啊。
以下是复杂的详细版本
在经历和翻遍了网站上所有教程后终于有所收获,可以路由器自动上上不去的网站了。
刷了12.09.1 r38621 by Haxc | 后 其实就可以fan 打倒美帝的,但我在菜单设置好后 s-s 和 red------------sock 后 就是无法自动fan 打倒美帝 为什么呢? 因为DNS的问题,这个时候只有youtbue,facebook,twitter上不了,其他网站已经可以上了, 这个问题困扰了我很久,直到发现实际就这三个网站上不去才发现DNS的问题。
这里有几个概念要先说一下,
1 s-s 需要实现在美国架设一个服务端, 这里是把s-s-libev-polarssl: 客户端安装到路由器上。
http://s-s.org/en/download/clients.html 这里可以下载对应的网卡版本 我的是4530R用
(最新版本是1.4.6 https://github.com/madeye/s-s-libev)
Haxc 的有的版本里面已经带了s-s,不是最新版本。但也可以使用 ,可以在路由器 菜单 系统-》 软件包 或启动项 里面查看 是否安装。
Haxc 在有的版本里面还有设置界面 在服务-》菜单里面有 s-s 菜单项
(注意,手动安装s-s后 启动会失败,我哭啊,原因是需要polarssl的lib文件, ssh命令 进入 /usr/lib 目录 复制 libpolarssl.so.1.2.5 文件几次 名字复制为 libpolarssl.so.3 和 libpolarssl.so.5 命令为 “cp libpolarssl.so.1.2.5 libpolarssl.so.5” 和 “cp libpolarssl.so.1.2.5 libpolarssl.so.3” 这样s-s 就启动正常了, 具体是libpolarssl.so.5 还是 libpolarssl.so.3 还是libpolarssl.so.2 与下载的安装的s-s-libev-polarssl 库有关,1.4.4需要3,1.4.5需要5 建议多复制几份)
注意:s-s 有两种手动命令行的启动方式,(这里说的不包括 有设置luci界面的, 即不包括在服务-》菜单里面有 s-s 菜单项)
一般默认的就是 ss-local 或 /etc/init.d/s-s start 这是需要先配置一下配置文件。启动后 一般监听1080端口
另一种方式是违禁软件edir 启动,就是自动开启一个透明代理, 实际上就是把red---socks的功能集成了。
注意:这里说一下s-s配置文件, 同时还要注意你的路由器刷Haxc固件 “服务”菜单里面是否带有s-s 的菜单可以直接设置。
因为 默认情况下如果手动安装 opkg install s-s-libev-polarssl 是不会带有 ‘服务’ 菜单里面s-s菜单项设置的。 这样配置文件在 /etc/s-s.json
配置文件格式 请看 https://github.com/madeye/shadow ... es/s-s.json
附上我的服务器地址
{
"server":"162.243.204.115",
"server_port":8388,
"local_port":1080,
"local_addr":"127.0.0.1",
"password":"jinwyp2011",
"timeout":600,
"method":"table"
}
如果固件Haxc版本带有“服务”-》s-s luci菜单的,那么配置文件是在/etc/config/s-s 下面 如果在服务-》s-s 菜单 修改配置就会保存到这里/etc/config/s-s
再次注意:(我要疯了啊) 如果手动安装的情况下 使用ss-local 或 /etc/init.d/s-s start 那么默认会使用 /etc/s-s.json 配置,
需要注意里面的 "local_port":1080, 这个是设置 本地端口的配置。
使用 ss-local 启动可以指定参数 例如 ss-local -c /etc/s-s.json -v
但如果使用违禁软件edir 启动,同样集成了red------------sock2 的透明代理功能,但代理的端口在哪呢? 其实还是 "local_port":1080,指定的, 所以建议另存一份配置 例如 /etc/违禁软件edir.json
把里面的"local_port":1080, 改称"local_port":12345,
然后使用 违禁软件edir -c /etc/违禁软件edir.json -v 启动 这样透明代理的配置和端口是12345 区分开了。
2 red------------sock 或red------------sock2 在Haxc固件中一般已经集成到 “服务” -》red------------sock2 菜单中,实际上如果使用上面的 违禁软件edir -c /etc/违禁软件edir.json -v 启动后 就根本不需要red------------sock了,只有用ss-local启动才需要red------------sock2 同时 本地端口可以设置成12345. 代理ip是127.0.0.1,代理端口是1080
那么如果Haxc固件中集成了 服务-》 s-s 菜单的需要启动red------------sock吗? 在s-s 菜单配置中,有一项 透明代理的复选款,如果不勾 就需要red------------sock配合开启,如果勾了 就不需要red------------sock启动了。
在ssh命令行 可以通过 “netstat -tupln | grep 1” 来查看 s-s 和 red------------sock 是否启动了,
查看端口1开头的 就是我们设置的1080或 12345透明代理端口是否开启。 注意使用违禁软件edir启动后不会有1080端口,只有一个12345透明代理的端口。
到这里,理论上已经可以fan 打倒美帝了,如果是用ss-local启动的可以配合 chrome的switchysharp 代理插件 设置成路由器的代理 192.168.1.1 端口1080 就可以fan 打倒美帝了,firefox可以使用foxproxy插件 ,还可以在插件自定义规则判断 国内网站不走代理,国外网站走代理。
但是对于一般用户 还是不能做到自动fan 打倒美帝。 所以还要设置iptables
3 设置 iptables
注意 如果用了Haxc路由固件,如果服务-》里面有red---socks 并运行了red---socks 后 (如果red------------sock未运行可以在 “系统”-》 启动项 开启 red------------sock 项来运行)
会自动在iptables 里面 加入一条red---socks的规则链, 这个时候也就是说 如果 启动了ss-local 和 red---socks 你已经可以 上国外的网站了 例如slideshare.net 已经全部正常使用 但除了youtbue,facebook,twitter 这三个网站 (坑爹啊,我就是要上这三个啊)
查看iptables 可以到 路由器管理界面的 “状态“-》防火墙 查看, crtl+f 搜索 red------------sock 就能看到 有一个转发到端口11111或12345的规则 (redir port 11111) 端口是在”服务“-》red------------sock2里面设置的。
----------这里我有一个问题 想问Haxc 就是red------------sock设置和 s-s的luci界面的设置后的iptables的规则保存到哪个配置文件中了? 答案是路径在/etc/init.d/s-s
还,如果使用了违禁软件edir 启动就不需要 启动red------------sock了, 但iptables 还是需要设置,因为不启动red------------sock就没有red---socks的规则链了,
这时候需要手动编辑 /etc/firewall.user 文件,(如果用的是luci界面的就可以直接到/etc/init.d/s-s里面,而不是/etc/firewall.user 里面)然后里面加入 4楼提供的iptables 注意 转发的端口 需要改成 违禁软件edir 的配置文件 /etc/违禁软件edir.json 里面的端口就可以了。
4 为了上youtbue,facebook,twitter 这三个网站 我们还需要修改DNS
需要安装 pdnsd 这是一个dns 中转的功能包 同时还要配合dnsmasq 这个功能包 (dnsmasq 路由器固件都已经安装,可以在 “系统”-》 软件包 里面查找 已安装的包 看看dnsmasq 是否安装)
安装 pdnsd 命令 (有的Haxc版本固件中已经安装,同时菜单“服务”-》pdnsd 也有该菜单)
opkg update
opkg install pdnsd
opkg install pdnsd iptables-mod-nat-extra
然后修改 /etc/pdnsd.conf 这个文件 (如果 Haxc版本固件中已经安装 同时菜单“服务”-》pdnsd 也有该菜单话 配置文件就在 /etc/config/pdnsd 里面)
注意以下红色字段的修改 8.8.8.8 用的是google的DNS服务器(参考这篇文章 http://hong.im/2014/03/16/config ... ct-foreign-traffic/)
global {
perm_cache=1024;
cache_dir="/var/pdnsd";
# pid_file = /var/run/pdnsd.pid;
run_as="nobody";
server_port = 1053; # 使用 1053 作为 dns 端口, 默认是 53,一定要修改否则会跟默认 dnsmasq 冲突
server_ip = any; # 设置成 any 表示绑定在任何可用地址,其实不设置问题也不大。
# server_ip = 127.0.0.1; # Use eth0 here if you want to allow other
# machines on your network to query pdnsd.
status_ctl = on;
# paranoid=on; # This option reduces the chance of cache poisoning
# but may make pdnsd less efficient, unfortunately.
query_method=tcp_only;
min_ttl=15m; # Retain cached entries at least 15 minutes.
max_ttl=1w; # One week.
timeout=10; # Global timeout option (10 seconds).
neg_domain_pol=on;
udpbufsize=1024; # Upper limit on the size of UDP messages.
}
server {
label= "myisp";
ip = 8.8.8.8; # Put your ISP's DNS-server address(es) here.
# proxy_only=on; # Do not query any name servers beside your ISP's.
# This may be necessary if you are behind some
# kind of firewall and cannot receive replies
# from outside name servers.
timeout=4; # Server timeout; this may be much shorter
# that the global timeout option.
uptest=if; # Test if the network interface is active.
interface=eth0; # The name of the interface to check.
interval=10m; # Check every 10 minutes.
purge_cache=off; # Keep stale cache entries in case the ISP's
# DNS servers go offline.
edns_query=yes; # Use EDNS for outgoing queries to allow UDP messages
# larger than 512 bytes. May cause trouble with some
# legacy systems.
# exclude=.thepiratebay.org, # If your ISP censors certain names, you may
# .thepiratebay.se, # want to exclude them here, and provide an
# .piratebay.org, # alternative server section below that will
# .piratebay.se; # successfully resolve the names.
}
# This section is meant for resolving from root servers.
server {
label = "root-servers";
root_server = on; # Query the name servers listed below
# to obtain a full list of root servers.
randomize_servers = on; # Give every root server an equal chance
# of being queried.
ip = 8.8.8.8; # This list will be expanded to the full
# list on start up.
timeout = 5;
uptest = none; # Test availability using empty DNS queries.
# query_test_name = .; # To be used if remote servers ignore empty queries.
interval = 30m; # Test every half hour.
ping_timeout = 300; # Test should time out after 30 seconds.
purge_cache = off;
# edns_query = yes; # Use EDNS for outgoing queries to allow UDP messages
# larger than 512 bytes. May cause trouble with some
# legacy systems.
exclude = .localdomain;
policy = included;
preset = off;
}
然后还要 修改/etc/dnsmasq.conf 在该文件里面最后 加入一行 conf-dir=/etc/dnsmasq.d
然后新建一个目录 mkdir /etc/dnsmasq.d在 /etc/dnsmasq.d目录里面新建一个文件 vim gfw.conf
写入 以下DNS
#Google and Youtube
server=/.google.com/127.0.0.1#1053
server=/.google.com.hk/127.0.0.1#1053
server=/.gstatic.com/127.0.0.1#1053
server=/.ggpht.com/127.0.0.1#1053
server=/.googleusercontent.com/127.0.0.1#1053
server=/.appspot.com/127.0.0.1#1053
server=/.googlecode.com/127.0.0.1#1053
server=/.googleapis.com/127.0.0.1#1053
server=/.gmail.com/127.0.0.1#1053
server=/.google-analytics.com/127.0.0.1#1053
server=/.youtube.com/127.0.0.1#1053
server=/.googlevideo.com/127.0.0.1#1053
server=/.youtube-nocookie.com/127.0.0.1#1053
server=/.ytimg.com/127.0.0.1#1053
server=/.blogspot.com/127.0.0.1#1053
server=/.blogger.com/127.0.0.1#1053
#FaceBook
server=/.facebook.com/127.0.0.1#1053
server=/.thefacebook.com/127.0.0.1#1053
server=/.facebook.net/127.0.0.1#1053
server=/.fbcdn.net/127.0.0.1#1053
server=/.akamaihd.net/127.0.0.1#1053
#Twitter
server=/.twitter.com/127.0.0.1#1053
server=/.t.co/127.0.0.1#1053
server=/.bitly.com/127.0.0.1#1053
server=/.twimg.com/127.0.0.1#1053
server=/.tinypic.com/127.0.0.1#1053
server=/.yfrog.com/127.0.0.1#1053
保存后 重启 pdnsd 和 dnsmasq
/etc/init.d/pdnsd restart
/etc/init.d/dnsmasq restart
设置 pdnsd的路由器开机自动启动 (也可以在路由器界面 “系统”-》“启动项” 设置 重启和开机启动)
/etc/init.d/pdnsd restart enable
一切完成 真不容易啊。
几个问题
1 pdnsd,s-s 这两个在Haxc 最新版固件r40431 没有加入 能否加入, s-s 用最新的版本的1.4.5 我测试没有问题了
2 pdnsd,s-s 这两个如果我要自己加上 “服务”的网页的菜单如何做? 之前r38621的版本里面有的,但最新的40431里面没有了
3 red---socks2 运行后会自动在iptables 里面创建一个规则链 red---socks, 请问是在哪个文件配置的。
4 由于 s-s 最新版本加入了 违禁软件edir 自己就能创建一个透明的代理,所以实际上可以不用red---socks了。但需要创建相应的iptables 如何做?
请不要胡乱输入以及粘贴、复制等方式灌水
请尊重作者、并共同维护网站的正常阅读,否则账户将会被限制发帖、回帖,并且积分可能会被清零,站内短信以及阅读权限等都会受到影响,谢谢。
具体限制方式:https://www.right.com.cn/forum/thread-8307840-1-1.html
|
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?立即注册
×
评分
-
查看全部评分
|