OpenWrt

OpenWrt to dystrybucja GNU/Linux przeznaczona dla małych routerów bezprzewodowych.
Pozwala na instalacje oprogramowania za pomocą menagera instalacji (takich jak apt w Debianie).
Bardzo dobrze sprawują się routery Wrt54Gl firmy linksys oraz Asus WL500gP z 2 portami usb.
Sam osobi¶cie przerobiłem wiele Linksys-ów Wrt54Gl i nigdy nie miałem z nimi żadnych problemów. Są idealne jako alternatywa dla routerów cisco pod względem dostępu do sieci lokalnej za pomoca vpn (można na tych routerach zainstalować oprogramowanie openvpn).
Za to router Asus Wl500gP którego aktualnie używam w domu może zastapić nam mały serwer :) Dzięki wbudowanym 2 portom USB można podpiąć do 1 dysk hdd i postawić sambe (serwer plików) do 2 drukarkę i router będzie działał również jako print serwer.
Poniżej opiszę sposoby instalacji na systemie już nie stety nie rozwijanym (openwrt White Russian) ale działaj±cym stabilnie i co najważniejsze do¶ć prostym w obsłudze kilka ciekawych rozwi±zań.


Wstępna konfiguracja OpenWrt 0.9

(z strony http://eko.one.pl/index.php?page=openwrt-konfiguracja wpełni sprawdzona :) )

Pdf zawiera:

1. Whiterussian
1.1. Uzupełnienie konfiguracji
1.2. USB storage
1.3. Klonowanie adresu MAC
1.4. Dostęp do wszystkich kanałow (12,13,14)
1.5. Zabezpieczanie WiFi
1.6. DynDNS
2. Kamikaze
2.1. Uzupełnienie konfiguracji
2.2. USB storage
2.3. Klonowanie adresu MAC

2.4. Zabezpieczanie WiFi
2.5. DynDNS
3. Podbijanie TTL (TTL + 1)

Pobierz  - Wstępna konfiguracja.pdf

OpenWrt - torrenty

(ze strony http://eko.one.pl/index.php?page=openwrt-torrent)

Pdf zawiera:

1. Changelog
2. Zasada działania
3. Instalacja
4. Automatyzacja
5. Zakończenie

Pobierz - torrenty.pdf


Zmiana portu logowania ssh

Żeby zmienić port logowania ssh wystarczy tylko wyedytować plik : /etc/init.d/S50dropbear

i zmienić  ostanią linie w pliku  dodając port np 1022 : /usr/sbin/dropbear -p 1022



Konfiguracja Openwrt

(ze strony http://wiki.openwrt.org/OpenWrtDocs/Configuration?action=print )

Pdf zawiera:

1. NVRAM
2. Network configuration
3. Ethernet switch configuration
4. Wireless configuration
1. Basic settings
2. MAC filter
3. WEP encryption
4. WPA encryption
5. Wireless Distribution System (WDS) / Repeater / Bridge
6. WDS Routed Networks (P2P)
7. A note on encryption with WDS
8. Wireless client / wireless bridge
5. Basic system configuration and usage
1. busybox - The Swiss Army Knife of Embedded Linux
2. cron - job scheduler
3. syslog - Logging
4. dropbear - Secure Shell server
5. iptables - Firewall
6. dnsmasq - DNS and DHCP server
7. Time
8. Timezone
6. HOWTOs / Additional Configuration

Pobierz - konfiguracja Openwrt.pdf



Konfiguracja Openwrt jako printserver

(ze strony http://openwrt.livenet.pl/doku.php/hardware:printserver )

Pdf zawiera:

Jak zainstalować obsługe drukarki na Opewrt Kamikaze oraz WhiteRussian

Pobierz - konfiguracja printserver.pdf



Konfiguracja QOS

Pdf zawiera:

Instalacja QOS na Kamikaze (działa również na openwrt tylko trzeba pozmieniać komendy instalacyjne)

Pobierz - konfiguracja QOS




  Instalacja Samby

Instalacja Samby polega na zainstalowaniu paczki : 

ipkg install samba-server

ipkg install samba-client

edytujemy plik  /etc/samba/smb.conf u mnie wygląda on tak :

Gdzie path = /mnt/disc0_6 jest miejscem gdzie posiadam wszystkie pliki.

[global]
syslog = 0
syslog only = yes
workgroup = Garwi
server string = Asus Router by Garwi
security = share
encrypt passwords = yes
guest account = nobody
local master = yes
name resolve order = lmhosts hosts bcast

[tmp]
comment = /tmp
path = /tmp
browseable = yes
public = yes
writeable = no

[wymiana]
comment = dysk usb
path = /mnt/disc0_6              
browsable = yes
public = yes
writable = yes
create mask = 777
directory mask = 777
directory security mask = 777

Powinien stworzyć się plik w /etc/init.d/samba   jak go nie będzie to trzeba ręcznie utworzyć i wpisać :

#!/bin/sh /etc/rc.common
# Copyright (C) 2006 OpenWrt.org

DEFAULT=/etc/default/samba
RUN_D=/var/run/samba
NMBD_PID_F=$RUN_D/nmbd.pid
SMBD_PID_F=$RUN_D/smbd.pid

start() {
        [ -f $DEFAULT ] && . $DEFAULT
        mkdir -p $RUN_D
        nmbd -D $NMBD_OPTIONS
        smbd -D $SMBD_OPTIONS
}
stop() {
        [ -f $SMBD_PID_F ] && kill $(cat $SMBD_PID_F)
        [ -f $NMBD_PID_F ] && kill $(cat $NMBD_PID_F)
}

Aby Samba uruchamiała się automatycznie to można zrobić skrypt : vim /etc/init.d/S85samba   oraz wpisać  /etc/init.d/samba start  i zapisać (należy pamiętać aby pliki miały prawa do wykonywania )

Żeby podmontować sobie dyski sieciowe na routerze potrzebny jest nam smbfs. Mozna go ¶ci±gn±ć wpisuj±c komendę : ipkg install http://riot.org/seb/smbfs_0.0_mipsel.ipk

Po czym dodać do jądra : insmod smbfs

I powinno działać wystarczy teraz utworzyć sobie katalog na routerze : mkdir /mnt/sieciowy     i podmontować sobie jakis udział  smbmount //adres ip/udzial /mnt/sieciowy -o username=uzytkownik,password=hasło   i powinno być ok.


Instalacja Ftp (vstpd)

Pdf zawiera :

Instalacja i konfiguracja vstpd na OpenWrt WhiteRussian

Pobierz instalacja -vstpd


Zmiana mac adresu wanu.

Wystarczy prosta komenda set wan_hwaddr="aa:bb:cc:dd:ee:ff"  po czym : nvram commit    i po sprawie , a i jeszcze reboot.



OpenVpn.

Instalacja Openvpn-a na WhiteRussian . Opiszę dwie metody jedna prosta to zrobienia dosłownie w 5min a druga trochę bardziej zaawanswana na wielu klientów oraz z możliwo¶ć routingu międzynimi.

Metoda 1 - czyli 1 serwer i 1 klient  za pomocą jednego klucza szyfrującego połączenie.Najczęściej używana przez administratorów. Za pomocą tej konfiguracji może dostać się do danej sieci tylko jedna osoba (na raz). Jest tylko serwer i klient i nikt więcej się do niej nie dostanie.Nie ma możliwości pracy zdalnej przez kilku urzytkowników.

Metoda 2- czyli serwer i praktycznie dowolna liczba userów. W tym wypadku trzeba zrobić centum certyfikacyjne i utworzyć oddzielne certyfikaty na serwer oraz userów.Dochodzi jeszcze do tego klucz wymiany dh (Diffie-Hellmann).Jest możliwość również łączenie oddziałów wraz z ustawieniem tras routingu do poszeczgólnych lokalizacji (dostęp do każdej podsieci z dowolnego oddziału).


Metoda 1

Na poczętek instalujemy Openvpn  :

ipkg install openvpn easy-rsa     Maj±c już zainstalowan± aplikacje mósimy zastanowić się na jakim porcie będziemy nawiazywać poł±czenie. Defaultowo jest na porcie UDP 1194 . My zrobimy na przykładnie portu UDP 5000.

Puszczamy port 5000 na firewall z zew. Najprościej jest wyedytować plik /etc/config/firewall i dodać wpis :  accept:proto=udp dport=5000 .  Zapisać i zrestartować.

Pierwszy krok mamy za sobą. Teraz trzeba puścić ruch przez wirtualny interface jaki nam się stworzy przy uruchomieniu openvpn .

Tworzymy katalog :  mkdir /etc/openvpn    | I tworzymy skrypt  vim /etc/openvpn/forwarding.sh    |

Po czym wklejamy zawartość :

iptables -A INPUT -i br0 -j ACCEPT
iptables -A FORWARD -i br0 -j ACCEPT
iptables -A INPUT -i tun+ -j ACCEPT
iptables -A FORWARD -i tun+ -j ACCEPT
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE

Zapisujemy i dajemy prawa wykonywania chmod a+x forwarding.sh

Oczywiście miło by było żeby uruchamiał się przy starcie więc można stworzyć drugi skrypcik : vim /etc/init.d/S61forwarding    | I wpisujemy :

#!/bin/sh
. /etc/openvpn/forwarding.sh

Zapisujemy i dajemy prawa do wykonywania jak w przypadku wyżej .

Tworzymy wspólny klucz dla serwera i klienta - Przechodzimy do katalogu /etc/openvpn/ i tworzymy klucz komendą : openvpn --genkey --secret klucz.key

I w tym momencie mamy już gotowy klucz. Teraz przyszła pora na stworzenie pliku konfiguracyjnego tunel.conf (katalog /etc/openvpn/)

vim /etc/openvpn/tunel.conf       | I wklejamy konfiguracje.

dev tun                                                - 
proto udp
port 5000
ifconfig 10.8.0.1 10.8.0.2
secret /etc/openvpn/klucz.key
daemon
comp-lzo

Można dodać kilka opcji jak ping : warto¶ć ( co pozwala sprawdzać stan połaczenia i ewewntualne wznowienie poł±czenia) verb 3 : pozwala okre¶lić wrażliwo¶ć logów jakie maj± się generować i jeszcze wiele innych. Ale miało być szybko i prosto. Więc tak naprawdę serwer można już uruchomić :)

Można to zrobić albo z komendy :

openvpn --config /etc/openvpn/tunel.conf lub zrobić skrypt przy starcie routera  vim  /etc/init.d/S58openvpn.sh

#!/bin/sh
openvpn --daemon --config /etc/openvpn/tunel.conf

Zapisać i dać prawa do wykonywania.

W przypadku komendy openvpn --config /etc/openvpn/tunel.conf  trzeba oddczekać aż zakończy się iniciowanie tunelu lub poprosu po kilku sekundach zamknąć terminal (nie używać ctr+c bo rozłączymy tunel).

Naszym oczom powinien pojawić się nowy interface (komenda ifconfig) :









I na routerze mamy już gotowy serwer Openvpn.

Klient Windows OpenVpn

Jak już mamy serwer to przydało by się skonfigurować klienta . Poniżej opiszę procedurę klienta Windowsowego .

¦ci±gamy najnowsz± wersję openvpn dla windows na obecną chwilę http://openvpn.se/files/install_packages/openvpn-2.0.9-gui-1.0.3-install.exe

I instalujemy.Postępujemy według instrukcji i powszystkim tworzymy plik konfiguracyjny w katalogu (domy¶lnie zainstalowanego openvpn) C:\Program Files\OpenVPN\config

np tunel.ovpn (tworzymy za pomoc± notepada tylko zapisujemy zamiast *.txt to *.ovpn)

W pliku tym wklejamy :

remote  (po spacji wpisujemy publiczny adres ip serwera )

dev tun

proto udp

port 5000

ifconfig 10.8.0.2. 10.8.0.1

secret klucz.key

route 192.168.1.0 255.255.255.0 (jest to przykład trasy routingu ,jeżeli na routerze jest inna podsieć  lan to należy ją wpisać)

comp-lzo

Zapisujemy . Trzeba pamiętać że do katalogu C:\Program Files\OpenVPN\config kopiujemy też certyfikat klucz.key

Teraz  w windowsie w prawym dolnym rogu powinni¶my mieć znaczek openvpn gui . Wystarczy kliknąć prawy przycisk na ikonie i zaznaczyć connect . I powinno ¶migać :)


Poniżej wklejam pdf-a z instalacją na wiele userów oraz centrum certyfikacyjnym. Jak coś służe pomocą garwi@garwi.pl

OpenVpn z wieloma klientami .


(ze strony Artykuł „VPN na miare” Koziński http://www.pckurier.pl/archiwum/art0.asp?ID=6130 )

Pobierz openvpn konfiguracja.

Pobierz openvpn konfiguracja2

Niestety nie mam już czasu robić swojego opisu ale z czasem zrobie krok po kroku instalacje jakiej sam używam w wiel firmach .
Storna Główna                     Kontakt                 Download