Доброго дня суток, алл!
Имеется OpenVPN версии 2.0.9
OS: SLES 10.1
Конфиг сервера:port 5000
proto udp
dev tun
tls-server
ca ca.cert
cert server.cert
key server.key # This file should be kept secret
dh dh1024.pem
server 10.19.0.0 255.255.255.0
ifconfig-pool-persist ipp.txt
push "route 10.19.0.0 255.255.255.0"
push "route 192.168.0.0 255.255.255.0"
client-to-client
keepalive 10 120
comp-lzo
user openvpn
group openvpn
persist-key
persist-tun
status openvpn-status.log
verb 3Конфиг клиента:
client
dev tun
proto udp
remote XXX.XXX.XXX.XXX 5000
resolv-retry infinite
user openvpn
group openvpn
persist-key
persist-tun
tls-client
ca ca.cert
cert user.cert
key user.key
comp-lzo
verb 3Соединяюсь все ок, пытаюсь пропинговать сеть 192.168.0.1, не отвечает, пытаюсь сделать traceroute 192.168.0.1, аналогично.
Сервер и клиент VPN пингуются.
Подскажите в чем проблема? Как сделать чтобы внутренняя сеть пинговалась?
Спасибо.
push "route 192.168.0.0 255.255.0.0 10.8.0.102"
где вместо 10.8.0.102 ip интерфейса клиента
>push "route 192.168.0.0 255.255.0.0 10.8.0.102"
>где вместо 10.8.0.102 ip интерфейса клиентаЗадача какя? Роуты прокинуть клиенту или же просто при подключении клиент не пингуется?
Если роуты то читай о ccd. Кому необходимо кидать роуты то должны иметь статику - а это делается при помощи ccd. Если подключается и не пингуется, то для начала смотри фаер или если винда то еще он может конфликтовать с встроеной маршрутизацией, но по с сервака должен пиногваться.
ccd/cert_of_client
ifconfig-push 10.0.0.2 10.0.0.1
iroute 192.168.0.0 255.255.0.0
>[оверквотинг удален]
>Задача какя? Роуты прокинуть клиенту или же просто при подключении клиент не
>пингуется?
>Если роуты то читай о ccd. Кому необходимо кидать роуты то должны
>иметь статику - а это делается при помощи ccd. Если подключается
>и не пингуется, то для начала смотри фаер или если винда
>то еще он может конфликтовать с встроеной маршрутизацией, но по с
>сервака должен пиногваться.
>ccd/cert_of_client
>ifconfig-push 10.0.0.2 10.0.0.1
>iroute 192.168.0.0 255.255.0.0Клиент и сервер пингуются, но хочу сделать что-бы все динамически раздавалось как ip так и роуты.
Т.е. Полностью динамически роуты не раздать? И к каждому сертификату нужно будет создавать свой ccd? Если я все правильно прочел в мане, то можно сделать это с помощью скрипта, не так ли?
>Клиент и сервер пингуются, но хочу сделать что-бы все динамически раздавалось как
>ip так и роуты.
>Т.е. Полностью динамически роуты не раздать? И к каждому сертификату нужно будет
>создавать свой ccd? Если я все правильно прочел в мане, то
>можно сделать это с помощью скрипта, не так ли?С скриптом не работал. Реализовал статикой. Если что получится отпиши.
>>Клиент и сервер пингуются, но хочу сделать что-бы все динамически раздавалось как
>>ip так и роуты.
>>Т.е. Полностью динамически роуты не раздать? И к каждому сертификату нужно будет
>>создавать свой ccd? Если я все правильно прочел в мане, то
>>можно сделать это с помощью скрипта, не так ли?
>
>С скриптом не работал. Реализовал статикой. Если что получится отпиши.Так и не решил вопрос, уже сам только запутался, переписав конфиги снова.
Перечил fag и howto на http://openvpn.net/ что-то ничего ко мне не пришло =(
Попробовал прописать в файрволе на сервере правила
iptables -A FORWARD -i tun0 -j ACCEPT
iptables -A INPUT -i tun0 -j ACCEPT
тоже не помогло, как советовали прописал ccd в конфиге
ifconfig-push 10.19.0.2 10.19.0.1
iroute 192.168.0.0 255.255.255.0
после добавления ccd на клиенте роутинг вообще пропал, пришлось вбивать его руками route add -net 192.168.0.0/24 gw 10.0.0.1
Пингов в сеть 192.168.0.* не проходит.Есть еще какие-нибудь идеи.
Вопрос решен, действительно проблема была в firewall
При добавлении 2х правил стала пинговаться сеть и в том и в другом направлении.
iptables -t nat -A POSTROUTING -s $PRIVATE -o $LOCAL_IFACE -j MASQUERADE
iptables -I FORWARD 2 -i tun+ -j ACCEPT>>С скриптом не работал. Реализовал статикой. Если что получится отпиши.
Если что со скриптом придумаю обязательно отпишусь.
Спасибо всем за помощь.
>iptables -t nat -A POSTROUTING -s $PRIVATE -o $LOCAL_IFACE -j MASQUERADEээ, я немножко не понял, для чего ты используешь маскарад???
>>iptables -t nat -A POSTROUTING -s $PRIVATE -o $LOCAL_IFACE -j MASQUERADE
>
>ээ, я немножко не понял, для чего ты используешь маскарад???Можно и SNAT, собственно, но без правила в firewall, не пингуется локальная сеть и обратно.
>>>iptables -t nat -A POSTROUTING -s $PRIVATE -o $LOCAL_IFACE -j MASQUERADE
>>
>>ээ, я немножко не понял, для чего ты используешь маскарад???
>
>Можно и SNAT, собственно, но без правила в firewall, не пингуется локальная
>сеть и обратно.Вы считаете что подсети 192.168 и 10. не маршрутизируются межу собой? Не проще ли просто пускать пакет через табличку filter?
Другое дело, если такие настройки нужны для безопасности, что бы только одна сеть видела другую, но не наоборот.
>[оверквотинг удален]
>>>
>>>ээ, я немножко не понял, для чего ты используешь маскарад???
>>
>>Можно и SNAT, собственно, но без правила в firewall, не пингуется локальная
>>сеть и обратно.
>
>Вы считаете что подсети 192.168 и 10. не маршрутизируются межу собой? Не
>проще ли просто пускать пакет через табличку filter?
>Другое дело, если такие настройки нужны для безопасности, что бы только одна
>сеть видела другую, но не наоборот.Немного не понял что вы имеете ввиду под табличкой filter, не могли бы разъяснить?
>Немного не понял что вы имеете ввиду под табличкой filter, не могли
>бы разъяснить?таблица filter она же таблиц предназначенная для фильтрации пакетов, используется по умолчанию при отдаче комманд
полный список таблиц описан в man>iptables -I FORWARD 2 -i tun+ -j ACCEPT
вот это правило вы записали в таблицу filter и цепочку FORWARD
>iptables -t nat -A POSTROUTING -s $PRIVATE -o $LOCAL_IFACE -j MASQUERADE
Вот это правило вы записали в таблицу nat предназначенную для модификаци пакетов а не для фильтрации
Вся фильтрация согласно man должна производиться в таблице filterКроме того,разьясните, для чего вам нужен маскарад внутри защищённой сети?
не проще ли было записать 2 правила, разрешающих хождение пакетов туда-обратно в таблицу filter?
>Вот это правило вы записали в таблицу nat предназначенную для модификаци пакетов
>а не для фильтрации
>Вся фильтрация согласно man должна производиться в таблице filterДа вы правы. Но с фильтрацией в таблице filter у меня не пингуется внутренняя сеть =(
Не могли бы вы приложить свои правила фильтрации, не исключаю тот факт что в где-то накосячил.
>>Вот это правило вы записали в таблицу nat предназначенную для модификаци пакетов
>>а не для фильтрации
>>Вся фильтрация согласно man должна производиться в таблице filter
>
>Да вы правы. Но с фильтрацией в таблице filter у меня не
>пингуется внутренняя сеть =(
>Не могли бы вы приложить свои правила фильтрации, не исключаю тот факт
>что в где-то накосячил.Честно говоря, у меня как таковых постоянных правил нет. Их каждый раз при подключении клиента выстраивает скрипт, вызываемый по директиве learn-address.
Я создаю цепочку Цепочка_клиента
Все входящие пакеты от клиента на интерфейс tun0 в цепочке INPUT
iptables -I INPUT -i tun0 -s ip_клиента -j Цепочка_клиента
Все исходящие пакеты к клиенту на интерфейс tun0 в цепочке OUTPUT
iptables -I OUTPUT -o tun0 -d ip_клиента -j Цепочка_клиента
Все исходящие пакеты от/к клиенту с любого интефейса на интерфейс tun0 в цепочке FORWARD
iptables -I FORWARD -o tun0 -d ip_клиента -j Цепочка_клиента
iptables -I FORWARD -i tun0 -s ip_клиента -j Цепочка_клиента
я перенаправляю в цепочку Цепочка_клиента в которой скрипт при старте прописывает отдельные правила для каждого клиента
а тут уже проще
iptables -I Цепочка_клиента -o tun0 -d ip_клиента -j ACCEPT
iptables -I Цепочка_клиента -i tun0 -s ip_клиента -j ACCEPT
Естественно можно делать отдельные правила для каждого клиента/хоста внутренней сети.
Плюс учёт траффика по каждой цепочке :)
>[оверквотинг удален]
>cert user.cert
>key user.key
>comp-lzo
>verb 3
>
>Соединяюсь все ок, пытаюсь пропинговать сеть 192.168.0.1, не отвечает, пытаюсь сделать traceroute
>192.168.0.1, аналогично.
>Сервер и клиент VPN пингуются.
>Подскажите в чем проблема? Как сделать чтобы внутренняя сеть пинговалась?
>Спасибо.А с сервера сеть 192.168.0.0 пингуется? Проверь маршрутизацию на сервере... я сталкивался с подобной проблемой!
>[оверквотинг удален]
>>verb 3
>>
>>Соединяюсь все ок, пытаюсь пропинговать сеть 192.168.0.1, не отвечает, пытаюсь сделать traceroute
>>192.168.0.1, аналогично.
>>Сервер и клиент VPN пингуются.
>>Подскажите в чем проблема? Как сделать чтобы внутренняя сеть пинговалась?
>>Спасибо.
>
>А с сервера сеть 192.168.0.0 пингуется? Проверь маршрутизацию на сервере... я сталкивался
>с подобной проблемой!естественно пингуется
>[оверквотинг удален]
>>>Соединяюсь все ок, пытаюсь пропинговать сеть 192.168.0.1, не отвечает, пытаюсь сделать traceroute
>>>192.168.0.1, аналогично.
>>>Сервер и клиент VPN пингуются.
>>>Подскажите в чем проблема? Как сделать чтобы внутренняя сеть пинговалась?
>>>Спасибо.
>>
>>А с сервера сеть 192.168.0.0 пингуется? Проверь маршрутизацию на сервере... я сталкивался
>>с подобной проблемой!
>
>естественно пингуетсяна клиенте: route add -host 192.168.0.1 gw local-ip-сервера
>[оверквотинг удален]
>>>>Сервер и клиент VPN пингуются.
>>>>Подскажите в чем проблема? Как сделать чтобы внутренняя сеть пинговалась?
>>>>Спасибо.
>>>
>>>А с сервера сеть 192.168.0.0 пингуется? Проверь маршрутизацию на сервере... я сталкивался
>>>с подобной проблемой!
>>
>>естественно пингуется
>
>на клиенте: route add -host 192.168.0.1 gw local-ip-сервераПросто в конфиге клиента
route 192.168.0.0 255.255.0.0