Database/Map/Server

From Open Maps wiki
Revision as of 11:23, 16 April 2016 by 185.65.232.126 (Talk)

Jump to: navigation, search

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

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