WiFi мост

Автор Descriptar, 08 июля 2013, 13:16:39

« назад - далее »

0 Пользователи и 2 гостей просматривают эту тему.

Descriptar

Всем привет!
Делаю WiFi мост.
wlan0 - данным интерфейсом подключаюсь к интернету.
wlan1 - тут хочу раздавать интернет.

Делаю следующее:

1. Включаю wlan0 в режим точки дострупа: iwconfig wlan0 mode ad-hoc

2. Настраиваю мост:
auto bridge
iface bridge inet static
address 192.168.0.1
network 192.168.0.0
netmask 255.255.255.0
broadcast 192.168.0.255
bridge_ports wlan0 wlan1

поднимаю: ifconfig bridge up

3. Настраиваю и включаю hostapd:
interface=wlan0
bridge=bridge
driver=nl80211
logger_stdout=-1
logger_stdout_level=2
ssid=Test AP
hw_mode=g
channel=6
auth_algs=3
max_num_sta=255
wpa=0
wpa_passphrase=qwertyuiop
wpa_key_mgmt=WPA-PSK
wpa_pairwise=TKIP CCMP
rsn_pairwise=CCMP

поднимаю: hostapd /etc/hostapd/hostapd.conf

С этого момента точку видно.

4. Запускаю скрипт:
#! /bin/sh
#
#######################
# Настройка интерфейсов
#######################

# Internet (Поменяйте на ваш интернет-интерфейс)
Inet_Interface="wlan1"

# Lan (поменяйте на ваш интерфейс сетевого моста)
Lan_Interface="bridge"

# Lo (локальный интефейс - петля)
Lo_Interface="lo"

# Описываем путь до iptables
IPT="/sbin/iptables"

# Очищаем текущие правила (если вдруг есть какие-то правила)

$IPT -F
$IPT -t nat -F
$IPT -t mangle -F

$IPT -X
$IPT -t nat -X
$IPT -t mangle -X

# Задаем политики по умолчанию

$IPT -P INPUT DROP
$IPT -P FORWARD DROP
$IPT -P OUTPUT DROP

# Создаем цепочку для обработки неправильных пакетов.
# bad_packets

$IPT -N bad_packets

$IPT -A bad_packets -p tcp --tcp-flags SYN,ACK SYN,ACK \
-m state --state NEW -j REJECT --reject-with tcp-reset
$IPT -A bad_packets -p tcp ! --syn -m state --state NEW \
-j LOG --log-prefix "New not syn:"
$IPT -A bad_packets -p tcp ! --syn -m state --state NEW -j DROP

# Создаем цепочку для обработки входящих (из интернета) tcp соединений.
# tcp_p
$IPT -N tcp_p

# Чтобы, например, разрешить подключаться к нашему шлюзу из интернета по ssh:
##ssh="22"
##ssh_ip_allowed="0/0"
##$IPT -A tcp_p -p tcp -s $ssh_ip_allowed --dport $ssh -j ACCEPT

$IPT -A tcp_p -p tcp -s 0/0 -j DROP

# Создаем цепочку для обработки входящих (из интернета) udp соединений.
# udp_p
$IPT -N udp_p

$IPT -A udp_p -p udp -s 0/0 -j DROP

# Создаем цепочку для обработки входящих (из интернета) icmp соединений.
# icmp_p
$IPT -N icmp_p

# Разрешаем "пинговать" наш шлюз из интернета:

$IPT -A icmp_p -p icmp -s 0/0 --icmp-type 8 -j ACCEPT
$IPT -A icmp_p -p icmp -s 0/0 --icmp-type 11 -j ACCEPT

$IPT -A icmp_p -p icmp -s 0/0 -j DROP

# Цепочка INPUT

$IPT -A INPUT -p tcp -j bad_packets

$IPT -A INPUT -p all -i $Lan_Interface -j ACCEPT
$IPT -A INPUT -p all -i $Lo_Interface -j ACCEPT

$IPT -A INPUT -p all -i $Inet_Interface -m state --state \
ESTABLISHED,RELATED -j ACCEPT
$IPT -A INPUT -p tcp -i $Inet_Interface -j tcp_p
$IPT -A INPUT -p udp -i $Inet_Interface -j udp_p
$IPT -A INPUT -p icmp -i $Inet_Interface -j icmp_p

# Цепочка FORWARD

$IPT -A FORWARD -p tcp -j bad_packets

$IPT -A FORWARD -p all -i $Lan_Interface -j ACCEPT
$IPT -A FORWARD -p all -i $Lo_Interface -j ACCEPT
$IPT -A FORWARD -p all -i $Inet_Interface -m state \
--state ESTABLISHED,RELATED -j ACCEPT

# Цепочка OUTPUT

$IPT -A OUTPUT -p tcp -j bad_packets

$IPT -A OUTPUT -p all -o $Inet_Interface -j ACCEPT
$IPT -A OUTPUT -p all -o $Lan_Interface -j ACCEPT
$IPT -A OUTPUT -p all -o $Lo_Interface -j ACCEPT

# Цепочка POSTROUTING (таблица nat)

$IPT -t nat -A POSTROUTING -o $Inet_Interface -j MASQUERADE

# Включаем перенаправление ipv4.

echo "1" > /proc/sys/net/ipv4/ip_forward

echo "Firewall started"

exit 0


5. Настройка dnsmasq: иду /etc/dnsmasq.conf:
# Не обрабатывать адреса не содержашие доменной части.
domain-needed

# Не перенаправлять адреса, ведущие в немаршрутизируемое адресное пространство.
bogus-priv

# Ограничить работу dnsmasq определенным интерфейсом
interface=br0

# Включить DHCP сервер и задать диапазон назначаемых адресов.
dhcp-range=192.168.0.10,192.168.0.255,12h


поднимаю: /etc/init.d/dnsmasq restart

Точку вижу, но подключится к ней не могу(

Подскажите, пожалуйста, как решить вопрос.



xbsd

Цитата: Descriptar от 08 июля 2013, 13:16:39Точку вижу, но подключится к ней не могу(
Подскажите, пожалуйста, как решить вопрос.
изучить логи, прикрепить к сообщению информацию об ошибке