Хочу сразу предупредить не использую никакие network-manager'ы ибо не тру :).
Определяем модель устройства:
Для usb затычек:
# lsusb
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 005 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 006 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 007 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 008 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 009 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 003 Device 002: ID 093a:2510 Pixart Imaging, Inc. Optical Mouse
Bus 003 Device 003: ID 04f3:0103 Elan Microelectronics Corp.
Bus 006 Device 002: ID 7392:7711 Edimax Technology Co., Ltd EW-7711UTn nLite Wireless Adapter [Ralink RT2870]
Для PCI устройств использовать:
# lspci
В моем случае модель это EW-7711UTn на основе чипа Ralink RT2870 и установка сводиться к:
# aptitude install firmware-ralink
Для других устройств нужно пойти на
http://wiki.debian.org/WiFi
найти свое устройство в списке и почитать руководство по установке драйвера.
После чего установить пакет wireless-tools:
# aptitude update
# aptitude install wireless-tools
Затем в /etc/network/interfaces прописываем наш интерфейс:
auto wlan0
iface wlan0 inet static
address 192.168.1.1
netmask 255.255.255.0
Перезапускаем сеть:
# /etc/init.d/networking stop
# /etc/init.d/networking start
или
# service networking restart
После чего проверить поднялся ли интерфейс:
# ifconfig wlan0
wlan0 Link encap:Ethernet HWaddr 80:1f:02:42:2e:d5
inet addr:192.168.1.1 Bcast:192.168.1.255 Mask:255.255.255.0
inet6 addr: fe80::821f:2ff:fe42:2ed5/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:3670828 errors:0 dropped:0 overruns:0 frame:0
TX packets:1959115 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:1163320151 (1.0 GiB) TX bytes:180098936 (171.7 MiB)
Затем установить hostapd:
# aptitude install hostapd
В файл /etc/hostapd/hostapd.conf (если такого файла нет нужно его создать):
interface=wlan0
ssid=MyAP
country_code=RU
hw_mode=g
channel=8
macaddr_acl=0
wpa=3
wpa_key_mgmt=WPA-PSK
wpa_passphrase=123123123
wpa_pairwise=TKIP
rsn_pairwise=CCMP
Где interface - имя интерфейса у нас wlan0.
ssid - имя точки доступа.
country_code - код страны (RU,UA,US и тд.).
wpa_passphrase - пароль точки доступа.
все остальное это настройки шифрования и режимов подключения.
Если будут проблемы с качеством сигнала попробуйте поменять channel
на какой-нибудь другой.
Как раздать интернет.
Есть много способов я использую iptables + isc-dhcp-server.
Можно также посмотреть в сторону dnsmasq.
Устанавливаем
dhcp сервер:
# aptitude install isc-dhcp-server
в самый конец /etc/dhcp/dhcpd.conf дописать:
subnet 192.168.1.0 netmask 255.255.255.0
{
range 192.168.1.3 192.168.1.254;
option domain-name-servers 8.8.8.8;
option routers 192.168.1.1;
}
Где:
subnet 192.168.1.0 netmask 255.255.255.0; - определение подсети в которой компьютеры будут получать
ip в нашем случае для wlan0 с ip 192.168.1.1 подсеть
будет 192.168.1.0 .
range 192.168.1.3 192.168.1.254; - диапазон адресов которые будут выдаваться dhcp сервером.
option domain-name-servers 8.8.8.8; - адрес DNS-сервера который будет выдаваться
подключающемуся компьютеру.
option routers 192.168.1.1; - ip точки доступа (wlan0).
Перезапускаем dhcp-сервер:
# service isc-dhcp-server restart
Последний штрих настройка форвардинга и NAT
Разрешаем форвардинг:
# sed -i 's/net.ipv4.ip_forward = 0/net.ipv4.ip_forward = 1/g' /etc/sysctl.conf
Настраиваем iptables:
# iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
# iptables -A FORWARD -o eth0 -j ACCEPT
# iptables-save > /etc/wifi-iptables.conf
# echo '#!/bin/sh' > /etc/network/if-up.d/iptables
# echo 'iptables-restore < /etc/wifi-iptables.conf' >> /etc/network/if-up.d/iptables
# chmod +x /etc/network/if-up.d/iptables
Где:
eth0 - имя вашего основного сетевого интерфейса. В основном eth0, но может и отличаться.
Вот вроде бы всё.