2012年12月28日星期五

使用ssh方式管理你的android手机

  • Quicksshd v2.0.3
  • Quicksshd v2.0.3
  • 简介:Quicksshd是android平台上的一款SSH服务器软件,可能将你的Android手机打造成ssd 服务器,支持ssh命令操控手机(支持shell命令),支持sftp登录管理手机文件,Quicksshd可以不使用root权限,如果有root权限 的手机,会默认启用。 新版本支持桌面小插件开关服务。 支持设置开机自动启动服务等。
  • 点击下载
  • Android是基于Linux内核的操作系统,国外的Android机友很早就把sshd的功能添加到Android手机中了,这款软件就是QuickSSHD
     
    QuickSSHD不是免费软件,但是有已付费版本,下载地址:http://soft.shouji.com.cn/down/19283.html
     
    使用QuickSSHD无需Root权限,但如果你想使用高级功能,那就最好破解Root权限。
     
    QuickSSHD支持sftp与xterm(命令行终端)方式管理手机,可USB可3G可wifi,当然,最重要的是你得有电脑,并安装相应 的ssh软件,比如:Tunnelier、Xshell,或者单纯的sftp支持软件:FileZilla,刚提到的电脑上的使用的软件均免费。
     
    安装QuickSSHD,运行,第一次使用,需要配置sshd服务,如果你的手机拥有Root权限,可选22端口,本文以已破解Root权限的手机为例进行操作
     
     
     
    在密码框输入ssh管理密码,请注意,ssh用户名不可自定义,为root,然后点击右上角的“结束”。
     
     
     
     
    随后QuickSSHD会成生随机加密密钥,根据你手机的cpu性能,时间可能会稍久,一般不超过一分钟,之后状态栏会出现Quicksshd正在运行的图标
     
     
     
     
     
    在电脑上管理手机,小编用的软件是:Tunnelier,输入IP,用户名,密码,连接,就可使用命令行终端及文件管理器进行管理手机了!
     
     
     
    小提示:默认/system/目录是不可写的,如果你要使用Quicksshd进行删除移动等操作,终端下输入:
     
    #mount -o rw,remount -t ext2 /dev/block/mtdblock3 /system
     
    或者运行Root Explorer,进入/system目录,加载为读写,然后退出Root Explorer即可。
     
    加载读写后要小心操作哦。

    hola windows客户端的PAC文件

    var hosts = {};
        hosts['pactest.client.hola.org'] = pactest_cb;
        function pactest_cb(url, host)
        {
            if (url.match(/.*\/client_cgi\/\?localpac=1(&stamp=873398280)?$/))
            return 'PROXY client.hola.org';
            return 'DIRECT';
        }
        hosts['bbc.co.uk'] = bbc_cb;
    hosts['bbcfmhds.vo.llnwd.net'] = bbc_cb;
    function bbc_cb(url, host)
    {
    var index = url.indexOf('?');
            if (index==-1)
                index = url.length;
            var ext = url.substr(index-5, 5),
                ext_index = ext.lastIndexOf('.');
            if (ext_index>=0)
            ext = ext.substr(ext_index+1);
            else
            ext = '';
            if (ext!='' && ext.match(/^(gif|png|jpg|mp3|js|css|mp4|flv|svf|json)$/))
            return DIRECT;
            var direct = [/^sa.bbc.co.uk$/];
            for (var i=0; i<direct.length; i++)
            {
            if (host.match(direct[i]))
                return 'DIRECT';
            }
    return 'PROXY 127.0.0.1:6857; DIRECT';
    }

    hosts['facebook.com'] = facebook_cb;
    hosts['facebook.net'] = facebook_cb;
    hosts['fbcdn.com'] = facebook_cb;
    hosts['fbcdn.net'] = facebook_cb;
    hosts['fbstatic-a.akamaihd.net'] = facebook_cb;
    hosts['fbcdn-dragon-a.akamaihd.net'] = facebook_cb;
    function facebook_cb(url, host)
    {
    return 'PROXY 127.0.0.1:6857; DIRECT';
    }

    hosts['google.com'] = gmail_cb;
    hosts['gstatic.com'] = gmail_cb;
    hosts['googleusercontent.com'] = gmail_cb;
    function gmail_cb(url, host)
    {
    return 'PROXY 127.0.0.1:6857; DIRECT';
    }

    hosts['google.com'] = google_cb;
    hosts['gstatic.com'] = google_cb;
    hosts['googleusercontent.com'] = google_cb;
    function google_cb(url, host)
    {
    return 'PROXY 127.0.0.1:6857; DIRECT';
    }

    hosts['hulu.com'] = hulu_cb;
    function hulu_cb(url, host)
    {
    var index = url.indexOf('?');
            if (index==-1)
                index = url.length;
            var ext = url.substr(index-5, 5),
                ext_index = ext.lastIndexOf('.');
            if (ext_index>=0)
            ext = ext.substr(ext_index+1);
            else
            ext = '';
            if (ext!='' && ext.match(/^(gif|png|jpg|mp3|js|css|mp4|flv|svf|json)$/))
            return DIRECT;
            var direct = [/^.*urlcheck.hulu.com$/, /^.*r.hulu.com$/, /^.*p.hulu.com$/, /^.*assets.hulu.com$/, /^.*ll.a.hulu.com$/, /^.*ads.hulu.com$/];
            for (var i=0; i<direct.length; i++)
            {
            if (host.match(direct[i]))
                return 'DIRECT';
            }
    return 'PROXY 127.0.0.1:6857; DIRECT';
    }

    hosts['itv.com'] = itv_cb;
    function itv_cb(url, host)
    {
    var index = url.indexOf('?');
            if (index==-1)
                index = url.length;
            var ext = url.substr(index-5, 5),
                ext_index = ext.lastIndexOf('.');
            if (ext_index>=0)
            ext = ext.substr(ext_index+1);
            else
            ext = '';
            if (ext!='' && ext.match(/^(gif|png|jpg|mp3|js|css|mp4|flv|svf|json)$/))
            return DIRECT;
            return 'PROXY 127.0.0.1:6857; DIRECT';
    }

    hosts['netflix.com'] = netflix_cb;
    function netflix_cb(url, host)
    {
    var index = url.indexOf('?');
            if (index==-1)
                index = url.length;
            var ext = url.substr(index-5, 5),
                ext_index = ext.lastIndexOf('.');
            if (ext_index>=0)
            ext = ext.substr(ext_index+1);
            else
            ext = '';
            if (ext!='' && ext.match(/^(gif|png|jpg|mp3|js|css|mp4|flv|svf|json)$/))
            return DIRECT;
            var direct = [/^.*contactus.netflix.com$/, /^.*blog.netflix.com$/, /^.*nordicsblog.netflix.com$/];
            for (var i=0; i<direct.length; i++)
            {
            if (host.match(direct[i]))
                return 'DIRECT';
            }
    return 'PROXY 127.0.0.1:6857; DIRECT';
    }

    hosts['pandora.com'] = pandora_cb;
    function pandora_cb(url, host)
    {
    var index = url.indexOf('?');
            if (index==-1)
                index = url.length;
            var ext = url.substr(index-5, 5),
                ext_index = ext.lastIndexOf('.');
            if (ext_index>=0)
            ext = ext.substr(ext_index+1);
            else
            ext = '';
            if (ext!='' && ext.match(/^(gif|png|jpg|mp3|js|css|mp4|flv|svf|json)$/))
            return DIRECT;
            var direct = [/^.*stats.pandora.com$/, /^.*blog.pandora.com$/, /^audio.*.pandora.com$/, /^const.*.pandora.com$/];
            for (var i=0; i<direct.length; i++)
            {
            if (host.match(direct[i]))
                return 'DIRECT';
            }
    return 'PROXY 127.0.0.1:6857; DIRECT';
    }

    hosts['twitter.com'] = twitter_cb;
    hosts['twimg.com'] = twitter_cb;
    hosts['twimg0-a.akamaihd.net'] = twitter_cb;
    function twitter_cb(url, host)
    {
    return 'PROXY 127.0.0.1:6857; DIRECT';
    }


        function FindProxyForURL(url, host)
        {
            var index = -1;
            while (true)
            {
            var func = hosts[host.substr(index+1)];
            if (func)
                return func(url, host);
            if ((index = host.indexOf('.', index+1))==-1)
                break;
            }
            return 'DIRECT';
        }
       

    2012年12月24日星期一

    彻底屏蔽优酷广告

    <via http://joys.name/2011/09/block-youku-ad.html>
    不久之前网络上有一个通过修改Hosts来屏蔽各大视频网站广告的方法,谁想到优酷嗅觉灵敏,很快推出了反屏蔽的策略——即便不看广告也会有30秒的黑屏等待。正所谓“道高一尺,魔高一丈”,广大电工又研究出了反“反屏蔽”的方法……
    优酷广告

    具体操作也很简单,跟着我Step by Step即可~

    第一步:屏蔽Hosts

    在操作系统的Hosts文件(C:\Windows\System32\drivers\etc\hosts)中加入如下内容:
    #Youku
    127.0.0.1       atm.youku.com
    127.0.0.1       fvid.atm.youku.com
    127.0.0.1       html.atm.youku.com
    127.0.0.1       valb.atm.youku.com
    127.0.0.1       valc.atm.youku.com
    127.0.0.1       valf.atm.youku.com
    127.0.0.1       valo.atm.youku.com
    127.0.0.1       valp.atm.youku.com
    127.0.0.1       vid.atm.youku.com
    127.0.0.1       walp.atm.youku.com
    127.0.0.1       lstat.youku.com
    127.0.0.1       speed.lstat.youku.com
    127.0.0.1       static.lstat.youku.com
    127.0.0.1       urchin.lstat.youku.com
    127.0.0.1       stat.youku.com

    第二步:屏蔽Flash SharedObjects

    首先找到Flash的SharedObjects存储路径,删除“static.youku.com”这个目录:
    Windows XP:
    C:\Documents and Settings\Administrator\Application Data\Macromedia\Flash Player\#SharedObjects\[随机数]\static.youku.com
    Windows 7:
    C:\Users\Administrator\AppData\Roaming\Macromedia\Flash Player\#SharedObjects\[随机数]\static.youku.com
    然后使用记事本新建一个文件,将文件名修改为“static.youku.com”(即扩展名为“.com”),这样Flash就无法正常读写SharedObjects,从而无法判断是否屏蔽广告了。

    屏蔽广告是与非

    用户屏蔽网站广告“自古有之”,从Firefox的Adblock Plus,到修改Hosts,再到360安全卫士类似软件的附加功能,可谓手段越来越恨,效果越来越好。于是乎网站就不干了,原本就是免费为用户提供内 容,靠着广告收入回收成本(盈利与否另说)。用户都做了广告屏蔽,这样一来仅有的广告收入也减少了。更不用说视频网站昂贵的带宽成本……
    当然用户也有用户的“道理”,诸如广告质量低劣,广告音量大且不可静音,广告时间长且不可跳过(30秒广告15秒视频不是没有见过)……
    这样说来似乎是不可调和的矛盾了,折中一下吧,广告拍得让广大网民喜闻乐见一些,再学学YouTube的广告投递方式,相信用户还是可以买账的。再说网站没了收入,用户不就没得看了吗?这样的后果相信谁也不会希望看到的。

    2012年12月21日星期五

    如何使用obfsproxy搭配shadowsocks-nodejs安全高效的访问互联网

     
    转自: http://sae.chenshaoju.com/?p=14
    该文章无版权,请随意转载或修改。由于编写仓促,可能会有瑕疵,请多多谅解。
    由于WordPress的特性,两个 – 符号可能会变成全角的 —— 符号,实际操作时请注意替换。
    本教程将指导您如何使用shadowsocks-nodejs作为代理服务器,以及使用obfsproxy作为伪装躲避检查。
    本教程的服务端基于CentOS 6.2进行,客户端为Windows 7,由于本人使用的CentOS并非初始(干净的)环境,可能会有误差,同时在其他操作系统上的操作可能会略有差异,请注意按照实际情况更改配置。
    ------以下是服务端的配置------
    首先搭建shadowsocks-nodejs。
    shadowsocks-nodejs是基于Node.js开发的高效网页代理,可以非常方便的在客户端建立一个SOCKS5代理,帮助用户通过VPS或物理计算机访问网络。
    用您喜欢的方式(SSH或任何其他方式)登录您的VPS或服务器的终端控制台,进入一个目录,比如/tmp/,然后从 https://github.com/clowwindy/shadowsocks-nodejs.git 下载shadowsocks-nodejs。
    cd /tmp
    git clone https://github.com/clowwindy/shadowsocks-nodejs.git
    提示:如果提示没有git命令,请运行 yum install git (CentOS)或 yum install git (Ubuntu)。
    下载成功后,进入shadowsocks-nodejs目录:
    cd shadowsocks-nodejs
    用ls命令,可以看到许多文件,我们先修改配置以符合我们的要求,用编辑器打开config.json文件:
    vi config.json
    我们可以看到5行内容(忽略花括号),按下Insert按钮开始修改。第一行(server)可以不用修改,这是提供给客户端的。第二行 (server_port)是服务器的监听端口,通常推荐换一个端口以防被发现,请务必要记住,在本例中,设置为12345端口。第三行 (local_port)也是客户端使用的,暂时不用修改,第四行(password)是密码,通常推荐修改默认密码增加安全性,修改好后务必要记住。第 五行(timeout)是超时设置,通常不用修改。
    更换好端口和密码后,请务必要记下这些信息,因为稍后配置会用到它。按下ESC,输入 :wq 存盘退出。
    现在回到终端控制台上,我们可以将这些内容移动到一个合适的目录,比如,我把整个shadowsocks-nodejs放到了/var目录下:
    mkdir /var/shadowsocks
    mv /tmp/shadowsocks-nodejs/* /var/shadowsocks
    我们需要记住这个路径(/var/shadowsocks),因为稍后会用到。
    现在,需要下载node.js的运行环境,截至到本文发布时,node.js的版本是0.8.16,下载地址是: http://nodejs.org/dist/v0.8.16/node-v0.8.16-linux-x86.tar.gz ,如果该链接已经失效,或者您的Linux是AMD64的,请访问 http://nodejs.org/download/ 获得最新或对应的二进制包。
    下载命令为:
    cd /tmp/
    wget http://nodejs.org/dist/v0.8.16/node-v0.8.16-darwin-x86.tar.gz
    稍等片刻,下载完了,我们下回来一个压缩包,现在需要解压:
    tar zfvx node-v0.8.16-darwin-x86.tar.gz
    解压完毕后用ls命令查看,会有一个node-开头的目录,进入这个目录:
    cd node-v0.8.16-darwin-x86
    然后进入 bin 目录
    cd bin
    用 ls 命令看一下,是否能找到一个 node 的文件,如果能,那么将这个文件复制到 /usr/bin/ 目录下:
    mv node /usr/bin/
    复制完毕后,说明现在已经完成了配置 shadowsocks-nodejs 的服务端环境,还需要将其加入开机自动启动的 rc.local 里,先运行以下命令:
    vi /etc/rc.local
    回车后,会进入编辑器,按下Instre按钮,然后新起一行,添加(包括括号):
    (node /var/shadowsocks/server.js >/dev/null 2>&1 &)
    注意,我的server.js文件(shadowsocks-nodejs解压出来的)在之前移动到了 /var/shadowsocks/ 目录下,如果您修改了路径,那么请按照实际情况对路径进行修改。
    然后按下ESC按钮,并输入 :wq 存盘退出。
    现在,shadowsocks-nodejs的搭建已经完成了,只需要重启VPS或计算机即可立即启动,但是由于shadowsocks-nodejs存在一些特征,容易被不可抗力捕获并屏蔽,因此推荐再利用obfsproxy进行二次封装。
    obfsproxy的主要目的是将各种网络通信封装为一种混杂通信--数据包经过加密,并且参杂了无用信息,使得不可抗力难以侦测到有效流量,从而降低被屏蔽的可能性。
    obfsproxy需要较多的组件,首先先准备开发环境:
    CentOS: yum install autoconf autotools-dev gcc git pkg-config libtool libevent-2.0-5 libevent-dev libevent-openssl-2.0-5 libssl-dev
    Ubuntu: apt-get install autoconf autotools-dev gcc git pkg-config libtool libevent-2.0-5 libevent-dev libevent-openssl-2.0-5 libssl-dev
    注意,CentOS会缺少许多包,或者版本不对,对于这种包只能一个个的编译。比如版本不对的 libevent ,通过Google这个名字可以发现官方网站是 http://libevent.org/ ,而官方网站也提供了下载链接: https://github.com/downloads/libevent/libevent/libevent-2.0.21-stable.tar.gz ,因此需要下载回来,然后进行编译,下面的部分教程是将如何编译 libevent ,如果已经具备该包,或者您是对Linux比较了解的用户,请跳过。
    ------如何编译libevent------
    首先,从 http://libevent.org/ 获得最新版本的下载地址,截至到本文发布时,版本是 2.0.21-stable ,我们使用wget命令下载:
    wget https://github.com/downloads/libevent/libevent/libevent-2.0.21-stable.tar.gz
    然后解压:
    tar zxvf libevent-2.0.21-stable.tar.gz
    解压结束后,进入 libevent-2.0.21-stable 目录
    cd libevent-2.0.21-stable
    注意,这个地方有点不一样,如果您的操作系统是CentOS,并且已经安装了1.x版本的libevent,那么可能在obfsproxy的编译过程中找不到,所以需要编译到其他目录,比如/home/tord/event2/目录。
    ./configure –prefix=/home/tord/event2
    make
    make install
    编译结束后,路径会到 libevent 会安装到/home/tord/event2目录,然后设置变量:
    export libevent_CFLAGS=-I/home/tord/event2/include
    export libevent_LIBS=”-L/home/tord/event2/lib -levent”
    export LD_LIBRARY_PATH=/home/tord/event2/lib/
    现在,就可以开始编译obfsproxy了。
    -------如何编译libevent结束------
    开发环境下载完后,从官方源获取obfsproxy的源码:
    cd /tmp/
    git clone https://git.torproject.org/obfsproxy.git
    然后运行ls命令看看是否有一个obfsproxy的目录,如果有,则继续:
    cd obfsproxy
    ./autogen.sh
    ./configure
    make
    make install
    提示,如果缺少软件包,那么必须使用yum install或apt-get install 命令安装,或者Google缺少的软件包的名字,重新编译安装后,再尝试编译。
    在编译完成后, obfsproxy 会存放在 /usr/local/bin/ 目录中。
    由于我么之前指定了libevent的路径,因此还需要将libevent的库文件拷贝到公共目录中:
    cp /home/tord/event2/lib/libevent-2.0.so.5 /usr/lib/
    最后,重新打开 rc.local 文件:
    vi /etc/rc.local
    然后按下Insert按钮,进入编辑模式,新起一行,然后增加(包括括号):
    (/usr/local/bin/obfsproxy obfs2 –dest=127.0.0.1:12345 server 0.0.0.0:54321 >/dev/null 2>&1 &)
    注意,上图中的 12345 是在shadowsocks-nodejs的config.json文件中配置的端口,而 54321 是 obfsproxy 负责接收和发送混杂数据的端口,推荐按照实际情况为obfsproxy设置一个新端口。
    确认无误后,按下ESC键,并输入 :wq 存盘退出。
    现在,只需要重启VPS或计算机即可让其生效。
    提示:对于CentOS 6.2,可能还需要修改 /etc/sysconfig/iptables 文件允许obfsproxy的端口通过。
    而对于没有端口防火墙的用户,推荐使用iptalbes屏蔽shadowsocks-nodejs的端口(本例中为TCP 12345),以防止被外界扫描到。
    ------以上就是服务器端的配置------
    下面,开始客户端的配置(Windows)。
    首先,从Tor官方网站 https://www.torproject.org/projects/obfsproxy.html.en 下载包含Obfsproxy的Tor包,当然,我们只需要用里面的Obfsproxy。
    截至本文发布时,Windows的包的下载地址是 https://www.torproject.org/dist/torbrowser/tor-obfsproxy-browser-2.4.6-alpha-2_en-US.exe ,请按照实际情况下载。
    下载回来是一个7-Zip自解压压缩包,解压后会生成四个目录和一个可执行文件,我们将App目录里的东西复制到一个合适的位置(比如 D:\FQ\ )。
    访问 http://nodejs.org/download/ ,下载Windows的程序包,截至到本文发布时,x86的下载包是 http://nodejs.org/dist/v0.8.16/node.exe ,AMD64的下载包是: http://nodejs.org/dist/v0.8.16/x64/node.exe ,直接将下载回来的文件放入之前所指定的目录即可( D:\FQ\ )。
    访问 https://github.com/clowwindy/shadowsocks-nodejs ,点击界面上的ZIP按钮,将压缩包下载回来解压,将shadowsocks-nodejs-master文件夹中的内容也移动到之前设定的目录( D:\FQ\ )。
    用记事本打开config.json文件,将password行修改为之前所指定的密码,server_port和server_ip无需修改。
    注意:如果1080端口冲突,请更换一个端口,并在稍后修改浏览器的代理服务器的地方设置为您所指定的端口。
    提示:如果您有整理癖,请按照您的习惯放置,不过在稍后的批处理中,需要按照指定路径进进行访问。
    进入该目录,右击空白区域,新建文本文件,并设定一个名字,然后双击打开,输入:
    START node.exe local.js
    START obfsproxy obfs2 –dest=111.111.111:54321 client 127.0.0.1:8388
    EXIT
    注意:上面的111.111.111.111是您的VPS或服务器的IP地址,54321是您的服务器上的obfsproxy端口,如果您修改了,请按照实际情况填写!
    然后保存并退出,并将新建的文本文件的扩展名修改为.BAT。
    提示:如果看不到扩展名,请打开我的电脑(或计算机),点击工具菜单(如果看不见,先按一下Alt按钮),点击文件夹选项,转到查看选项卡,并取消“隐藏已知文件类型的扩展名”,然后确定,就能看到刚才的文本文件末尾多出来了 .txt ,将其修改为 .bat 即可。
    双击所建议的FQ.BAT,会自动打开两个新窗口,这说明启动成功。
    最后,打开您的浏览器,配置代理为SOCKS5,IP 127.0.0.1 ,端口1080即可(或者您指定的端口)。
    以上就是本教程的全部部分。
    补充1:如果不在乎速度,而在乎安全,可以加上 –shared-secret=PASSWORD 参数,其中PASSWORD是设定的obfsproxy协商密码,比如:
    服务器:
    (/usr/local/bin/obfsproxy obfs2 –dest=127.0.0.1:12345 –shared-secret=PASSWORD server 0.0.0.0:54321 >/dev/null 2>&1 &)
    客户端:
    obfsproxy obfs2 –dest=111.111.111:54321 –shared-secret=PASSWORD client 127.0.0.1:8388
    特别感谢:
    @jimmy_xu_wrk
    @radaiming
    @fdb713
    参考资料:
    https://github.com/clowwindy/shadowsocks-nodejs/wiki
    http://nodejs.org/api/
    https://www.torproject.org/projects/obfsproxy-instructions.html.en
    https://trac.torproject.org/projects/tor/ticket/5009#comment:17
    http://www.wangafu.net/~nickm/libevent-2.0/doxygen/html/
    http://www.cnblogs.com/bluesky23/archive/2012/11/30/2796251.html

    2012年12月11日星期二

    用DD-WRT搭建私有计费WiFi热点教程

    转载自:http://blog.csdn.net/heiheihoho/article/details/6995227


    本人住在高密度小区,使用电信4M宽带ADSL网络,平时使用的比较有限,附近有好几家出租房,我考虑架设无线网络(Wlan)向周围的住户有偿共享网络。
    传统的方法,可以使用专业的无线与宽带计费网关设备和软件,比如MikroTik等。不过,对于个人架设WiFi热点来说,这些方案太过昂贵,安装设置也非常有难度。
    经本人研究,发现了一个非常简便快捷的方案,就是使用DD-WRT与Wiwiz HotSpot Builder,只需要一个普通的家用无线路由器就可以解决。
    本人使用的无线路由器是Linksys WRT54GS (v3)。开始之前,需要先将无线路由器刷第三方固件DD-WRT。Wiwiz对DD-WRT版本功能有一定要求,经本人实验,dd- wrt.v24_nokaid_generic.bin这个版本最为理想,下载地址是:http://www.dd-wrt.com/routerdb/de/download/Linksys/WRT54GS/v3.0/dd-wrt.v24_nokaid_generic.bin/1962
    关于刷DD-WRT的具体过程,网上有很多文章,这里就略过了。
    然后,用浏览器访问DD-WRT的Web管理界面(默认地址是http://192.168.1.1,默认用户名是root,密码是admin),设置好WAN连接(本人使用的是ADSL的PPPoE拨号方式)与无线设置,即建立一个开放的WLAN(无线局域网),并使任何人都可以自由连接到这个AP并通过它访问互联网。如下图:
    clip_image002
    clip_image004
    clip_image006
    接下来,去www.wiwiz.com注册一个用户并验证账户。在Wiwiz Web面板的操作界面创建一个热点,如下图:
    clip_image008
    clip_image010
    clip_image012
    ……
    clip_image014
    要设置好认证方式、费率等,还有认证页面的基本外观,可以自定义图片、颜色等。注意一定要记下HotSpot ID
    然后再设置一个公告信息(热点用户在通过认证后将会看到这个信息)。如下图:
    clip_image016
    接下来,需要在无线路由器里安装配置Wiwiz的客户端程序(Wiwiz HotSpot Builder Utility)。
    进入DD-WRT的Web管理界面做一些基本设置。选择“管理”标签页。
    启用JFFS2支持,见下图。
    clip_image018
    然后按下“应用”按钮。
    然后,开始安装和设置Wiwiz的客户端。用telnet登录到DD-WRT的命令行模式。
    开始菜单 –&gt; 运行 –&gt; 输入“cmd”-&gt; 按“确定”。然后输入telnet 192.168.1.1,按回车。
    输入root,默认密码是admin(注意,输入密码时屏幕不显示)。
    然后依次输入以下命令:
    cd; wget http://dl.wiwiz.com/hsbuilder-util-latest-DD-WRT.tar.gz
    cd /jffs; tar -zxf /tmp/root/hsbuilder-util-latest-DD-WRT.tar.gz
    /jffs/usr/local/hsbuilder/hsbuilder_setup4dd-wrt.sh -dest /jffs setup
    然后系统会提示你输入一些设置信息。一般,只有前两项需要你指定,即Hotspot ID和User Name。Hotspot ID是之前记下的Hotspot ID,而User Name就是你在Wiwiz的用户名。注意,这两个一定要填写正确!
    其他的直接打回车就可以了。然后稍等一会,如果没有错误信息,安装就完成了。如下图所示:
    clip_image020
    测试一下,找台电脑或者手机,用Wifi连到这台无线路由器对应的热点,打开浏览器,随便输入一个http网址,如果能看到认证页面就可以了。
    最后,展示一下我的热点页面。
    clip_image022
    到现在为止,我的热点稳定运行了四个月了,已经有多个固定用户,累计赚了三百多元。效果还是很不错的。
    clip_image024
    clip_image026

    WorldTimeServer Clock

    New York

    搜索此博客