суббота, 21 ноября 2009 г.

FreeBSD: Wi-Fi точка доступа + интернет

ТОЛЬКО ДЛЯ 6-7 FreeBSD

Ситуация такая, имеется огромный файл сервер на FreeBSD и нетбук, надо нетбуку дать интернет ну и конечно вход к общему файл хранилище. В сервере стоит Wi-Fi карта на чипе Atheros - к счастью 7 FreeBSD (в отличии от 6) уже научилась видеть его!

0. Сервер уже подключен к интернету и он работает
кабельный адаптер re0 192.168.1.100
беспроводный адаптер ath0 10.10.30.1

в /etc/rc.conf должно быть
gateway_enable="YES"

1. Пересобираем ядро с нужными опциями
Как пересобирать подробно описано тут http://freebsd100.blogspot.com/2009/05/freebsd_27.html

Добавляем нужны для Wi-fi, dhcp, pf если их уже там нет (при установки freeBSD с установленной картой wi Fi все нужное уже есть в ядре)

device bpf
device pf
device pflog
device wlan
device wlan_acl
device wlan_ccmp
device wlan_wep
device ath
device ath_hal
device ath_rate_sample
device wlan_tkip
device wlan_xauth

2. Настраиваем точку доступа с авторизацией и шифрованием
В /etc/rc.conf добавляем

ifconfig_ath0="inet 10.10.30.1 netmask 255.255.255.0 mediaopt hostap"
hostapd_enable="YES"

Создаем файл /etc/hostapd.conf

interface=ath0 <--беспроводной адаптер
driver=bsd
logger_syslog=-1
logger_syslog_level=2
logger_stdout=-1
logger_stdout_level=2
debug=4
dump_file=/tmp/hostapd.dump
ctrl_interface=/var/run/hostapd
ctrl_interface_group=wheel
ssid=freebsdap <--имя беспроводной сети
wpa=3
wpa_pairwise=CCMP
wpa_passphrase=12345678 <-- пароль доступа не менее 8 знаков для wpa2
wpa_key_mgmt=WPA-PSK
wpa_pairwise=TKIP

3. Настраиваем DHCP раздачу IP адресов и всего автоматом

Заходим в коллекцию портом
cd /usr/ports/net
то что нам нужно будет называться isc-dhcp3-server или isc-dhcp30-server
cd /isc-dhcp30-server
make install

В /etc/rc.conf добавляем

dhcpd_enable="YES"
dhcpd_flags="-q"
dhcpd_ifaces="ath0"
dhcpd_conf="/usr/local/etc/dhcpd.conf"

Создаем файл /usr/local/etc/dhcpd.conf в нем пишем

option domain-name "sys";
# Реальный DNS адресс провайдера
option domain-name-servers 212.188.4.10; #DNS
option subnet-mask 255.255.255.0;
ddns-update-style none;


subnet 10.10.30.0 netmask 255.255.255.0
{
range 10.10.30.100 10.10.30.150;
option routers 10.10.30.1;
option domain-name-servers 212.188.4.10;
}

с такими настройками у нас будут раздавать адрес с 10.10.30.100 до 10.10.30.150

проверяем
/usr/local/etc/rc.d/isc-dhcpd start
если не ругается то всё нормально

4. Теперь надо настроить pf перенаправление портов
в /etc/rc.conf добавляем
pf_enable="YES"
pf_rules="/etc/pf.conf"

файл /etc/pf.conf приводим к виду
nat on re0 from 10.10.30.0/24 to any -> 192.168.1.100
pass quick all

5. Пару слов о Samba
чтобы самба работала с новой подсетью надо чтобы в /usr/local/etc/smb.conf
был открыть доступ из этой сети и самба работала на беспроводном адаптаре тоже

hosts allow = 192.168.1. 10.10.30.
interfaces = 192.168.1.100/24 10.10.30.1/24

Подробнее о Samba тут
http://freebsd100.blogspot.com/2009/11/freebsd.html

6. Всё перезагружаемся и надеемся что всё заработает
Внимательней с пунктуацией это 90% причин не работы того что налаживается


УЧТИТЕ: Wi-Fi остается очень медленным соединением так самый продвинутый из доступных сейчас стандартов 11g выдает 54 мегабит/c реальная скорость при тестах 2.5-3.2 мегабайта в секунду.

Комментариев нет: