Difference between revisions of "Database/Map/Server"

From Open Maps wiki
Jump to: navigation, search
(RPi side)
(Routing)
Line 94: Line 94:
  
 
== Routing ==  
 
== Routing ==  
  <nowiki>sudo iptables -t nat -A PREROUTING -s 10.1.2.1/24 -p tcp -j DNAT --to-destination 10.1.2.1</nowiki>
+
  <nowiki>sudo iptables -t nat -A PREROUTING -s 10.1.2.1/24 -p tcp -j DNAT --to-destination 10.1.2.1
 +
sudo sh -c "iptables-save > /etc/iptables.ipv4.nat"
 +
</nowiki>
  
 
[http://www.raspberrypi.org/forums/viewtopic.php?f=36&t=39225 some popup mehods]
 
[http://www.raspberrypi.org/forums/viewtopic.php?f=36&t=39225 some popup mehods]

Revision as of 11:18, 16 April 2016

RPi side

Lets set up our map server with local cached image files

  1. Install nginx (server), hostapd (wifi AP host), dnsmasq (light dns server)

install Nginx

sudo apt-get update
sudo apt-get install nginx
sudo apt-get install hostapd
sudo apt-get install dnsmasq
sudo service nginx start

  1. Make a link to /var/www to make things easier
sudo ln -s /var/www /home/USER/code


  1. Set up AP with hostap (instructions from set up AP with udhcpd)

edit the file /etc/hostapd/hostapd.conf

interface=wlan0
ssid=TacticalSpaceLab
hw_mode=g
channel=6
auth_algs=1
wmm_enabled=0

Edit the file /etc/default/hostapd and change the line:

#DAEMON_CONF=""

to

DAEMON_CONF="/etc/hostapd/hostapd.conf"
 

Start it up, and add it to start at boot

sudo service hostapd start
sudo update-rc.d hostapd enable
 

sudo service hostapd start

  1. edimax version of hostapd if using an edimax wifi usb
  1. Set up /etc/network/interfaces for serving DHCP and DNS
auto lo 
iface lo inet loopback 

auto wlan0
iface wlan0 inet static
  address 10.1.2.1
  netmask 255.255.255.0
  network 10.1.2.0


  1. configure dnsmasq /etc/dnsmasq.conf
# captive portal to this
no-resolv 
server=/localnet/10.1.2.1
server=/tacticalspace/10.1.2.1
address=/#/10.1.2.1
interface=wlan0
dhcp-range=10.1.2.5,10.1.2.200,12h

  1. restart dnsmasq
sudo /etc/init.d/dnsmasq restart

  1. if you want dnsmarsq script logging...

Create /var/log/dhcp_leases file with write create /usr/bin/logdhcp, make executable add it to dnsmasq config

#!/bin/bash
destfile=/var/log/dhcp_leases
#if [ "$1" == "add" ]
#then
  if [ -f "$destfile" ]
  then
    echo "$1 $2" >> "$destfile"
  fi
#fi

Logging dhcp.png

ended up using dnsmasq for DNS and DHCP. Setting DNS forward IP to local for captive portal setup

Routing

sudo iptables -t nat -A PREROUTING -s 10.1.2.1/24 -p tcp -j DNAT --to-destination 10.1.2.1
sudo sh -c "iptables-save > /etc/iptables.ipv4.nat"

some popup mehods

  1. place javascript files and map tiles into /var/www

MQ var directory archive

Remember to make all /var/www/ folders readable with:

sudo find /var/www -type d -exec chmod a+x {} +

and possibly

sudo find /var/www -type d -exec chown  {} root:root +

For Map content

MapNik coding platform for maps... pull render tiles using this? beautiful Stamen Design map that can be used

Map example1.png
Map example2.png