URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID1
Нить номер: 93484
[ Назад ]

Исходное сообщение
"Openvpn не идут пинги в локалку с клиента"

Отправлено dr754 , 18-Июн-12 09:59 
есть комп с белым ip , на нем поднят openvpn (server.conf) также есть eth0 - подключена локальная сеть сеть - 192.168.4.52, tun0-10.8.0.1

конфиг на сервере

port 1194
proto tcp
dev tun
ca /etc/openvpn/easy-rsa/keys/ca.crt
cert /etc/openvpn/easy-rsa/keys/server.crt
key /etc/openvpn/easy-rsa/keys/server.key
dh /etc/openvpn/easy-rsa/keys/dh1024.pem
server 10.8.0.0 255.255.255.0
ifconfig-pool-persist ipp.txt
push "route 192.168.4.0 255.255.255.0"
client-to-client
keepalive 10 120
comp-lzo
persist-key
persist-tun
status openvpn-status.log
verb 3


настройки фаервола
#!/bin/bash
#этот модуль позволяет работать с ftp в пассивном режиме
modprobe nf_conntrack_ftp
#очистка цепочек
iptables -F INPUT
iptables -F FORWARD
iptables -F OUTPUT
iptables -t nat -F PREROUTING
iptables -t nat -F POSTROUTING
iptables -t mangle -F
#Запрет всего
iptables -P INPUT DROP
iptables -P OUTPUT ACCEPT
iptables -P FORWARD DROP

#включение логов iptables
#iptables -I OUTPUT -o eth0 -j LOG
#префиксы сообщений iptables
#iptables -A INPUT -p tcp  -j LOG --log-prefix "input tcp"
#iptables -A INPUT -p icmp -j LOG --log-prefix "input icmp"
#логи входящих tcp udp icmp
#iptables -A INPUT -j LOG --log-level 4


#разрешаем все входящие пакеты на интрефейс замыкания на себя иначе ничего не работает
iptables -A INPUT -i lo -j ACCEPT
#РАЗРЕШЕНЫ ТОЛЬКО ВХОДЯЩИЕ СОЗДАННЫЕ НАШИМИ ИСХОДЯЩИМИ
iptables -A INPUT -p TCP -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A INPUT -p UDP -m state --state ESTABLISHED,RELATED -j ACCEPT
#Правила повышающие безопасность
#Блочим входящие tcp соединения не syn пакетом (либо ошибка либо атака)
iptables -I INPUT -m conntrack --ctstate NEW -p tcp ! --syn -j DROP
iptables -I INPUT -m conntrack --ctstate NEW,INVALID -p tcp --tcp-flags SYN,ACK SYN,ACK -j REJECT
#разрешаем любые входящие и исходящие по icmp
iptables -A INPUT -p icmp -j ACCEPT
iptables -A OUTPUT -p icmp -j ACCEPT
#Разрешаем доступ по tcp  порт 1194 - vpn совсех интерфейсов
iptables -A INPUT  -p tcp  --dport 1194 -j ACCEPT
#Разрешаем маскарадинг
iptables -t nat -A POSTROUTING -o ppp0 -j SNAT --to-source 85.26.185.8
#разрешаем  транзитные  пакеты с vpn сервака в нет
iptables -A FORWARD -i ppp0 -o tun0 -p tcp --dport 1194 -j ACCEPT


Файл натроек клиента client.ovpn
client
dev tun
proto tcp
remote белыйip 1194
resolv-retry infinite
nobind
persist-key
persist-tun
ca ca.crt
cert client1.crt
key client1.key
ns-cert-type server
comp-lzo
verb 3

Форвардинг включил
net.ipv4.ip_forward = 1
затем
sysctl -p

насерваке
root@debtest:/etc/network/if-pre-up.d# route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
10.64.64.64     0.0.0.0         255.255.255.255 UH    0      0        0 ppp0
10.8.0.2        0.0.0.0         255.255.255.255 UH    0      0        0 tun0
192.168.4.0     0.0.0.0         255.255.255.0   U     0      0        0 eth0
192.168.3.0     0.0.0.0         255.255.255.0   U     0      0        0 eth0
10.8.0.0        10.8.0.2        255.255.255.0   UG    0      0        0 tun0
0.0.0.0         0.0.0.0         0.0.0.0         U     0      0        0 ppp0

Подключение с клиента к серверу проходит, ping на 192.168.4.52 и 10.8.0.1 идут , но дальше в локалку нет,где накосячил не пойму ?


Содержание

Сообщения в этом обсуждении
"Openvpn не идут пинги в локалку с клиента"
Отправлено Andrey Mitrofanov , 18-Июн-12 10:11 
> Подключение с клиента к серверу проходит, ping на 192.168.4.52 и  1 идут
> , но дальше в локалку нет,где накосячил не пойму ?

В FORWARD не открыл "нужные" пинги. См. -I FORWARD -p icmp -s 10.8.0.0/24 -j LOG --log-prefix "PING:открыть"


"Openvpn не идут пинги в локалку с клиента"
Отправлено dr754 , 18-Июн-12 10:29 
>> Подключение с клиента к серверу проходит, ping на 192.168.4.52 и  1 идут
>> , но дальше в локалку нет,где накосячил не пойму ?
> В FORWARD не открыл "нужные" пинги. См. -I FORWARD -p icmp -s
> 10.8.0.0/24 -j LOG --log-prefix "PING:открыть"

#разрешаем все входящие пакеты на интрефейс замыкания на себя иначе ничего не работает
iptables -A INPUT -i lo -j ACCEPT
#РАЗРЕШЕНЫ ТОЛЬКО ВХОДЯЩИЕ СОЗДАННЫЕ НАШИМИ ИСХОДЯЩИМИ
iptables -A INPUT -p TCP -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A INPUT -p UDP -m state --state ESTABLISHED,RELATED -j ACCEPT
#Правила повышающие безопасность
#Блочим входящие tcp соединения не syn пакетом (либо ошибка либо атака)
iptables -I INPUT -m conntrack --ctstate NEW -p tcp ! --syn -j DROP
iptables -I INPUT -m conntrack --ctstate NEW,INVALID -p tcp --tcp-flags SYN,ACK SYN,ACK -j REJECT
#разрешаем любые входящие и исходящие по icmp
iptables -A INPUT -p icmp -j ACCEPT
iptables -A OUTPUT -p icmp -j ACCEPT

iptables -I FORWARD -p icmp -s 10.8.0.0/24 -j LOG --log-prefix "PING:открыть"


#разрешаем доступ из сети на порты 21(ftp),22(ssh),53(dns),9999(внутрисетевой репозитраий),110 и 143 - pop3 smtp, 995 и 993 - pops smtps
iptables -A INPUT -i eth0 -p tcp -m multiport --dport 25,80,22,110,143,995,993,9102,9101,9103 -j ACCEPT
#Разрешаем доступ по tcp  порт 1194 - vpn отовсюду
iptables -A INPUT  -p tcp  --dport 1194 -j ACCEPT
#Разрешаем маскарадинг
iptables -t nat -A POSTROUTING -o ppp0 -j SNAT --to-source 85.26.185.8
#разрешаем  транзитные  пакеты с vpn сервака в нет
iptables -A FORWARD -i ppp0 -o tun0 -p tcp --dport 1194 -j ACCEPT
#безопасность
iptables -A FORWARD -m state --state RELATED,ESTABLISHED -j ACCEPT

Добавил но не помогло


"Openvpn не идут пинги в локалку с клиента"
Отправлено dr754 , 18-Июн-12 10:58 
>[оверквотинг удален]
> #Разрешаем доступ по tcp  порт 1194 - vpn отовсюду
> iptables -A INPUT  -p tcp  --dport 1194 -j ACCEPT
> #Разрешаем маскарадинг
> iptables -t nat -A POSTROUTING -o ppp0 -j SNAT --to-source 85.26.185.8
> #разрешаем  транзитные  пакеты с vpn сервака в нет
> iptables -A FORWARD -i ppp0 -o tun0 -p tcp --dport 1194 -j
> ACCEPT
> #безопасность
> iptables -A FORWARD -m state --state RELATED,ESTABLISHED -j ACCEPT
> Добавил но не помогло

c клиента делаю
tracer 192.168.4.30 (комп в сети за Openvpn серваком) получаю

Трассировка маршрута к 192.168.4.30 с максимальным числом прыжков 30

  1   424 ms   358 ms   358 ms  10.8.0.1
  2     *        *        *     Превышен интервал ожидания для запроса.
  3     *        *        *     Превышен интервал ожидания для запроса.

Тоесть на сервак всеприходит а вот уже в локалку заним нет , это работает и при отключённом iptables -I FORWARD -p icmp -s 10.8.0.0/24 -j LOG --log-prefix "PING:открыть"


"Openvpn не идут пинги в локалку с клиента"
Отправлено Andrey Mitrofanov , 18-Июн-12 12:02 
>>> Подключение с клиента к серверу проходит, ping на 192.168.4.52 и  1 идут
>>> , но дальше в локалку нет,где накосячил не пойму ?
>>См. -I FORWARD -p icmp -s 10.8.0.0/24 -j LOG --log-prefix "PING:открыть"
> iptables -I FORWARD -p icmp -s 10.8.0.0/24 -j LOG --log-prefix "PING:открыть"
> Добавил но не помогло

"См."=смотри.

Т.е. теперь пингуешь "с клиента во внутр.сеть" и _смотришь в логе записи с "PING:открыть". В частности названия интерфейсов откуда-куда, ip-адреса и пр. По _этим данным пишешь нужные тебе _разрешающие правила. Проверяешь - работает - выбрасываешь отладочные "-j LOG". //Rinse repeat.


"Openvpn не идут пинги в локалку с клиента"
Отправлено dr754 , 18-Июн-12 12:44 
>>>> Подключение с клиента к серверу проходит, ping на 192.168.4.52 и  1 идут
>>>> , но дальше в локалку нет,где накосячил не пойму ?
>>>См. -I FORWARD -p icmp -s 10.8.0.0/24 -j LOG --log-prefix "PING:открыть"
>> iptables -I FORWARD -p icmp -s 10.8.0.0/24 -j LOG --log-prefix "PING:открыть"
>> Добавил но не помогло
> "См."=смотри.
> Т.е. теперь пингуешь "с клиента во внутр.сеть" и _смотришь в логе записи
> с "PING:открыть". В частности названия интерфейсов откуда-куда, ip-адреса и пр. По
> _этим данным пишешь нужные тебе _разрешающие правила. Проверяешь - работает -
> выбрасываешь отладочные "-j LOG". //Rinse repeat.

PING:открытьIN=tun0 OUT=eth0 SRC=10.8.0.6 DST=192.168.4.30 LEN=60 TOS=0x00 PREC=0x00 TTL=127 ID=1263 PROTO=ICMP TYPE=8 CODE=0 ID=1 SEQ=1105
Спасибооооооооооооооооооооооо

понял проблема была в форвардинге добавил правила
iptables -A FORWARD -i tun0 -o eth0 -j ACCEPT
iptables -A FORWARD -i eth0 -o tun0 -j ACCEPT
и всё заработало


"Openvpn не идут пинги в локалку с клиента"
Отправлено PavelR , 18-Июн-12 12:04 
> Подключение с клиента к серверу проходит, ping на 192.168.4.52 и 10.8.0.1 идут
> , но дальше в локалку нет,где накосячил не пойму ?

1) плохо читал книжку по основам маршрутизации в IP-сетях.
2) не пользуешься tcpdump для отладки.

обрати внимание на эти пункты, и прозреешь.



"Openvpn не идут пинги в локалку с клиента"
Отправлено dr754 , 18-Июн-12 12:47 
>> Подключение с клиента к серверу проходит, ping на 192.168.4.52 и 10.8.0.1 идут
>> , но дальше в локалку нет,где накосячил не пойму ?
> 1) плохо читал книжку по основам маршрутизации в IP-сетях.
> 2) не пользуешься tcpdump для отладки.
> обрати внимание на эти пункты, и прозреешь.

большое спасибо за совет но в от личии от поста Andrey Mitrofanov  , ваш не помог ровным счётом ничем


"Openvpn не идут пинги в локалку с клиента"
Отправлено Andrey Mitrofanov , 18-Июн-12 13:38 
>> обрати внимание на эти пункты, и прозреешь.
> большое спасибо за совет но в от личии от поста Andrey Mitrofanov
>  , ваш не помог ровным счётом ничем

Зато мой пост не привёл к просветлению, а PR хотя бы %)попытался.


"Openvpn не идут пинги в локалку с клиента"
Отправлено PavelR , 18-Июн-12 16:17 
>>> Подключение с клиента к серверу проходит, ping на 192.168.4.52 и 10.8.0.1 идут
>>> , но дальше в локалку нет,где накосячил не пойму ?
>> 1) плохо читал книжку по основам маршрутизации в IP-сетях.
>> 2) не пользуешься tcpdump для отладки.
>> обрати внимание на эти пункты, и прозреешь.
> большое спасибо за совет но в от личии от поста Andrey Mitrofanov
>  , ваш не помог ровным счётом ничем

я не виноват, что вы не можете даже два пункта внимательно прочитать.


"Openvpn не идут пинги в локалку с клиента"
Отправлено witos , 18-Июн-12 12:17 

> Форвардинг включил
> net.ipv4.ip_forward = 1
> затем
> sysctl -p

Извиняюсь за глупый вопрос, но вышенаписанное точно проделано на сервере?


"Openvpn не идут пинги в локалку с клиента"
Отправлено dr754 , 18-Июн-12 12:41 
>> Форвардинг включил
>> net.ipv4.ip_forward = 1
>> затем
>> sysctl -p
> Извиняюсь за глупый вопрос, но вышенаписанное точно проделано на сервере?

немного не так описал сделал так
Для этого пишем в /etc/sysctl следующее:
net.ipv4.ip_forward = 1
затем
sysctl -p


"Openvpn не идут пинги в локалку с клиента"
Отправлено witos , 18-Июн-12 12:57 
>>> Форвардинг включил
>>> net.ipv4.ip_forward = 1
>>> затем
>>> sysctl -p
>> Извиняюсь за глупый вопрос, но вышенаписанное точно проделано на сервере?
> немного не так описал сделал так
> Для этого пишем в /etc/sysctl следующее:
> net.ipv4.ip_forward = 1
> затем
> sysctl -p

Нет, суть вопроса в том, - верно ли, что это выполнялось на сервере, а не на клиенте по невнимательности?


"Openvpn не идут пинги в локалку с клиента"
Отправлено dr754 , 18-Июн-12 13:31 
>[оверквотинг удален]
>>>> затем
>>>> sysctl -p
>>> Извиняюсь за глупый вопрос, но вышенаписанное точно проделано на сервере?
>> немного не так описал сделал так
>> Для этого пишем в /etc/sysctl следующее:
>> net.ipv4.ip_forward = 1
>> затем
>> sysctl -p
> Нет, суть вопроса в том, - верно ли, что это выполнялось на
> сервере, а не на клиенте по невнимательности?

на сервере


"Openvpn не идут пинги в локалку с клиента"
Отправлено PavelR , 18-Июн-12 15:47 
>[оверквотинг удален]
>>>>> sysctl -p
>>>> Извиняюсь за глупый вопрос, но вышенаписанное точно проделано на сервере?
>>> немного не так описал сделал так
>>> Для этого пишем в /etc/sysctl следующее:
>>> net.ipv4.ip_forward = 1
>>> затем
>>> sysctl -p
>> Нет, суть вопроса в том, - верно ли, что это выполнялось на
>> сервере, а не на клиенте по невнимательности?
> на сервере

всё что ты делаешь, думаю, тебе не поможет, пока ты с другой стороны не посмотришь на эти все вещи.