maccool 发表于 2007-6-22 04:13:37

初探 DSL 500 (中达电通CT 500 -RD、DLINK-DSL500-BusyBox on dsl-gateway)

telnet 192.168.1.1

用户名root,密码password (厂家没改)
=================================
BusyBox on dsl-gateway login: root
Password:

BusyBox v0.61.pre (2004.01.30-22:03+0000) Built-in shell (ash)
Enter ';help'; for a list of built-in commands.
==================================

# ls
bin      etc      proc   usr      var.tar
dev      lib      sbin   var

=======================================
# ls /bin
ash       chmod   df      hostnamels      ping      sh      touch
busybox   chown   echo      kill      mkdir   ps      sleep   true
cat       cp      false   ln      mount   pwd       sync      umount
chgrp   dd      grep      login   mv      rm      tar

看来命令还挺多。
=======================================
# cd /usr
# ls
bin    lib    sbin   sharewww

这个www应该就是我们的web管理页面了。
接下来我发现了dsl的服务器。
======================================
# ls sbin
IGMPProxybr2684ctldropbear   routed   thttpd   upnpd
atmarp   brctl      ftpu       snmpd      udhcpc
atmarpd    dhcp-fwd   pppd       tftpu      udhcpd

# ls bin
[         cm_logic    free      test      wget
cm_cli      cm_monitorid          tftp      whoami
cm_convertcm_pc       passwd      tty         yes

你可以看到thttpd, tftp, upnpd, pppd, snmpd ..... 可惜我不知道怎么用这些啊 。。
/usr/bin里面有个tftp和wget,比较不错哈。

这个dsl的设置可以改变,那就是说,这里面的某个地方不是read-only的,
我找了一下,发现是/var

# cd /var
# ls
cachelib    lock   log    run    tmp
# mkdir xuhua
# ls
cachelib    lock   log    run    tmp    xuhua
# rm -r xuhua
# ls
cachelib    lock   log    run    tmp

看到了吧 。。。

# df
Filesystem         1k-blocks      Used Available Use% Mounted on
/dev/mtdblock/0         1376      1376         0 100% /

这是文件系统。
我对www还是比较感兴趣,到里面看了一下 。。。

# cd /usr/www
# ls
cgi-bin   html      index.html
# ls cgi-bin/
firmwarecfgwebcm
# ls html
adv               home            logout.html       restart.html
applycancel.htmlindex.html      logout.js         setup
blank.html      index1.html       postform.frm      status
defs            js                redirect.html   tools
help            logout.frm      refresh.frm
==============================================

我们平时管理adsl的时候会浏览:http://192.168.1.1
登陆后就出来一串url:http://192.168.1.1/cgi-bin/webcm ,
这个就是接受我们请求的cgi程序了,
那个firmwarecfg就是升级adsl镜像的地方:http://192.168.1.1/cgi-bin/firmwarecfg
===================================================

又查看了一下进程:
# ps -ef
PIDUid   VmSize Stat Command
    1 root       1272 S    init
    2 root            S   
    3 root            S   
    4 root            S   
    5 root            S   
    6 root            S   
    7 root            S   
   32 root       1228 S    /usr/sbin/thttpd -d /usr/www -u root -p 80 -c /cgi-b
   33 root       2876 S    /usr/bin/cm_pc
   35 root       1272 S    init
   36 root       2872 S    /usr/bin/cm_logic -m /dev/ticfg -c /etc/config.xml
   37 root       1280 S    /usr/bin/cm_monitor
   48 root      632 S    /sbin/dproxy -c /etc/resolv.conf -d
   52 root       2340 S    /usr/sbin/pppd plugin pppoe nas7 user ta10035538@e p
   99 root      672 S    /usr/sbin/udhcpd /var/tmp/udhcpd.conf
338 root       1592 R    firmwarecfg
339 root            Z   
340 root       1228 S    /usr/sbin/thttpd -d /usr/www -u root -p 80 -c /cgi-b
349 root      660 S    routed
363 root      616 S    /sbin/utelnetd
364 root       1284 S    -sh
397 root       1272 R    ps -ef

可以看到一些基本的服务配置。

在用ftp登陆的时候,虽然登陆成功,但没有权限,
C:\Documents and Settings\Administrator>ftp 192.168.1.1
Connected to 192.168.1.1.
220 FTPU ready.
User (192.168.1.1:(none)): root
331 Password required for root.
Password:
230 User logged in.
ftp> ls
200 PORT command OK.
200 Ignored
ftp>
=======================================

又用tftp,但是我们找到adsl的ftproot在哪里,才疏学浅啊 。。。
哪位高手知道的话,给我回复一下,谢谢。。。

thttpd web server是个不错的东西,dsl500用它构建了一个
方便的web管理系统,这应该是好事儿,可偏偏这些娃儿们把里面的东西搞得乱七八糟,“精简”了一堆好东东,下面我们就来发现一下,还有什么在这个小adsl里面。

先登录:
BusyBox on dsl-gateway login: root
Password:
BusyBox v0.61.pre (2004.01.30-22:03+0000) Built-in shell (ash)
Enter ';help'; for a list of built-in commands.
然后:
=============================================
# cd /usr/www/html/
# ls
adv               home            logout.html       restart.html
applycancel.htmlindex.html      logout.js         setup
blank.html      index1.html       postform.frm      status
defs            js                redirect.html   tools
help            logout.frm      refresh.frm
===================================================
里面的adv文件夹就是一个被隐藏的高级设置选项,
这个操作系统原来是英文版本的,里面的配置页面也一样,但现在已经被改过了,
做了汉化工作,好事情嘛,毕竟国人的英语 。。。
但里面的不少东西都被“汉”丢了,这就不好了,你看上面的index.html和index1.html
接着看另外一个地方:
cd /usr/www/html/defs/style0/menus
# ls
menu.def         menu1_help.html    menu1_setup.html   menu1_top.def
menu.html          menu1_help.js      menu1_setup.js   menu1_top.html
menu1.def          menu1_home.def   menu1_status.def   menu1_top.js
menu1.html         menu1_home.html    menu1_status.htmlmenu_left.html
menu1_adv.def      menu1_home.js      menu1_status.js    menu_top.html
menu1_adv.html   menu1_logout.htmlmenu1_tools.def
menu1_adv.js       menu1_logout.js    menu1_tools.html
menu1_help.def   menu1_setup.def    menu1_tools.js
==============================================
如果没有猜错的话,加 1 的就是原来的,于是我打开连接0的web管理页面:
http://192.168.1.1/cgi-bin/webcm?getpage=..%2Fhtml%2Fdefs%2Fstyle0%2Fmenus%2Fmenu.html&var:style=style0&var:main=menu&var:menu=setup&var:menutitle=Setup&var:pagename=pppoe&var:errorpagename=pppoe&var:pagetitle=Link0%20Setup&var:conid=connection0
图片如下:
http://blog.bc-cn.net/UploadFiles/2007-4/421577888.jpg
很熟悉吧,再看那个url:
http://192.168.1.1/cgi-bin/webcm?getpage=..%2Fhtml%2Fdefs%2Fstyle0%2Fmenus%2Fmenu.html&var:style=style0&var:main=menu&var:menu=setup&var:menutitle=Setup&var:pagename=pppoe&var:errorpagename=pppoe&var:pagetitle=Link0%20Setup&var:conid=connection0
中的menus menu.html(菜单),
var(变量):main=menu, menu=setup, menutitle=setup, pagename=pppoe,
errpagename=pppoe, pagetitle=link0 setup
我把这些修改了一下,成了下面的样子:
http://192.168.1.1/cgi-bin/webcm?getpage=..%2Fhtml%2Fdefs%2Fstyle0%2Fmenus%2Fmenu1.html&var:style=style0&var:main=menu1&var:menu=setup&var:menutitle=Setup&var:pagename=pppoe&var:errorpagename=pppoe&var:pagetitle=Link0%20Setup&var:conid=connection0
在浏览器中打开后是这样一个页面,图片如下:

http://blog.bc-cn.net/UploadFiles/2007-4/421756608.jpg
看到了吧,好像比中文的时候多了些菜单哈,上面的Advanced,tools,status,help
点开看看那些被隐藏的东东:
==============================================================

看看Access Control的内容:
http://blog.bc-cn.net/UploadFiles/2007-4/421999543.jpg
================================================
再来看看tools 。。。。

http://blog.bc-cn.net/UploadFiles/2007-4/421709792.jpg
================================================

然后是Status:

http://blog.bc-cn.net/UploadFiles/2007-4/421543308.jpg
====================================================
最后是help的内容:
http://blog.bc-cn.net/UploadFiles/2007-4/421266782.jpg
====================================================

这六个连接可以点击进入,我把pppoe的连接帮助贴出来吧 。。。

http://blog.bc-cn.net/UploadFiles/2007-4/421702349.jpg
================================================

基本的东西就是这么多了,看看你需要什么功能,自己去找找吧 。。。

看来这种嵌入式的技术是无处不在啊 。。。
我始终认为 自己动手去做一下,自己用眼来看一看,都会有收获的。-=-=-=- 以下内容由 maccool 在 2007年06月22日 04:17am 时添加 -=-=-=-
希望版主看到会加精!~
呵呵!~开玩笑的。
共享一下啦。~ ~ ~
页: [1]
查看完整版本: 初探 DSL 500 (中达电通CT 500 -RD、DLINK-DSL500-BusyBox on dsl-gateway)