路由器刷openwrt系统统

路由器刷openwrt系统,打造翻墙路由器 - 推酷
路由器刷openwrt系统,打造翻墙路由器
我们都需要使用google提供的搜索,gmail等优质服务。但是由于方墙的存在,使得大家各自搞各自的翻墙办法。 其实还有一个不错的办法,那就是在路由器这一层翻墙,对路由器用户透明。
我们使用的方案是openwrt系统, shadowsocks,chinadns。 shadowsocks是一个sock代理软件,而chinadns则好像为了解决天朝的dns污染。
这次没有边做边记录,现在是2,3天之后了,凭借一些记忆写下此篇文章,以供参考。
我们这次使用的设备是一台 netgear WNDR4300. 首先需要在openwrt的官网上查路由设备是否支持openwrt系统。 在这里查:
。 我们的设备没有在列表中,但是没关系,因为我们了解到,WNDR4300和WNDR3700v4几乎是一样的硬件配置,唯一的区别在于g是300Mbps的,4300好像是450Mbps。 下载对应版本的openwrt。在download页面我们发现了一个名为openwrt-ar71xx-nand-wndr4300-ubi-factory.img的文件。 看来虽然4300没有出现在支持设备列表中,但是却存在一个预编译的img文件。 (如果没有预编译好的,就需要下载源代码自己编译了)。
4300的刷机相对简单,不需要进入bootloader,直接登录原生的4300自带的web管理后台,更新固件版本,直接上传img文件,等待一会就可以了。
刷完openwrt之后界面(luci)是英文版的。在它的管理界面里找到更新。更新完成之后在界面中可以设置语言为中文。当然喜欢英文界面的话,这一步就可以省略了。
刷完openwrt,默认路由器是打开了ssh登录的,可以直接ssh到路由器上。 默认也是开启着scp服务的。(注意,这个不是sftp服务。我们 用的是windows上的winscp,在选择协议的地方需要选择scp而不是sftp,否则无法上传文件)。
登录到路由器上,先执行一下:
opkg update
接着我们需要下载chinadns,shadowsocks的安装包,上传到路由器上,安装它们。(如果scp搞不定当然也可以在路由器上wget,一样的)。
chinadns的项目地址是
。根据自己的平台下载,我们的是AR71xx,有预编译好的,我就直接下载了ChinaDNS-C_1.1.7_ar71xx.ipk。没有对应二进制版本的话就需要下载源码自行编译了。
上传到路由器上,opkg install&ChinaDNS-C_1.1.7_ar71xx.ipk安装。
同样去shadowsocks官网
下载最新版的shadowsocks安装。注意,shadowsocks分为服务器端和客户端两个。 在方墙外的一个vps上安装服务器端,好像服务器端有提供node.js版本等多个版本。 我是下载代码进行编译安装的。 安装过程相对简单,就是autogen.sh, make, make isntall就行了。 安装完成后在/usr/local/bin目录下就拥有了ss-server可执行文件。在服务器上运行:
ss-server -p 9999 -s {server ip} -k fuckgfw
服务就运行在9999端口了。其中的{server &ip}要替换成真实的ip。 &-k参数后边的fuckgfw是密码。(这个貌似是惯例通用密码?)
然后是安装客户端。同样把下载到的shadowsocks客户端安装包shadowsocks-libev-polarssl_1.4.6_ar71xx.ipk上传到路由器上,opkg install 安装它。
安装完成之后,需要写配置文件。在/etc/下建立一个名为shadowsocks.json的配置文件。内容写上:
&server&:&xxx.xxx.xxx.xxx&,
&server_port&:9999,
&local_port&:1080,
&password&:&fuckgfw&,
&timeout&:60,
&method&:null
安装完这两个软件后,/etc/init.d目录下就新增了chinadns和shadowsocks两个文件。
这里我们还需要编辑 /etc/init.d/shadowsocks文件。 把其中的ss-local都改为ss-redir,一共只有2处。
启动chinadns和shadowsocks:
/etc/init.d/chinadns start
/etc/init.d/shadowsocks start
让它们开机自动启动:
/etc/init.d/chinadns enable
/etc/init.d/shadowsocks enable
(openwrt系统会根据/etc/init.d/chinadns文件中开头定义的变量 START=95,在/etc/rc.d/下建立S95xxx文件。执行它的start)。
这个时候路由器上就开启了1080端口的一个sockv5代理。 这时已经可以在浏览器上设置sockv5代理, 路由器的ip,端口1080进行翻墙了。 当然这不是我们要的。我们需要在路由器上搞定,对客户端一切透明。
此时我们就需要iptables,把一些指定的ip给转到本地1080端口,让它们走代理。 当然不能把所有的流量都走代理。
我们在 /usr/bin下建立了一个名为 ss-black.sh的文件。 内容如下:
#create a new chain named SHADOWSOCKS
iptables -t nat -N SHADOWSOCKS
#Redirect what you want
iptables -t nat -A SHADOWSOCKS -p tcp -d 74.125.0.0/16 -j REDIRECT --to-ports 1080
iptables -t nat -A SHADOWSOCKS -p tcp -d 173.194.0.0/16 -j REDIRECT --to-ports 1080
iptables -t nat -A SHADOWSOCKS -p tcp -d 208.117.224.0/19 -j REDIRECT --to-ports 1080
iptables -t nat -A SHADOWSOCKS -p tcp -d 209.85.128.0/17 -j REDIRECT --to-ports 1080
iptables -t nat -A SHADOWSOCKS -p tcp -d 199.59.148.0/22 -j REDIRECT --to-ports 1080
#Shadowsocks.org
iptables -t nat -A SHADOWSOCKS -p tcp -d 199.27.76.133/32 -j REDIRECT --to-ports 1080
#slideshare
iptables -t nat -A SHADOWSOCKS -p tcp -d 216.52.242.0/24 -j REDIRECT --to-ports 1080
iptables -t nat -A SHADOWSOCKS -p tcp -d 108.174.0.0/20 -j REDIRECT --to-ports 1080
#wordpress
iptables -t nat -A SHADOWSOCKS -p tcp -d 192.0.78.17/32 -j REDIRECT --to-ports 1080
iptables -t nat -A SHADOWSOCKS -p tcp -d 192.0.78.9/32 -j REDIRECT --to-ports 1080
iptables -t nat -A SHADOWSOCKS -p tcp -d 74.113.233.128/32 -j REDIRECT --to-ports 1080
#Anything else should be ignore
iptables -t nat -A SHADOWSOCKS -p tcp -j RETURN
# Apply the rules
iptables -t nat -A PREROUTING -p tcp -j SHADOWSOCKS
把需要的ip加进去就可以了。
某位朋友还给出了另一个方案,就是把亚洲流量全部直接访问,非亚洲流量全部走代理,他的脚本在这里:
。我这里转载过来:
#create a new chain named SHADOWSOCKS
iptables -t nat -N SHADOWSOCKS
# Ignore your shadowsocks server's addresses
# It's very IMPORTANT, just be careful.
iptables -t nat -A SHADOWSOCKS -d YOUR-SERVERS-IP-ADDRESS -j RETURN
# Ignore LANs IP address
iptables -t nat -A SHADOWSOCKS -d 0.0.0.0/8 -j RETURN
iptables -t nat -A SHADOWSOCKS -d 10.0.0.0/8 -j RETURN
iptables -t nat -A SHADOWSOCKS -d 127.0.0.0/8 -j RETURN
iptables -t nat -A SHADOWSOCKS -d 169.254.0.0/16 -j RETURN
iptables -t nat -A SHADOWSOCKS -d 172.16.0.0/12 -j RETURN
iptables -t nat -A SHADOWSOCKS -d 192.168.0.0/16 -j RETURN
iptables -t nat -A SHADOWSOCKS -d 224.0.0.0/4 -j RETURN
iptables -t nat -A SHADOWSOCKS -d 240.0.0.0/4 -j RETURN
# Ignore Asia IP address
iptables -t nat -A SHADOWSOCKS -d 1.0.0.0/8 -j RETURN
iptables -t nat -A SHADOWSOCKS -d 14.0.0.0/8 -j RETURN
iptables -t nat -A SHADOWSOCKS -d 27.0.0.0/8 -j RETURN
iptables -t nat -A SHADOWSOCKS -d 36.0.0.0/8 -j RETURN
iptables -t nat -A SHADOWSOCKS -d 39.0.0.0/8 -j RETURN
iptables -t nat -A SHADOWSOCKS -d 42.0.0.0/8 -j RETURN
iptables -t nat -A SHADOWSOCKS -d 49.0.0.0/8 -j RETURN
iptables -t nat -A SHADOWSOCKS -d 58.0.0.0/8 -j RETURN
iptables -t nat -A SHADOWSOCKS -d 59.0.0.0/8 -j RETURN
iptables -t nat -A SHADOWSOCKS -d 60.0.0.0/8 -j RETURN
iptables -t nat -A SHADOWSOCKS -d 61.0.0.0/8 -j RETURN
iptables -t nat -A SHADOWSOCKS -d 101.0.0.0/8 -j RETURN
iptables -t nat -A SHADOWSOCKS -d 103.0.0.0/8 -j RETURN
iptables -t nat -A SHADOWSOCKS -d 106.0.0.0/8 -j RETURN
iptables -t nat -A SHADOWSOCKS -d 110.0.0.0/8 -j RETURN
iptables -t nat -A SHADOWSOCKS -d 111.0.0.0/8 -j RETURN
iptables -t nat -A SHADOWSOCKS -d 112.0.0.0/8 -j RETURN
iptables -t nat -A SHADOWSOCKS -d 113.0.0.0/8 -j RETURN
iptables -t nat -A SHADOWSOCKS -d 114.0.0.0/8 -j RETURN
iptables -t nat -A SHADOWSOCKS -d 115.0.0.0/8 -j RETURN
iptables -t nat -A SHADOWSOCKS -d 116.0.0.0/8 -j RETURN
iptables -t nat -A SHADOWSOCKS -d 117.0.0.0/8 -j RETURN
iptables -t nat -A SHADOWSOCKS -d 118.0.0.0/8 -j RETURN
iptables -t nat -A SHADOWSOCKS -d 119.0.0.0/8 -j RETURN
iptables -t nat -A SHADOWSOCKS -d 120.0.0.0/8 -j RETURN
iptables -t nat -A SHADOWSOCKS -d 121.0.0.0/8 -j RETURN
iptables -t nat -A SHADOWSOCKS -d 122.0.0.0/8 -j RETURN
iptables -t nat -A SHADOWSOCKS -d 123.0.0.0/8 -j RETURN
iptables -t nat -A SHADOWSOCKS -d 124.0.0.0/8 -j RETURN
iptables -t nat -A SHADOWSOCKS -d 125.0.0.0/8 -j RETURN
iptables -t nat -A SHADOWSOCKS -d 126.0.0.0/8 -j RETURN
iptables -t nat -A SHADOWSOCKS -d 169.0.0.0/8 -j RETURN
iptables -t nat -A SHADOWSOCKS -d 175.0.0.0/8 -j RETURN
iptables -t nat -A SHADOWSOCKS -d 180.0.0.0/8 -j RETURN
iptables -t nat -A SHADOWSOCKS -d 182.0.0.0/8 -j RETURN
iptables -t nat -A SHADOWSOCKS -d 183.0.0.0/8 -j RETURN
iptables -t nat -A SHADOWSOCKS -d 202.0.0.0/8 -j RETURN
iptables -t nat -A SHADOWSOCKS -d 203.0.0.0/8 -j RETURN
iptables -t nat -A SHADOWSOCKS -d 210.0.0.0/8 -j RETURN
iptables -t nat -A SHADOWSOCKS -d 211.0.0.0/8 -j RETURN
iptables -t nat -A SHADOWSOCKS -d 218.0.0.0/8 -j RETURN
iptables -t nat -A SHADOWSOCKS -d 219.0.0.0/8 -j RETURN
iptables -t nat -A SHADOWSOCKS -d 220.0.0.0/8 -j RETURN
iptables -t nat -A SHADOWSOCKS -d 221.0.0.0/8 -j RETURN
iptables -t nat -A SHADOWSOCKS -d 222.0.0.0/8 -j RETURN
iptables -t nat -A SHADOWSOCKS -d 223.0.0.0/8 -j RETURN
# Anything else should be redirected to shadowsocks's local port
iptables -t nat -A SHADOWSOCKS -p tcp -j REDIRECT --to-ports 1080
# Apply the rules
iptables -t nat -A PREROUTING -p tcp -j SHADOWSOCKS
这个脚本我没有测试,但是看起来它应该能work,没问题。
我们执行一下自己创建的ss-black.sh脚本后, 路由器就应该能够透明的为我们翻墙了。
如果要新增一个网站,我会去dig或nslookup找到它的ip,把它添加到这个文件中。 可以借助APNIC的IP WHOIS工具:(http://wq.apnic.net/apnic-bin/whois.pl) 。
我不是很熟悉iptables,不确定新增的iptables规则是否能立即生效,也没去测试。我测试过的一种办法是这样的:
修改ss-black.sh文件,增加新增的ip或ip段。
执行 /etc/init.d/firewall restart。 &执行完后应该就不能翻墙了,iptables的规则都清掉了。
再次运行 /usr/bin/ss-black.sh。 搞定。
为了让路由器开机后能自动执行ss-black.sh,我仿照chinadns的方式,在 /etc/init.d下新建了名为ss-black的文件。内容如下:
#!/bin/sh /mon
# Copyright (C)
OpenWrt.org
/usr/bin/ss-black.sh
然后 /etc/init.d/ss-black enable。在/etc/rc.d下可以看到生成了S96ss-black文件。当然别忘了+x权限。
这个重启的过程我没有测试是否work。 我们的路由器翻墙稳定的运行了3天没有问题。 看来shadowsocks还是挺稳定的。
到此搞定。 但是看起来好像不那么的智能。 真正的智能是不需要这么一个配置,系统自动能够识别哪些需要翻墙。 也许有更优的方案。
忽然想起了1963年美国总统肯尼迪在柏林墙下的演讲。其中的一句话:“自由有许多困难,民主亦非完美,然而我们从未建造一堵墙把我们的人民关在里面,不准他们离开我们。”
我不管它们有那些所谓的“罪”,在我看来,谷歌,facebook,twitter,都是非常优秀的互联网产品。不论从技术上还是产品设计上,值得我们学习。
已发表评论数()
已收藏到推刊!
请填写推刊名
描述不能大于100个字符!
权限设置: 公开
仅自己可见
正文不准确
标题不准确
排版有问题
没有分页内容
图片无法显示
视频无法显示
与原文不一致OpenWRT软件包安装到外置存储-系统环境初始化及启动脚本 | MYZONE
OpenWRT软件包安装到外置存储-系统环境初始化及启动脚本
我的小极(极1s)5月3号买的,拿到手不到一个钟头就被我刷成了如意云OS 为此还写了个帖子()如今如意云卖给了联想,变成了newifi , 我的小极也刷回了HiwifiOS,HiwifiOS暂时相对来说还算稳定,可以ROOT,装上SS番茄,还装上了LAMP由于固件经常升级,每次升级都会要重新Root重新配软件环境,于是写了一个软件包外置的系统环境初始化及启动脚本整理如下:硬件:极1s (MT7620A)系统:Hiwifi(OpenWRT kernel 3.3.8)目的:安装软件到外置设备(SD卡、U盘、USB移动硬盘),实现系统升级或者恢复出厂设置,一键重新部署步骤: 1、挂载外置设备(非Hiwifi) 2、修改软件源,设置软件包安装路径 3、修改系统环境变量 4、启动脚本编写一、挂载外置设备到/tmp/dataHiwifi默认已经将SD卡挂载在/tmp/storage/mmcblk0p2 链接后的路径是/tmp/data,效果等同。以下脚本基于目录/tmp/data编写二、修改软件源 vi /etc/opkg.confsrc/gz&barrier_breaker&/upgrade_file/ralink/packages
src/gz&PandoraBox&http://downloads./PandoraBox/ralink/mt7620/packages
#使用本地源
#src/gz&PandoraBox&http://127.0.0.1/packages
dest&root&/
dest&usb&/tmp/data/
dest&ram&/tmp
lists_dir&ext&/var/opkg-lists
option&overlay_root&/overlay
option&ssl_ca_path&/etc/ca软件源使用的是PandoraBox的,但这个网站有时候也会抽风,已将上面所有软件包打包下载,放到百度网盘PandoraBox潘多拉(MT7620A)软件包打包 下载地址:密码: gpin下载后放到SD卡或者USB设备的根目录中,正确路径是 /tmp/data/packages.tar.gz 然后可以执行以下脚本解压软件包并将packages目录链接到/www/packagescd&/tmp/data/
tar&zxvf&packages.tar.gz
ln&-snf&/tmp/data/packages&/www/packages修改/etc/opkg.conf软件源,注释掉潘多拉源改为本地#潘多拉源
#src/gz&PandoraBox&http://downloads./PandoraBox/ralink/mt7620/packages
#使用本地源
src/gz&PandoraBox&http://127.0.0.1/packagesopkg安装到SD卡或者外置设备需要加参数-d usb (opkg.conf提前已定义dest usb位置),例如安装python到SD卡:opkg&install&python&-d&usb三、第二步安装完成的python还不能运行,因为系统环境变量中并没有指定python的可执行文件目录 修改系统环境配置文件: vi /etc/profile#!/bin/sh
[&-f&/etc/banner&]&&&&cat&/etc/banner
export&STORAGE=/tmp/data
export&PYTHONHOME=$STORAGE/usr
export&PYTHONPATH=$PYTHONHOME:$PYTHONHOME/lib:$PYTHONHOME/lib/python2.7:$PYTHONHOME/lib/python2.7/site-packages:$PYTHONHOME/lib/python2.7/lib-dynload
export&PATH=/bin:/sbin:/usr/bin:/usr/sbin:$STORAGE/bin:$STORAGE/sbin:$STORAGE/usr/bin:$STORAGE/usr/sbin:$PYTHONHOME
export&LD_LIBRARY_PATH=/lib:/usr/lib:$STORAGE/lib:$STORAGE/usr/lib:$PYTHONPATH
export&HOME=$(grep&-e&&^${USER:-root}:&&/etc/passwd&|&cut&-d&&:&&-f&6)
export&HOME=${HOME:-/root}
#export&PS1='\u@\h:\w\$&'
export&PS1='\[\033[35;1m\]\u\[\033[0m\]@\[\033[31;1m\]\h&\[\033[32;1m\]$PWD\[\033[0m\]&[\[\033[35m\]\$\[\033[0m\]]&'
#export&TERM=xterm-color
[&-x&/bin/more&]&||&alias&more=less
[&-x&/usr/bin/vim&]&&&&alias&vi=vim&||&alias&vim=vi
[&-x&/bin/ls&]&&&&alias&ll='/bin/ls&-alh'
[&-z&&$KSH_VERSION&&-o&\!&-s&/etc/mkshrc&]&||&.&/etc/mkshrc
[&-x&/usr/bin/arp&]&||&arp()&{&cat&/proc/net/&}
[&-x&/usr/bin/ldd&]&||&ldd()&{&LD_TRACE_LOADED_OBJECTS=1&$*;&}
[&-f&/etc/profile.hiwifi&]&&&&{
.&/etc/profile.hiwifi
}使用安装在SD卡中的软件时,有一些脚本手动可以启动成功,但无法随系统自动启动,这是因为环境变量的原因。 脚本开头需引用profile初始化环境:#!&/bin/sh
#初始化环境变量
source&/etc/profile&&/dev/null四、系统环境初始化后链接建立和启动脚本 1、让系统启动脚本/etc/rc.local去执行自定义的初始化脚本/tmp/data/etc/rc.local vi /etc/rc.local#!/bin/sh&/mon
if&[&!&-d&/tmp/data/etc&];&then
&&&&&&&&sleep&15
if&[&-f&/tmp/data/etc/rc.local&];&then
&&&&&&&&/bin/sh&/tmp/data/etc/rc.local&&/dev/null&&
&&&&&&&&#找到自定义的初始化脚本开始执行
&&&&&&&&sleep&15
&&&&&&&&if&[&-f&/tmp/storage/mmcblk0p2/etc/rc.local&];&then
&&&&&&&&&&&&&&&&/bin/sh&/tmp/storage/mmcblk0p2/etc/rc.local&&/dev/null&&
&&&&&&&&&&&&&&&&#第一个位置找不到换个地方
&&&&&&&&else
&&&&&&&&&&&&&&&&sleep&15
&&&&&&&&&&&&&&&&if&[&-f&/tmp/storage/sda1/etc/rc.local&];&then
&&&&&&&&&&&&&&&&&&&&&&&&/bin/sh&/tmp/storage/sda1/etc/rc.local&&/dev/null&&
&&&&&&&&&&&&&&&&&&&&&&&&#第二个位置找不到再换一个地方
&&&&&&&&&&&&&&&&fi
&&&&&&&&fi
fi2、将软件运行的配置文件按照系统目录结构备份到SD卡/tmp/data路径,然后编写启动脚本 /tmp/data/etc/rc.local 下面是我自己的系统初始化和启动脚本,每次升级或者路由器恢复出厂设置后软件还在,启动也一键全自动完成#!&/bin/sh
###################################################
#&&&&Initsize&scripts&for&HiWiFi&[&by&Freedom&]&&&#
###################################################
PATH=/bin:/sbin:/usr/bin:/usr/sbin:/tmp/data/bin:/tmp/data/sbin:/tmp/data/usr/bin:/tmp/data/usr/sbin:/tmp/data/usr
.&/tmp/data/etc/ISRUN.ini
[&&$1&&=&&reset&&]&&&&RESET=&reset&&||&RESET=
NEEDREBOOT=0
#-----------------------------&&system&&&&rc.local
#自定义启动脚本&rc.local
[&-x&/etc/rc.local&-a&-z&&$RESET&&]&||&{
cp&-fR&/tmp/data/etc/rc.local.root&/etc/rc.local
chmod&+x&/etc/rc.local
#升级保留root(针对hiwifi此方法已失效)
[&-f&/lib/upgrade/keep.d/base&-a&-z&&$RESET&&]&||&{
cp&-fR&/tmp/data/lib/upgrade/keep.d/base&/lib/upgrade/keep.d/base
cp&-fR&/tmp/data/lib/upgrade/keep.d/base&/etc/sysupgrade.conf
#自定义hosts
[&-f&/etc/hosts.d/myhosts&]&||&{
[&-f&/tmp/data/etc/hosts.d/myhosts&]&&&&{
ln&-snf&/tmp/data/etc/hosts.d/myhosts&/etc/hosts.d/myhosts
/etc/init.d/dnsmasq&restart&1&/dev/null&2&&1
#安装fuse命令需要用的
[&!&-f&/tmp/data/etc/modules.d/80-fuse&-a&-d&/lib/modules/3.3.8&]&&&&{
[&-f&/lib/modules/3.3.8/fuse.ko&]&||&cp&-fR&/tmp/data/lib/modules/3.3.8/fuse.ko&/lib/modules/3.3.8/fuse.ko
cp&-fR&/tmp/data/etc/modules.d/80-fuse&/etc/modules.d/80-fuse
insmod&fuse
#-----------------------------&&config&&&&environment&&-----------------------------
#用户.ssh配置
[&-d&/root/.ssh&]&||&ln&-snf&/tmp/data/root/.ssh&/root/.ssh
#自定义profile
[&-x&/etc/profile&-a&-z&&$RESET&&]&||&{
cp&-fR&/tmp/data/etc/profile&/etc/profile
.&/etc/profile&&/dev/null
chmod&+x&/etc/profile
#一些系统配置文件
[&-x&/etc/config/system&]&||&{
cp&-fR&/tmp/data/etc/config/system&/etc/config/system
cp&-fR&/tmp/data/etc/config/network&/etc/config/network
cp&-fR&/tmp/data/etc/config/wireless&/etc/config/wireless
cp&-fR&/tmp/data/etc/config/tnetwork&/etc/config/tnetwork
chmod&+x&/etc/config/system
[&-z&&$RESET&&]&&&&NEEDREBOOT=1
#&for&screen
[&-f&/var/run/utmp&]&||&touch&/var/run/utmp
[&-d&/usr/share/terminfo&]&||&ln&-snf&/tmp/data/usr/share/terminfo&/usr/share/terminfo
#&for&file
[&-d&/usr/share/misc&]&||&ln&-snf&/tmp/data/usr/share/misc&/usr/share/misc
#&for&vnstat
[&-d&/var/lib/vnstat&]&||&mkdir&-p&/var/lib/vnstat
#&for&ssl&#&nothing&to&use
[&-d&/etc/ssl&]&||&ln&-snf&/tmp/data/etc/ssl&/etc/ssl
#---------------------------&&mail(&mtu&&&&ssmtp)&----------------------------
[&-d&/etc/ssmtp&]&||&ln&-snf&/tmp/data/etc/ssmtp&/etc/ssmtp
[&-d&/root/Mail&]&||&ln&-snf&/tmp/data/root/Mail&/root/Mail
[&-f&/root/.bash_profile&]&||&ln&-snf&/tmp/data/root/.bash_profile&/root/.bash_profile
[&-f&/root/.bashrc&]&||&ln&-snf&/tmp/data/root/.bash_profile&/root/.bashrc
[&-f&/root/.muttrc&]&||&ln&-snf&/tmp/data/root/.muttrc&/root/.muttrc
#-----------------------------&&cron&&&&monitor&&-----------------------------
#将要执行的计划任务文件拷贝到临时目录,减少对SD卡或者磁盘的读写次数
cp&-fR&/tmp/data/etc/monitor.sh&/tmp/monitor.sh
cp&-fR&/tmp/data/etc/ISRUN.ini&/tmp/ISRUN.ini
[&-n&&`crontab&-l|grep&/tmp/monitor.sh`&&]&||&{
rm&-rf&/tmp/crontab.tmp
crontab&-l&&/tmp/crontab.tmp
echo&&/tmp/crontab.tmp
echo&'*/3&*&*&*&*&/bin/sh&/tmp/monitor.sh'&&&/tmp/crontab.tmp
crontab&/tmp/crontab.tmp
/etc/init.d/cron&restart
#/tmp目录可用空间检测
[&-n&&`crontab&-l|grep&TMPFSCHECK`&&]&||&{
rm&-rf&/tmp/crontab.tmp
crontab&-l&&/tmp/crontab.tmp
echo&&/tmp/crontab.tmp
echo&&*/10&*&*&*&*&TMPFSCHECK=\&\`/bin/df&/tmp|grep&/tmp|awk&'{print&\$4}'\`\&;[&\$TMPFSCHECK&-ge&1000&]&||&reboot&&&&/tmp/crontab.tmp
crontab&/tmp/crontab.tmp
/etc/init.d/cron&restart
#-----------------------------&&symlinks&&-----------------------------
[&-h&/www/aria2&-a&-z&&$RESET&&]&||&ln&-snf&/tmp/data/www/aria2&/www/aria2
#-----------------------------&&sftp-server&&-----------------------------
[&-x&/usr/lib/sftp-server&-a&-z&&$RESET&&]&||&{
ln&-snf&/tmp/data/usr/lib/sftp-server&/usr/lib/sftp-server
ln&-snf&/tmp/data/usr/libexec&/usr/libexec
#-----------------------------&&dropbear&&-----------------------------
sed&-i&'s/1022/22/g'&/etc/config/dropbear&1&/dev/null&2&&1
[&-x&/usr/sbin/dropbear&-a&-f&/etc/dropbear/authorized_keys&-a&-n&&`/bin/ls&/etc/rc.d/|grep&-E&'S.*dropbear'`&&]&||&{
mkdir&-p&/usr/sbin&/usr/bin
cp&-fR&/tmp/data/usr/sbin/dropbear&/usr/sbin/dropbear
cp&-fR&/tmp/data/usr/bin/dbclient&/usr/bin/dbclient
cp&-fR&/tmp/data/usr/bin/dropbearkey&/usr/bin/dropbearkey
cp&-fR&/tmp/data/usr/bin/scp&/usr/bin/scp
cp&-fR&/tmp/data/usr/bin/ssh&/usr/bin/ssh
cp&-fR&/tmp/data/etc/init.d/dropbear.init&/etc/init.d/dropbear
cp&-fR&/tmp/data/etc/config/dropbear.custom&/etc/config/dropbear
cp&-fR&/tmp/data/etc/dropbear&/etc/
chmod&700&/etc/dropbear
chmod&600&/etc/dropbear/*
chmod&+x&/etc/init.d/dropbear
/etc/init.d/dropbear&enable
/etc/init.d/dropbear&restart&1&/dev/null&2&&1
#-----------------------------&&samba&&-----------------------------
[&-f&/etc/samba/smb.conf.template&]&&&&{
[&-n&&`cat&/etc/init.d/samba|grep&'\[root\]'`&&-a&-n&&`cat&/etc/samba/smbpasswd&|grep&root`&&-a&-n&&`cat&/etc/config/samba&|grep&SDCard`&&]&||&{
cp&-fR&/tmp/data/etc/config/samba.custom&/etc/config/samba
cp&-fR&/tmp/data/etc/init.d/samba.init&/etc/init.d/samba
cp&-fR&/tmp/data/etc/samba/smb.conf.template.custom&/etc/samba/smb.conf.template
cp&-fR&/tmp/data/etc/samba/smbpasswd.custom&/etc/samba/smbpasswd
chmod&600&/etc/samba/smbpasswd
chmod&+x&/etc/init.d/samba
chmod&+x&/etc/config/samba
/etc/init.d/samba&enable
/etc/init.d/samba&restart&1&/dev/null&2&&1
#-----------------------------&&openvpn&&-----------------------------
cp&-fR&/tmp/data/etc/openvpn/openvpn.sh&/tmp/openvpn.sh
[&-f&/etc/modules.d/30-tun&-a&-z&&$RESET&&]&||&{
cp&-f&/tmp/data/etc/modules.d/30-tun&/etc/modules.d/30-tun
insmod&tun&1&/dev/null&2&&1
[&-x&/usr/sbin/openvpn&-a&-z&&$RESET&&]&||&ln&-snf&/tmp/data/usr/sbin/openvpn&/usr/sbin/openvpn
[&-f&/etc/config/openvpn&-a&-z&&$RESET&&]&||&ln&-snf&/tmp/data/etc/config/openvpn.custom&/etc/config/openvpn
[&-d&/etc/openvpn&-a&-z&&$RESET&&]&||&ln&-snf&/tmp/data/etc/openvpn&/etc/openvpn
[&-x&/etc/init.d/openvpn&-a&-z&&$RESET&&]&||&ln&-snf&/tmp/data/etc/init.d/openvpn.init&/etc/init.d/openvpn
[&&$OPENVPN_ISRUN&&=&&0&&]&&&&{
[&-f&/etc/firewall.d/firewall-openvpn&]&&&&{
rm&-rf&/etc/firewall.d/firewall-openvpn
/etc/init.d/firewall&restart&1&/dev/null&2&&1
/etc/init.d/openvpn&stop&1&/dev/null&2&&1
[&-z&&`ps|grep&'sbin/openvpn'|grep&-v&grep`&&]&&&&/etc/init.d/openvpn&start&1&/dev/null&2&&1
#-----------------------------&&python&&-----------------------------
[&-d&/usr/lib/python2.7&-a&-z&&$RESET&&]&||&ln&-snf&/tmp/data/usr/lib/python2.7&/usr/lib/python2.7
[&-d&/usr/include&-a&-z&&$RESET&&]&||&mkdir&-p&/usr/include
[&-d&/usr/include/python2.7&-a&-z&&$RESET&&]&||&ln&-snf&/tmp/data/usr/include/python2.7&/usr/include/python2.7
[&-x&/usr/bin/python&-a&-z&&$RESET&&]&||&ln&-snf&/tmp/data/usr/bin/python&/usr/bin/python
#-----------------------------&&goagent&&-----------------------------
[&-x&/etc/init.d/goagent&-a&-z&&$RESET&&]&||&ln&-snf&/tmp/data/etc/init.d/goagent.init&/etc/init.d/goagent
[&&$GOAGENT_ISRUN&&=&&0&&]&&&&{
/etc/init.d/goagent&stop&1&/dev/null&2&&1
/etc/init.d/goagent&restart&1&/dev/null&2&&1
#-----------------------------&&shadowsocks&&-----------------------------
[&-d&/etc/ss&]&||&ln&-snf&/tmp/data/etc/ss&/etc/ss
[&-f&/usr/sbin/ss-redir&]&||&ln&-snf&/tmp/data/usr/sbin/ss-redir&/usr/sbin/ss-redir
[&-f&/etc/config/shadowsocks.json&-a&-z&&$RESET&&]&||&ln&-snf&/tmp/data/etc/config/shadowsocks.json.custom&/etc/config/shadowsocks.json
[&-f&/usr/bin/ss-local&]&||&ln&-snf&/tmp/data/usr/bin/ss-local&/usr/bin/ss-local
[&-x&/etc/init.d/shadowsocks&-a&-z&&$RESET&&]&||&ln&-snf&/tmp/data/etc/init.d/shadowsocks.init&/etc/init.d/shadowsocks
[&-x&/etc/init.d/redsocks&-a&-z&&$RESET&&]&||&ln&-snf&/tmp/data/etc/init.d/redsocks.init&/etc/init.d/redsocks
[&-f&/etc/redsocks.conf&]&||&ln&-snf&/tmp/data/etc/redsocks.conf&/etc/redsocks.conf
[&-d&/etc/salist&]&||&ln&-snf&/tmp/data/etc/salist&/etc/salist
[&&$SHADOWSOCKS_ISRUN&&=&&0&&]&&&&{
[&-f&/etc/firewall.d/10-shadowsocks&]&&&&{
rm&-rf&/etc/firewall.d/10-shadowsocks
/etc/init.d/firewall&restart&1&/dev/null&2&&1
/etc/init.d/shadowsocks&stop&1&/dev/null&2&&1
[&-f&/etc/firewall.d/10-shadowsocks&]&||&{
cp&-fR&/tmp/data/etc/firewall.d/10-shadowsocks&/etc/firewall.d/10-shadowsocks
/etc/init.d/firewall&restart&1&/dev/null&2&&1
/etc/init.d/shadowsocks&start&1&/dev/null&2&&1
/tmp/data/etc/shadowsocks_get_account.sh&&/dev/null&&
#-----------------------------&&Thunder&&-----------------------------
[&-x&/etc/init.d/xunlei&]&||&{
ln&-snf&/tmp/data/etc/init.d/xunlei.init&/etc/init.d/xunlei
[&&$XUNLEI_ISRUN&&=&&0&&]&&&&{
/etc/init.d/xunlei&disable&1&/dev/null&2&&1
/etc/init.d/xunlei&stop&1&/dev/null&2&&1
/etc/init.d/xunlei&enable&1&/dev/null&2&&1
#-----------------------------&&website&&-----------------------------
[&-d&/var/log/nginx&]&||&mkdir&-p&/var/log/nginx
[&-d&/var/log/php&]&||&mkdir&-p&/var/log/php
[&-x&/usr/bin/spawn-fcgi&]&||&ln&-snf&/tmp/data/usr/bin/spawn-fcgi&/usr/bin/spawn-fcgi
[&-f&/etc/config/php5-fastcgi&]&||&ln&-snf&/tmp/data/etc/config/php5-fastcgi&/etc/config/php5-fastcgi
[&-x&/etc/init.d/php5&]&||&ln&-snf&/tmp/data/etc/init.d/php5.init&/etc/init.d/php5
[&-f&/etc/php.ini&]&||&ln&-snf&/tmp/data/etc/php.ini&/etc/php.ini
[&-d&/usr/lib/php&]&||&ln&-snf&/tmp/data/usr/lib/php&/usr/lib/php
[&-x&/usr/bin/php-cgi&]&||&ln&-snf&/tmp/data/usr/bin/php-cgi&/usr/bin/php-cgi
[&-x&/usr/bin/php-cli&]&||&ln&-snf&/tmp/data/usr/bin/php-cli&/usr/bin/php-cli
[&-x&/usr/bin/php-fcgi&]&||&ln&-snf&/tmp/data/usr/bin/php-fcgi&/usr/bin/php-fcgi
[&-d&/usr/share/zoneinfo&]&||&ln&-snf&/tmp/data/usr/share/zoneinfo&/usr/share/zoneinfo
[&-d&/var/log/mysql&]&||&mkdir&-p&/var/log/mysql
[&-d&/tmp/data/tmp&]&||&mkdir&-p&/tmp/data/tmp
[&-f&/f&]&||&ln&-snf&/tmp/data/f&/f
[&-x&/etc/init.d/mysqld&]&||&ln&-snf&/tmp/data/etc/init.d/mysqld.init&/etc/init.d/mysqld
[&-x&/usr/bin/my_print_defaults&]&||&ln&-snf&/tmp/data/usr/bin/my_print_defaults&/usr/bin/my_print_defaults
[&-x&/usr/bin/myisamchk&]&||&ln&-snf&/tmp/data/usr/bin/myisamchk&/usr/bin/myisamchk
[&-x&/usr/bin/mysql&]&||&ln&-snf&/tmp/data/usr/bin/mysql&/usr/bin/mysql
[&-x&/usr/bin/mysql_install_db&]&||&ln&-snf&/tmp/data/usr/bin/mysql_install_db&/usr/bin/mysql_install_db
[&-x&/usr/bin/mysqladmin&]&||&ln&-snf&/tmp/data/usr/bin/mysqladmin&/usr/bin/mysqladmin
[&-x&/usr/bin/mysqld&]&||&ln&-snf&/tmp/data/usr/bin/mysqld&/usr/bin/mysqld
[&-x&/usr/bin/mysqldump&]&||&ln&-snf&/tmp/data/usr/bin/mysqldump&/usr/bin/mysqldump
[&-d&/usr/share/mysql&]&||&ln&-snf&/tmp/data/usr/share/mysql&/usr/share/mysql
[&&$WEB_ISRUN&&=&&1&&]&&&&{
/etc/init.d/php5&restart&1&/dev/null&2&&1
/etc/init.d/mysqld&restart&1&/dev/null&2&&1
[&-f&/etc/nginx/vh.website.conf&]&||&{
cp&-fR&/tmp/data/etc/nginx/vh.website.conf&/etc/nginx/vh.website.conf
/etc/init.d/nginx&restart&1&/dev/null&2&&1
[&-f&/etc/nginx/vh.website.conf&]&&&&{
rm&-f&/etc/nginx/vh.website.conf
/etc/init.d/nginx&restart&1&/dev/null&2&&1
/etc/init.d/php5&stop&1&/dev/null&2&&1
/etc/init.d/mysqld&stop&1&/dev/null&2&&1
#-----------------------------&&syslog-ng&&-----------------------------
#[&-d&/var/log/syslog-ng&]&||&mkdir&-p&/var/log/syslog-ng
[&-f&/etc/rsyslog.conf&]&&&&mv&-f&/etc/rsyslog.conf&/etc/rsyslog.conf.bak
#-------------------------------&&other&&-------------------------------
[&-f&/usr/bin/nmap&]&||&ln&-snf&/tmp/data/usr/bin/nmap&/usr/bin/nmap
[&-d&/usr/share/nmap&]&||&ln&-snf&/tmp/data/usr/share/nmap&/usr/share/nmap
#-----------------------------&&syslog-ng&&-----------------------------
[&&$NEEDREBOOT&&=&&1&&]&&&&reboot配置文件 /tmp/data/etc/ISRUN.ini#&0&禁止&1&运行
OPENVPN_ISRUN=1
GOAGENT_ISRUN=0
SHADOWSOCKS_ISRUN=1
XUNLEI_ISRUN=0
WEB_ISRUN=0一部分监控脚本/tmp/data/etc/monitor.sh#!&/bin/sh
###################################################
#&&&&Monitor&scripts&for&HiWiFi&[&by&Freedom&]&&&&#
###################################################
PATH=/bin:/sbin:/usr/bin:/usr/sbin:/tmp/data/bin:/tmp/data/sbin:/tmp/data/usr/bin:/tmp/data/usr/sbin
.&/tmp/ISRUN.ini
#--------------------&Goagent&-----------------------
[&&$GOAGENT_ISRUN&&=&&0&&]&||&{
curl&-m&5&-Is&http://192.168.199.1:8086/proxy.pac&-o&/dev/null
[&$?&-eq&0&]&||&{
/etc/init.d/goagent&restart&&&/dev/null
logger&-p&DAEMON.WARNING&-t&&goagent[$$]&&&goagent&is&restart&
#--------------------&Thunder&-----------------------
[&&$XUNLEI_ISRUN&&=&&0&&]&||&{
NEEDRESTERT=0
PORT=`grep&local_control.listen_port&/tmp/data/xunlei/cfg/etm.cfg&|&cut&-d&&=&&-f&2`
[&-z&&$PORT&&]&&&&NEEDRESTERT=1&||&{
curl&-s&http://127.0.0.1:$PORT/getsysinfo&-o&/dev/null
[&$?&-eq&0&]&||&NEEDRESTERT=1
[&&$NEEDRESTERT&&=&&1&&]&&&&{
/etc/init.d/xunlei&restart&&&/dev/null
logger&-p&DAEMON.WARNING&-t&&xunlei[$$]&&&xunlei&is&restart&
#----------------------&web&-----------------------
[&&$WEB_ISRUN&&=&&0&&]&||&{
HTTPCODE=&`curl&-sI&/monitor.php|grep&HTTP|awk&'{print&$2}'`&
[&&$HTTPCODE&&=&&200&&]&||&{
[&&$HTTPCODE&&=&&404&&]&||&{
/etc/init.d/mysqld&restart&1&/dev/null&2&&1
logger&-p&DAEMON.WARNING&-t&&mysql[$$]&&&mysql&is&restart&
/etc/init.d/mysqld&restart&1&/dev/null&2&&1
/etc/init.d/php5&restart&1&/dev/null&2&&1
/etc/init.d/nginx&restart&1&/dev/null&2&&1
logger&-p&DAEMON.WARNING&-t&&website[$$]&&&website&is&restart&
Powered By Typecho & Theme By Jimmy | Your IP: 220.177.198.53

我要回帖

更多关于 openwrt固件下载 的文章

 

随机推荐