margor@jabber.gda.pl Blog RSS O mnie FreeBSD jako router i domowy serwer część 2 - konfiguracja access pointa Wpis na 0. poziomie, wysłany 09 lipca 2008 o 01:53:30. Artykuł jest kontynuacją howto opisującego sposób konfiguracji bardzo prostego routera na potrzeby domowe z użyciem komputera z systemem FreeBSD 7.0. W części drugiej przedstawiam przykładową rozbudowę o sieć WLAN opierając się na własnym, skromnym doświadczeniu. Zakładam, że posiadasz kartę radiową z chipsetem Atheros 5212 np. TL-WN550G/TL-WN551G (802.11 b/g). Sprzęt niedrogi i dobrze obsługiwany, bez problemów do kupienia na najpopularniejszym polskim portalu aukcyjnym. Dla komputerów łączących się bezprzewodowo postanowiłem założyć oddzielną sieć, wybrałem adres 10.1.1.0/24. W celu ustawienia urządzenia w tryb access point wystarczy wydać następujące polecenie: # ifconfig ath0 inet 10.1.1.1 netmask 255.255.255.0 ssid freebsdap mode 11g mediaopt hostap Gdzie ssid to identyfikator sieci. Aby ustawienia zostały zachowane należy uwzględnić konfigurację interfejsu w pliku /etc/rc.conf: ifconfig_ath0="inet 10.1.1.1 netmask 255.255.255.0 ssid freebsdap mode 11g mediaopt hostap" Dostosowanie konfiguracji dhcpd Następnym krokiem będzie konfiguracja demona isc-dhcp3-server do obsługi dodatkowej sieci. W tym celu należy dodać odpowiedni wpis do pliku /usr/local /etc/dhcpd.conf: # wireless network subnet 10.1.1.0 netmask 255.255.255.0 { range 10.1.1.10 10.1.1.254; option routers 10.1.1.1; option domain-name-servers 153.19.250.100, 217.8.168.244; 1 z 6 2010-03-26 09:47
} Podobnie jak w przypadku wired network z pierwszej części artykułu, adresy od 1 do 9 zarezerwowałem na stałe IP, reszta będzie przydzielana dynamicznie. Trzeba pamiętać o dopisaniu ath0 w /etc/rc.conf do listy interfejsów, na których ma nasłuchiwać dhcpd: dhcpd_ifaces="fxp1 ath0" Zmiany zostaną uwzględnione po ponownym uruchomieniu usługi: # /usr/local/etc/rc.d/isc-dhcpd restart Dostosowanie PF Jeżeli zamierzasz udostępniać połączenie z Internetem dla wszystkich komputerów podłączonych do sieci WLAN, możesz to zrobić stosując prostą komendę NAT, analogiczną do wcześniejszej dla sieci 10.0.0.0/24. Dla prostoty przykładu zakładam, że podobnie jak w przypadku sieci kablowej ruch z interfejsu WLAN nie będzie filtrowany. Należy być jednak świadomym zagrożenia i rozważyć stosowanie filtrowania pakietów + ewentualnie dodatkowych zabezpieczeń, zależnie od polityki bezpieczeństwa. # makra do dodania wlan_if="ath0" wlan_net="10.1.1.0/24" # nowa opcja (ostroznie z tym interfejesem) set skip on $wlan_if # druga komenda NAT dla sieci WLAN nat on $ext_if from $wlan_net to any -> $ext_if Czas załadować nowe regułki: # pfctl -f /etc/pf.conf Po tych czynnościach punkt dostępowy jest otwarty dla wszystkich bez konieczności podawania hasła. Następnym krokiem będzie bardzo podstawowe zabezpieczenie sieci za pomocą szyfrowania WPA-PSK (w tym przypadku WPA2) z pomocą hostapd(8). Demon jest częścią base systemu. Konfiguracja szyfrowania WPA2-PSK Zawartość pliku /etc/hostapd.conf w przypadku WPA-PSK powinna wyglądać mniej więcej: interface=ath0 # nazwa naszego interfejsu driver=bsd debug=1 2 z 6 2010-03-26 09:47
ctrl_interface=/var/run/hostapd ctrl_interface_group=wheel ssid=freebsdap wpa=2 # dla korzystania z WPA2 wpa_passphrase=to!_j3st_h4sl0 # unikalne haslo dostepowe wpa_key_mgmt=wpa-psk wpa_pairwise=ccmp TKIP Warto zadbać o to, aby tylko root mógł czytać jego zawartość: # chmod 600 /etc/hostapd.conf Nie należy zapomnieć o dopisaniu hostapd do /etc/rc.conf: hostapd_enable= YES W celu obsłużenia WPA przez jądro należy załadować moduł wlan_xauth(4): # kldload wlan_xauth Aby był wczytywany przy każdym uruchamianiu systemu: # echo 'wlan_xauth_load="yes"' >> /boot/loader.conf Na tym etapie prosty access point jest już skonfigurowany, wszystko powinno działać po ponowym uruchomieniu komputera (po co napisalem o module kernela? - aby pokazać jak wygląda ładowanie bez ponownego uruchamiania systemu): # reboot Na koniec warto zwrócić uwagę na nieobsługiwanie WPA2 przez Windows XP SP2. Należy zainstalować poprawkę KB917021. Linki: Wireless Networking - FreeBSD Handbook Komentarze do notki FreeBSD jako router i domowy serwer część 2 - konfiguracja access pointa 1. DrunkenBear 09 lipca 2008 o 21:34:16 A nie prościej było użyć pfsense? 2. Asmo 09 lipca 2008 o 22:50:16 Moze i prosciej, ale duzo eksperymentuje, ponadto zalezy mi na lepszym poznaniu FreeBSD i w takim wypadku prawdpodobnie lepszym wyborem 3 z 6 2010-03-26 09:47
jest standardowa instalacja. 3. SuperDaemon 10 lipca 2008 o 00:01:46 Bardzo fajny text. Samemu stawiajac w hostap nie ruszalem nigdy DHCP, a to widac prosciutkie :) 4. Soulraver 16 października 2009 o 00:33:01 Twój opis wiele mi pomógł dzięki. Mam zrobiony i zabezpieczony Access Point, poszukałem jeszcze tu i tam i troszkę miałem komplikacji na 3BSD 7.2 ale przed momentem wszystko powstało tak jak powinno. Jutro wyłączam shitboxa od neo. Gdybyś potrzebował troszkę zmodyfikowanego hostapd.conf z przyjemnością podeślę, naniosłem tam lekkie poprawki dla 7.2. Pozdrawiam i dzięki za ten artykuł!! 5. marwooj 23 października 2009 o 10:37:42 Nie wiecie czy Option GT max działa w freebad? Zostaw odpowiedź Nick URI Kod: Dodaj komentarz 4 z 6 2010-03-26 09:47
Archiwum Październik 2009 (4) Wrzesień 2009 (6) Sierpień 2009 (7) Lipiec 2009 (8) Czerwiec 2009 (7) Maj 2009 (5) Kwiecień 2009 (5) Marzec 2009 (2) Luty 2009 (4) Styczeń 2009 (7) Grudzień 2008 (1) Listopad 2008 (4) Październik 2008 (5) Sierpień 2008 (9) Lipiec 2008 (14) Czerwiec 2008 (19) Maj 2008 (12) Kwiecień 2008 (4) Marzec 2008 (4) Luty 2008 (2) Styczeń 2008 (5) Październik 2007 (2) Wrzesień 2007 (3) Sierpień 2007 (2) Lipiec 2007 (5) Czerwiec 2007 (7) Maj 2007 (11) Kwiecień 2007 (3) Marzec 2007 (5) Luty 2007 (3) Styczeń 2007 (1) Grudzień 2006 (1) Kategorie Komputery (103) *BSD (32) FreeBSD (28) NetBSD (2) *nix (18) KDE (2) 5 z 6 2010-03-26 09:47
Meta Gry (9) Hardware (11) Linux (18) Archlinux (6) Debian (5) LUG / konferencje (10) Programowanie (6) C (2) Samba (1) Windows (5) Pierdoły (61) Muzyka (17) Szkoła (14) Techblog (4) Zaloguj się. asmo is powered by Jogger and K2 by Michael and Chris, ported by Patryk Zawadzki. Notki w RSS 6 z 6 2010-03-26 09:47