Содержание

HTTP Сервер на микротике

Работает только на роутерах с MIPS архитектурой

Инструкция взята отсюда Хостим персональный сайт на роутере и переделана для использования uhttpd. Основное назначение сервера на микротике - уменьшить нагрузку на сервер во время начала учётного периода (когда много пользователей с негативным депозитом).

Установка OpenWRT на микротик

/metarouter import-image file-name=openwrt-mr-mips-rootfs-31411-basic.tar.gz memory=24 enabled=yes name=mr1
/metarouter interface add virtual-machine=mr1 type=dynamic dynamic-bridge=bridge

Настройка OpenWRT


vi /etc/config/network

config interface lan
option ifname eth0
option proto dhcp
  /etc/init.d/network restart
  /etc/init.d/network enable
root@metarouter:/# ifconfig eth0
eth0      Link encap:Ethernet  HWaddr xx:xx:xx:xx:xx:xx  
          inet addr:192.168.88.254  Bcast:192.168.88.255  Mask:255.255.255.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:70 errors:0 dropped:0 overruns:0 frame:0
          TX packets:3 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:3980 (3.8 KiB)  TX bytes:1227 (1.1 KiB)

Настройка uHTTPd

vi /etc/opkg.conf

src/gz snapshots http://openwrt.wk.cz/trunk/mr-mips/packages
dest root /
dest ram /tmp
lists_dir ext /var/opkg-lists
option overlay_root /overlay
opkg update
opkg install uhttpd
config uhttpd main
        # HTTP listen addresses, multiple allowed
        list listen_http        0.0.0.0:8081
        # Server document root            
        option home             /www
        option error_page       /
        option rfc1918_filter   1               
        option network_timeout  30         
        option tcp_keepalive    1                  
/etc/init.d/uhttpd enable
/etc/init.d/uhttpd start

Установка заглушки

  vi /www/index.html
  
  <h1>На Вашем счету нет денег. Доступ к интернету приостановлен</h1>
/ip firewall nat add chain=dstnat action=dst-nat to-addresses=192.168.88.254 to-ports=8081 protocol=tcp dst-address=0.0.0.0/0 src-address-list=negative dst-port=80