DocServer

This is not really a new project, it is a modified version of the S.W.I.S.S. LibraryServer you can find here. The target router is also TPLink TL-MR3020.

Applicability: Classrooms, boardrooms, small libraries, public institutions, outdoor activities (team buildings, etc)

Skill level for building it yourself: Medium

Read disclaimer before taking for granted anything I say below!

Prerequisites:

– aΒ TL-MR3020 router.Β Should work (using same files provided below) with any other wireless router with USB port(s). Anyway, firmware files provided below are only for TPLink TL-MR3020 v1.

The intended use:

  • share documents/files wirelessly to a local “community” (classroom, boardroom, etc). The advantage is that this router can use power supply from an USB port of your laptop, so sharing files should be as easy as plugging the router into an USB port.
  • rapid (basic) web server deployment.Β Note that php support is not available. CGI support is of course available (CGI shell scripts and also haserl is installed on the box)

Note that access beyond wireless coverage of the box is not possible. If you need a scalable solution (flexibly extending coverage by adding routers), you should check S.W.I.S.S.

Main differences between S.W.I.S.S. LibraryServer and DocServer:

  • LibraryServer has wireless disabled, while DocServer’s web server is intended to be accessed wirelessly
  • nameserver runs locally on the DocServer, while S.W.I.S.S. LibraryServer doesn’t have DNS server service running

Usage:

  • flash the firmware below to your TL-MR3020 v1
  • copy needed docs to the USB memory stick (FAT32 formatted)
  • connect wirelessly to the box (SSID DocServer, default wi-fi password is “thesecret”)

Extra information for DIY type of people πŸ™‚

  • command to generate the firmware is:
make image PROFILE=TLMR3020 PACKAGES="curl haserl uhttpd uhttpd-mod-tls uhttpd-mod-ubus block-mount kmod-scsi-generic kmod-usb-uhci kmod-usb-ohci kmod-usb-storage kmod-usb-core kmod-usb2 kmod-scsi-core kmod-nls-base kmod-nls-iso8859-1 kmod-nls-cp437 kmod-fs-ntfs kmod-fs-vfat dosfsck hd-idle iwcap -libip6tc -kmod-ppp -kmod-pppox -kmod-ppoe -libip6tc -kmod-ipv6 -kmod-ip6tables -odhcp6c -ppp -ip6tables -ppp-mod-pppoe" FILES=files/docserver
  • non-default files to include (you can find them in the download section):
docserver$ tree
.
 └── etc
 β”œβ”€β”€ config
 β”‚Β Β  β”œβ”€β”€ hd-idle
 β”‚Β Β  β”œβ”€β”€ network
 β”‚Β Β  β”œβ”€β”€ system
 β”‚Β Β  β”œβ”€β”€ uhttpd
 β”‚Β Β  └── wireless
 β”œβ”€β”€ passwd
 β”œβ”€β”€ profile
 β”œβ”€β”€ rc.local
 β”œβ”€β”€ shadow
 └── uci-defaults
 └── disable-services
3 directories, 10 files

Defaults:

  • SSID: DocServer
  • default Wi-Fi password: “thesecret”
  • encryption: psk2
  • IP address of LAN interface: 172.20.2.100/16
  • SSH password: d0c55555 (it’s a “zero” in there)

Downloads:

Factory to Openwrt firmware:

docserver-20012015-openwrt-ar71xx-generic-tl-mr3020-v1-squashfs-factory.bin

https://drive.google.com/file/d/0BwnOYFuizzUFWlVoZXZMcE5EUTA/view?usp=sharing

MD5 Checksum: A6B50E15A8BC5E85EB73055B686F6665
SHA-1 Checksum: 9441CA75E69CA01CAEFDEF3DD0103BF0EAB9BD2D

Sysupgrade firmware:

docserver-20012015-openwrt-ar71xx-generic-tl-mr3020-v1-squashfs-sysupgrade.bin

https://drive.google.com/file/d/0BwnOYFuizzUFcHEtMUdKcWxBR3M/view?usp=sharing

MD5 Checksum: 174499385CA1F0F282CAC188639D58C7
SHA-1 Checksum: F97913DDC5E191EBBE22744FA3E7B0035F69720A

Changed files:

docserver.tar.gz

https://drive.google.com/file/d/0BwnOYFuizzUFREJQQV84ZENDaXc/view?usp=sharing

Similar projects (to some extent):

PirateBox, LibraryBox

2 thoughts on “DocServer

    • Hi,
      I don’t do anything extra to preserve the permissions of the files. All the permissions of the files prepared for being included in the firmware file are imported “as is” when building the firmware with ImageBuilder. Or… maybe I misunderstood the question? πŸ™‚
      Best regards,
      Constantin

      Like

Leave a comment