Sharing is Caring
Zur Navigation springen
Zur Suche springen
Sharing is Caring status: experimental | |
---|---|
Beschreibung | Eine Projektidee um das Bewusstsein für Freie Netze zu stärken. |
Ähnliche Projekte:
Software
- hostapd
- dhcp server
- Web frontend
- Am wichtigsten
- In Node.js
- Beta: http://sharing.hq.c3d2.de/
- Repo: https://github.com/c3d2/sharingiscaring/
- DNS server
- Muss für jegliche Namen eine IP zurückliefern
- stupiddns by john: http://gitorious.hq.c3d2.de/sharingiscaring/stupiddns
-->gitorious broken until(pentasource){ask_at_jabber_or_hq(john) ; }
Hardware
- SheevaPlug (von Astro)
- USB WLAN
- Wenn SD-Karte als Storage nicht genügt:
- USB Flash
- USB-Hub
Config
/etc/network/interfaces
auto lo iface lo inet loopback auto eth0 iface eth0 inet manual up ip l s eth0 up auto wlan0 iface wlan0 inet static hostapd /etc/hostapd/hostapd.conf address 10.0.0.1 netmask 255.255.255.0
All interfaces have fe80:: addresses so ssh is reachable.
iptables
Catch-all rules for cached DNS entries:
iptables -t nat -A PREROUTING -p tcp --dport 80 -j DNAT --to-destination 10.0.0.1:80 iptables -t nat -A PREROUTING -p udp --dport 53 -j DNAT --to-destination 10.0.0.1:53
/etc/udhcpd.conf
start 10.0.0.2 end 10.0.0.254 # The interface that udhcpd will use interface wlan0 #default: eth0 # The maximim number of leases (includes addressesd reserved # by OFFER's, DECLINE's, and ARP conficts max_leases 253 #default: 254 # The time period at which udhcpd will write out a dhcpd.leases # file. If this is 0, udhcpd will never automatically write a # lease file. (specified in seconds) auto_time 0 #default: 7200 (2 hours) opt dns 10.0.0.1 option subnet 255.255.255.0 opt router 10.0.0.1
Listening on privileged ports as non-root
setcap 'cap_net_bind_service=+ep' /usr/local/bin/stupiddns setcap 'cap_net_bind_service=+ep' /usr/local/bin/node
runit
#!/bin/sh export PORT=80 export VHOST=sharing.is.caring cd /home/sharing/sic exec chpst -u nobody -U nobody /usr/local/bin/node server.js
Make sure files and files.json are read-/writeable by nobody.
#!/bin/sh exec chpst -u nobody -U nobody /usr/local/bin/stupiddns