WifiTagger is a access point mod for tagging peoples' wireless network lists. It's a custom firmware (based on OpenWRT) that sets up the access point to broadcast four SSIDs. Each one is a 31 character text string that can be edited through a web interface. When connecting to any of the SSIDs the access point sets up a captive portal to reroute any web page requests to the web interface. On it the four text string can be entered and sent to the spectrum.
- buy a TP-Link TL-WR741ND WiFi Router
- flash firmware
- setup ssh and login password (sexylama)
- run setup.sh
- chmod +x setup.sh
- ./setup.sh
- restart access point
- connect to "Free Public WifiTagger"
- open any url -> web interface should open
- plugin router to ethernet (not wan port)
- open web interface at http://192.168.0.1/ or http://192.168.1.1/
- user: admin
- password: admin
- restore factory settings if anythings was changed
- run system upgrade uploading the firmware with the "factory" suffix
- openwrt-ar71xx-generic-tl-wr741nd-v4-squashfs-factory.bin
- do not interrupt upload
- after restart you can now telnet to router "telnet 192.168.1.1" and
- set a password with "passwd"
- then telnet gets disabled and ssh login works with "ssh [email protected]"
- also "ssh -o UserKnownHostsFile=/dev/null [email protected]" if you have key problems
- this will copy a bunch of files to the router
- amoung them setup_remote.sh
- which it will then also execute
- if something doesn't work ssh to router and
- run setup_remote.sh manually
- check output for errors
- guide
- firmware
- packages
- ssh [email protected]
- pass: colorado19
- remotely execute stuff
- ssh [email protected] 'cd /www/; mkdir images;'
- copy stuff
- scp index.lua [email protected]:/www/
- disk info
- df -h
- uci ... general configuration see: http://wiki.openwrt.org/doc/uci
- enable wifi
- uci set wireless.@wifi-device[0].disabled=0
- login without host key verification
- ssh -o UserKnownHostsFile=/dev/null [email protected]
- copy firmware with "sysupgrade" suffix to /tmp on router
- rename to tplink.bin
- run "mtd -r write /tmp/tplink.bin firmware"
- liblua
- lua
- uhttpd - http://wiki.openwrt.org/doc/uci/uhttpd
- /etc/init.d/uhttpd enable
- /etc/init.d/uhttpd start
- [uhttpd-mod-lua]
- luci-lib-core - https://luci.subsignal.org/trac/browser
- libuci-lua
- luci-lib-web
- luci-lib-sys
- luci-lib-nixio
- luci-lib-lmo
- luci-sgi-cgi
- [luci-sgi-uhttpd - /usr/lib/lua/luci/sgi/uhttpd.lua]
- [luci-lib-json]
- http://luci.subsignal.org/api/luci/
- http://luci.subsignal.org/api/nixio/
- scp lua_5.1.4-8_ar71xx.ipk [email protected]:/root/
- opkg install uhttpd-mod-lua
- uci set uhttpd.main.lua_prefix=/ ... using root disable statis file served
- uci set uhttpd.main.lua_handler=/www/index.lua
- uci commit uhttpd ... make changed persistent after reboot
- /etc/init.d/uhttpd restart
- wget -qO- http://127.0.0.1/
function handle_request(env) uhttpd.send("HTTP/1.0 200 OK\r\n") uhttpd.send("Content-Type: text/plain\r\n\r\n") uhttpd.send("Hello world.\n") end
- config file
- /etc/config/wireless
- restart network
- /etc/init.d/network restart
- using uci
- uci get wireless.@wifi-iface[0].ssid
- uci set wireless.@wifi-iface[0].ssid="What up?"
- uci commit wireless
- luci-lib-core /usr/lib/lua/luci/store.lua /usr/lib/lua/luci/fs.lua /sbin/luci-reload /usr/lib/lua/luci/model/network.lua /usr/lib/lua/luci/ip.lua /usr/lib/lua/luci/debug.lua /usr/lib/lua/luci/util.lua /etc/config/ucitrack /usr/lib/lua/luci/ltn12.lua /usr/lib/lua/luci/ccache.lua /usr/lib/lua/luci/model/uci.lua /usr/lib/lua/luci/init.lua /usr/lib/lua/luci/version.lua /usr/lib/lua/luci/model/firewall.lua
Use dnsmsqr to wildcard all domains to the routers IP. In "/etc/dnsmasq.conf" add "address=/#/192.168.1.1" and restart dnsmasq. The "#" could also be a "com" to reroute all .com domains.
DOCUMENT_ROOT='/www' GATEWAY_INTERFACE='CGI/1.1' HTTP_ACCEPT='text/html,application/xhtml+xml,application/xml;q=0.9,/;q=0.8' HTTP_ACCEPT_ENCODING='gzip, deflate' HTTP_ACCEPT_LANGUAGE='en-US,en;q=0.5' HTTP_CONNECTION='keep-alive' HTTP_COOKIE='SessionID_R3=0; FirstMenu=Admin_9; SecondMenu=Admin_9_1; ThirdMenu=Admin_9_1_0; Language=de' HTTP_HOST='192.168.1.1' HTTP_USER_AGENT='Mozilla/5.0 (Macintosh; Intel Mac OS X 10.7; rv:17.0) Gecko/17.0 Firefox/17.0' IFS=' ' OPTIND='1' PATH='/sbin:/usr/sbin:/bin:/usr/bin' PPID='1050' PS1='\w $ ' PS2='> ' PS4='+ ' PWD='/www' QUERY_STRING='' REDIRECT_STATUS='200' REMOTE_ADDR='192.168.1.211' REMOTE_HOST='192.168.1.211' REMOTE_PORT='56381' REQUEST_METHOD='GET' REQUEST_URI='/cgi-bin/print_env.sh' SCRIPT_FILENAME='/www/cgi-bin/print_env.sh' SCRIPT_NAME='/cgi-bin/print_env.sh' SERVER_ADDR='192.168.1.1' SERVER_NAME='192.168.1.1' SERVER_PORT='80' SERVER_PROTOCOL='HTTP/1.1' SERVER_SOFTWARE='uHTTPd'