Форум русскоязычного сообщества Ubuntu


Увидели сообщение с непонятной ссылкой, спам, непристойность или оскорбление?
Воспользуйтесь ссылкой «Сообщить модератору» рядом с сообщением!

Автор Тема: OpenVPN - не видно сеть за сервером, нужна помощь профи...  (Прочитано 8352 раз)

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

Оффлайн rromms

  • Автор темы
  • Новичок
  • *
  • Сообщений: 8
    • Просмотр профиля
Уважаемые господа!

На Virtualbox установил:
1. Windows XP sp3 (192.168.0.189) шлюзом у которой=>
2. Ubuntu 10.10 (LAN-192.168.0.190; WAN-192.168.1.190), на ней сервер OpenVPN (10.10.100.0/24).
3. pfSense 1.2.3 (LAN-192.168.2.70; WAN-192.168.1.200), которая шлюз у =>
4. XP sp3 (192.168.2.50), на ней клиента OpenVPN.

Мысль такая:
Связать клиента OpenVPN на Windows XP (Ip 192.168.2.50), у которой шлюз - pfSense (LAN 192.168.2.70, WAN 192.168.1.200),
с сервером OpenVPN на Ubuntu 10.10 (192.168.1.190) и получить доступ в сеть 192.168.0.0/24, представленную Windows XP sp3 (192.168.0.189) .
pfSense особо не настраивал, NAT там по умолчанию, разрешил только пинги.
Вроде бы все получилось, клиент устанавливает соединение с сервером (значок горит зеленым и логи говорят о том же), адреса присваиваются, маршруты прописываются.
Но, =>
1. Сервер не пингует клиента по адресу его сети, по "виртуальному" адресу пингует.
2. Клиент пингует сервер по всем адресам, но не может достучаться в сеть за сервером.

В общем прошу совета у гуру...

Схема этого "чуда" - во вложенном файле...

Сервер.
Конфиг:
(Нажмите, чтобы показать/скрыть)
Файл с настройками клиента в ccd:
(Нажмите, чтобы показать/скрыть)
Конфигурация интерфейсов:
(Нажмите, чтобы показать/скрыть)
Маршруты:
(Нажмите, чтобы показать/скрыть)
Пинги с сервера:
(Нажмите, чтобы показать/скрыть)
Оpenvpn-status.log
(Нажмите, чтобы показать/скрыть)
Openvpn.log
(Нажмите, чтобы показать/скрыть)


Конфигурация клиента на Windows XP sp3.
Конфиг OpenVPN клиента:
(Нажмите, чтобы показать/скрыть)
Интерфейсы на клиенте:
(Нажмите, чтобы показать/скрыть)
Маршруты на клиенте:
(Нажмите, чтобы показать/скрыть)
Пинги с клиента:
(Нажмите, чтобы показать/скрыть)

И, наконец, настройки iptables на сервере:
(Нажмите, чтобы показать/скрыть)

Заранее благодарен всем откликнувшемся!

Оффлайн podkovyrsty

  • Старожил
  • *
  • Сообщений: 1547
  • Content-Type: alternative
    • Просмотр профиля
А форвардинг включен?
Шаг за шагом можно достичь цели.

Оффлайн rromms

  • Автор темы
  • Новичок
  • *
  • Сообщений: 8
    • Просмотр профиля
Включен:

-A INPUT -s 10.10.100.0/24 -i tun0 -j open_vpn #---------------------------------------<== Jump на цепочку OpenVPN
=======================================================================
-A FORWARD -d 10.10.100.0/24 -o tun0 -j open_vpn #--------------------------------<== Jump на цепочку OpenVPN
-A FORWARD -s 10.10.100.0/24 -i tun0 -j open_vpn #----------------------------------<== Jump на цепочку OpenVPN
=======================================================================
-A OUTPUT -d 10.10.100.0/24 -o tun0 -j open_vpn #-----------------------------------<== Jump на цепочку OpenVPN
=======================================================================
-A open_vpn -d 10.10.100.0/24 -o tun0 -j ACCEPT # -----------------------------------<== Цепочка OpenVPN
-A open_vpn -s 10.10.100.0/24 -i tun0 -j ACCEPT # -------------------------------------<== Цепочка OpenVPN

Оффлайн fisher74

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 13756
    • Просмотр профиля
это правила iptables, а сам-то форвардинг включен?
cat /proc/sys/net/ipv4/ip_forward

Оффлайн rromms

  • Автор темы
  • Новичок
  • *
  • Сообщений: 8
    • Просмотр профиля
Форвардинг включен.
Добавил скрипт в автозагрузку, при старте он, в т.ч., включает форвардинг и загружает правила iptables.


Оффлайн fisher74

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 13756
    • Просмотр профиля
Пошли по порядку:
Цитировать
1. Сервер не пингует клиента по адресу его сети, по "виртуальному" адресу пингует.
правила для пакетов с destination-адресом 192.168.2.0/24 для -o tun0 не вижу, как собственно и обратного разрешающего правила тоже не вижу.

Цитировать
2. Клиент пингует сервер по всем адресам, но не может достучаться в сеть за сервером.
правила для пакетов с destination-адресом 192.168.0.0/24 для -i tun0 не вижу, как собственно и обратного разрешающего правила тоже не вижу.


Оффлайн rromms

  • Автор темы
  • Новичок
  • *
  • Сообщений: 8
    • Просмотр профиля
Спасибо за совет! Правила добавил. Сервер начал пинговать клиента по его IP (192.168.2.50)

Однако клиент по прежнему не видит сеть за сервером:

C:\Documents and Settings\rromms>ping 192.168.0.189

Обмен пакетами с 192.168.0.189 по 32 байт:

Ответ от 10.10.100.1: Заданный узел недоступен.

Точно также не видно клиента из сети за сервером, пинги уходят в никуда (превышен интервал ожидания для запроса).

Такое впечатление, что между tun0 и eth1 какой-то затык и пакеты между ними не ходят.
« Последнее редактирование: 08 Апреля 2011, 19:43:29 от rromms »

Оффлайн fisher74

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 13756
    • Просмотр профиля
Показывайте действующие правила.

Оффлайн rromms

  • Автор темы
  • Новичок
  • *
  • Сообщений: 8
    • Просмотр профиля
Действущие правила:
(Нажмите, чтобы показать/скрыть)

Форвардинг:
root@ubuntu:/home/rromms# cat /proc/sys/net/ipv4/ip_forward
1
« Последнее редактирование: 08 Апреля 2011, 22:50:04 от rromms »

Оффлайн fisher74

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 13756
    • Просмотр профиля
На машине Windows XP sp3 (192.168.0.189) покажите "route print"

Оффлайн rromms

  • Автор темы
  • Новичок
  • *
  • Сообщений: 8
    • Просмотр профиля
route print c Windows XP sp3 (192.168.0.189)
C:\Documents and Settings\rromms>route print
===========================================================================
Список интерфейсов
0x1 ........................... MS TCP
0x10003 ...08 00 27 97 85 ea ...... AMD PCNET
===========================================================================
===========================================================================
Активные маршруты:
Сетевой адрес           Маска сети      Адрес шлюза       Интерфейс  Метрика
          0.0.0.0          0.0.0.0    192.168.0.190   192.168.0.189       20
        127.0.0.0        255.0.0.0        127.0.0.1       127.0.0.1       1
      192.168.0.0    255.255.255.0    192.168.0.189   192.168.0.189       20
    192.168.0.189  255.255.255.255        127.0.0.1       127.0.0.1       20
    192.168.0.255  255.255.255.255    192.168.0.189   192.168.0.189       20
        224.0.0.0        240.0.0.0    192.168.0.189   192.168.0.189       20
  255.255.255.255  255.255.255.255    192.168.0.189   192.168.0.189       1
Основной шлюз:       192.168.0.190
===========================================================================
Постоянные маршруты:
  Отсутствует

Оффлайн fisher74

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 13756
    • Просмотр профиля
Цитировать
-A open_vpn -d 192.168.0.0/24 -o tun0 -j ACCEPT
-A open_vpn -s 192.168.0.0/24 -i tun0 -j ACCEPT
Вы тут исходящий с входящим интерфейсом перепутали. Сетка 192.168.0.0/24 находится со стороны сервера относительно туннеля.
Потому правильно так
Цитировать
-A open_vpn -d 192.168.0.0/24 -i tun0 -j ACCEPT
-A open_vpn -s 192.168.0.0/24 -o tun0 -j ACCEPT

Оффлайн rromms

  • Автор темы
  • Новичок
  • *
  • Сообщений: 8
    • Просмотр профиля
Поменял по Вашей подсказке. Сам действительно запутался...
Ситуация улучшилась - сеть за севером теперь видит клиента, без проблем зашел на админ.шару - \\192.168.2.50\c$\.
Но клиент до сети за сервером так и не достучался.

tcpdump при пинге клиентом OpenVPN сети за сервером говорит:
root@ubuntu:/home/rromms# tcpdump -r /home/rromms/tcp3
reading from file /home/rromms/tcp3, link-type EN10MB (Ethernet)
00:04:55.076342 IP 192.168.2.50.rtcm-sc104 > ubuntu.WORKGROUP.rtcm-sc104: UDP, length 101
00:04:55.076470 IP 192.168.1.200.14044 > ubuntu.WORKGROUP.rtcm-sc104: UDP, length 101
00:04:55.077030 IP 10.10.100.2 > 192.168.0.189: ICMP echo request, id 512, seq 20480, length 40
00:04:59.508232 IP ubuntu.WORKGROUP.rtcm-sc104 > 192.168.1.200.14044: UDP, length 53
00:04:59.508969 IP ubuntu.WORKGROUP.rtcm-sc104 > 192.168.2.50.rtcm-sc104: UDP, length 53
00:05:00.083398 IP 192.168.2.50.rtcm-sc104 > ubuntu.WORKGROUP.rtcm-sc104: UDP, length 101
00:05:00.083755 IP 192.168.1.200.14044 > ubuntu.WORKGROUP.rtcm-sc104: UDP, length 101
00:05:00.084194 IP 10.10.100.2 > 192.168.0.189: ICMP echo request, id 512, seq 20736, length 40
т.е. на 10.10.100.2 где-то пинги теряются...

При пинге клиента из сети сервера все в порядке:
23:55:28.404486 IP 192.168.0.189 > 192.168.2.50: ICMP echo request, id 1, seq 30, length 40
23:55:28.404689 IP ubuntu.WORKGROUP.rtcm-sc104 > 192.168.1.200.14044: UDP, length 101
23:55:28.405211 IP ubuntu.WORKGROUP.rtcm-sc104 > 192.168.2.50.rtcm-sc104: UDP, length 101
23:55:28.406085 IP 192.168.2.50.rtcm-sc104 > ubuntu.WORKGROUP.rtcm-sc104: UDP, length 101
23:55:28.407058 IP 192.168.1.200.14044 > ubuntu.WORKGROUP.rtcm-sc104: UDP, length 101
23:55:28.407570 IP 192.168.2.50 > 192.168.0.189: ICMP echo reply, id 1, seq 30, length 40

Мозги немного кипят уже...
« Последнее редактирование: 09 Апреля 2011, 01:15:53 от rromms »

Оффлайн fisher74

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 13756
    • Просмотр профиля
на 0.189 брандмауер разрешает icmp протокол не из локальной сети?
Препятствий больше не вижу. :(
192.168.0.190 со стороны 192.168.2,50 предполагаю, что пингуется.

Оффлайн rromms

  • Автор темы
  • Новичок
  • *
  • Сообщений: 8
    • Просмотр профиля
Спасибо огромное за помощь!

Все получилось. WinXP (которая 192.168.0.189) мозги пудрила. Голая система с отключенным брандмауэром и на тебе...
Сделал клона из второй WinXP (которая 192.168.2.50), перенастроил и все заработало.

Теперь только записать для себя (что и как) осталось.

 

Страница сгенерирована за 0.051 секунд. Запросов: 25.