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


Считаете, что Ubuntu недостаточно дружелюбна к новичкам?
Помогите создать новое Руководство для новичков!

Автор Тема: Как открыть TCP порты для Cisco VPN  (Прочитано 545 раз)

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

Оффлайн dimvas

  • Автор темы
  • Новичок
  • *
  • Сообщений: 8
    • Просмотр профиля
Как открыть TCP порты для Cisco VPN
« : 03 Август 2016, 10:50:01 »
Добрый день!
Не получается открыть TCP порты для Cisco VPN Client.
Сервер выполняет роль шлюза по умолчанию для пользователей сети 192.168.7.0/24. Включен ip_forward.
Как написано в инструкции, Cisco VPN использует для UDP соединения порты 500 и 4500, а для TCP 10000.
Создал правило для TCP и для UDP соединений. При этом по UDP клиент отлично подключается, а по TCP не хочет ни в какую. В правилах ошибок не наблюдаю, то ли еще какие-то порты нужно открывать, то ли еще что-то делать. В инструкции написано, что для TCP достаточно открыть 10000. Но ничего не работает. Если включить политику по умлочанию ACCEPT для цепочки FORWARD, то TCP начинает работать. То есть дело в фильтре, конкретно в чем не могу понять. Хотя порт 10000 телнетится нормально к удаленному VPN-серверу, правило срабатывает нормально.


# Generated by iptables-save v1.6.0 on Wed Aug  3 14:44:15 2016
*filter
:INPUT DROP [230:17977]
:FORWARD DROP [12:728]
:OUTPUT ACCEPT [38:3357]
-A INPUT -p tcp -m tcp --dport 22 -m conntrack --ctstate NEW,ESTABLISHED -j ACCEPT
-A FORWARD -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
-A FORWARD -p icmp -m icmp --icmp-type 8 -j ACCEPT
-A FORWARD -p icmp -m icmp --icmp-type 0 -j ACCEPT
-A FORWARD -i lan -o kazna -p tcp -m tcp --dport 2598 -m conntrack --ctstate NEW -j ACCEPT
-A FORWARD -p tcp -m tcp --dport 80 -m conntrack --ctstate NEW -j ACCEPT
-A FORWARD -s 192.168.7.0/24 -d 192.168.79.0/24 -p tcp -j ACCEPT
-A FORWARD -p tcp -m tcp --dport 10000 -m conntrack --ctstate NEW -j ACCEPT
-A FORWARD -p udp -m multiport --dports 500,4500 -m conntrack --ctstate NEW -j ACCEPT
COMMIT
# Completed on Wed Aug  3 14:44:15 2016
# Generated by iptables-save v1.6.0 on Wed Aug  3 14:44:15 2016
*nat
:PREROUTING ACCEPT [505:57970]
:INPUT ACCEPT [0:0]
:OUTPUT ACCEPT [4:240]
:POSTROUTING ACCEPT [6:1322]
-A POSTROUTING -o kazna -j MASQUERADE
COMMIT
# Completed on Wed Aug  3 14:44:15 2016
 
« Последнее редактирование: 03 Август 2016, 10:56:21 от dimvas »

Оффлайн AnrDaemon

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 26096
    • Просмотр профиля
Re: Как открыть TCP порты для Cisco VPN
« Ответ #1 : 03 Август 2016, 11:15:38 »
У вас INPUT ну совсем неправильно порезан.
Пример в https://forum.ubuntu.ru/index.php?topic=99586.0 смотрите.

Пользователь добавил сообщение 03 Август 2016, 11:17:01:
P.S.
DNAT вроде надо лепить в nat/PREROUTING
Не помню. Я везде dnat истребил >.<
Хотите получить помощь? Потрудитесь представить запрошенную информацию в полном объёме.

Прежде чем [Отправить], нажми [Просмотр] и прочти собственное сообщение. Сам-то понял, что написал?…

Оффлайн dimvas

  • Автор темы
  • Новичок
  • *
  • Сообщений: 8
    • Просмотр профиля
Re: Как открыть TCP порты для Cisco VPN
« Ответ #2 : 04 Август 2016, 09:09:29 »
В общем, решил свою проблему с помощью такого правила:
iptables -A FORWARD -p tcp --sport 1024:65535 --dport 10000 -j ACCEPT

Как я понял, удаленный сервер может дать ответ с какого-то непонятного порта, не из 10000. Создал правило, заработало соединение и по TCP.

AnrDaemon, у меня SNAT настроен. Спасибо за ссылку на тему, взял скрипты на вооружение, очень удобно. А сейчас правильно порезал?


# Generated by iptables-save v1.6.0 on Thu Aug  4 13:06:11 2016
*filter
:INPUT DROP [1601:127304]
:FORWARD DROP [266:13668]
:OUTPUT ACCEPT [378:60038]
-A INPUT -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
-A INPUT -p tcp -m tcp --dport 22 -m conntrack --ctstate NEW -j ACCEPT
-A INPUT -p udp -m udp --sport 53 --dport 1024:65535 -j ACCEPT
-A INPUT -p tcp -m tcp --sport 53 --dport 1024:65535 -j ACCEPT
-A FORWARD -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
-A FORWARD -p icmp -m icmp --icmp-type 8 -j ACCEPT
-A FORWARD -p icmp -m icmp --icmp-type 0 -j ACCEPT
-A FORWARD -i lan -o kazna -p tcp -m tcp --dport 2598 -m conntrack --ctstate NEW -j ACCEPT
-A FORWARD -p tcp -m tcp --dport 80 -m conntrack --ctstate NEW -j ACCEPT
-A FORWARD -s 192.168.7.0/24 -d 192.168.79.0/24 -p tcp -j ACCEPT
-A FORWARD -p udp -m multiport --dports 500,4500 -m conntrack --ctstate NEW -j ACCEPT
-A FORWARD -p tcp -m tcp --sport 1024:65535 --dport 10000 -j ACCEPT
COMMIT
# Completed on Thu Aug  4 13:06:11 2016
# Generated by iptables-save v1.6.0 on Thu Aug  4 13:06:11 2016
*nat
:PREROUTING ACCEPT [32561:2816732]
:INPUT ACCEPT [1:52]
:OUTPUT ACCEPT [210:12829]
:POSTROUTING ACCEPT [223:13577]
-A POSTROUTING -o kazna -j MASQUERADE
COMMIT
# Completed on Thu Aug  4 13:06:11 2016

Оффлайн AnrDaemon

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 26096
    • Просмотр профиля
Re: Как открыть TCP порты для Cisco VPN
« Ответ #3 : 04 Август 2016, 13:21:34 »
Зачем вообще --sport указывать?…
Хотите получить помощь? Потрудитесь представить запрошенную информацию в полном объёме.

Прежде чем [Отправить], нажми [Просмотр] и прочти собственное сообщение. Сам-то понял, что написал?…

Оффлайн dimvas

  • Автор темы
  • Новичок
  • *
  • Сообщений: 8
    • Просмотр профиля
Re: Как открыть TCP порты для Cisco VPN
« Ответ #4 : 04 Август 2016, 13:41:40 »
Я думал, что в нем дело, хотя понятно, что глупость какая-то.
Убрал из правила -m conntrack --ctstate NEW и о чудо, тоже заработало:

-A FORWARD -p tcp -m tcp --dport 10000 -j ACCEPT

AnrDaemon, можете объяснить, почему такой косяк происходит? Почему при добавлении -m conntrack --ctstate NEW в это правило соединение режется?

Рабочая таблица:
# Generated by iptables-save v1.6.0 on Thu Aug  4 17:56:30 2016
*nat
:PREROUTING ACCEPT [18081:1683759]
:INPUT ACCEPT [1:52]
:OUTPUT ACCEPT [130:8203]
:POSTROUTING ACCEPT [18:1016]
-A POSTROUTING -o kazna -j MASQUERADE
COMMIT
# Completed on Thu Aug  4 17:56:30 2016
# Generated by iptables-save v1.6.0 on Thu Aug  4 17:56:30 2016
*filter
:INPUT DROP [3393:270175]
:FORWARD DROP [75:4258]
:OUTPUT ACCEPT [37:6330]
-A INPUT -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
-A INPUT -p tcp -m tcp --dport 53333 -m conntrack --ctstate NEW -j ACCEPT
-A INPUT -p udp -m udp --sport 53 --dport 1024:65535 -j ACCEPT
-A INPUT -p tcp -m tcp --sport 53 --dport 1024:65535 -j ACCEPT
-A FORWARD -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
-A FORWARD -p icmp -m icmp --icmp-type 8 -j ACCEPT
-A FORWARD -p icmp -m icmp --icmp-type 0 -j ACCEPT
-A FORWARD -i lan -o kazna -p tcp -m tcp --dport 2598 -m conntrack --ctstate NEW -j ACCEPT
-A FORWARD -p tcp -m tcp --dport 80 -m conntrack --ctstate NEW -j ACCEPT
-A FORWARD -s 192.168.7.0/24 -d 192.168.79.0/24 -p tcp -j ACCEPT
-A FORWARD -p udp -m multiport --dports 500,4500 -m conntrack --ctstate NEW -j ACCEPT
-A FORWARD -p tcp -m tcp --dport 10000 -j ACCEPT
-A FORWARD -p tcp -m tcp --dport 80 -j ACCEPT
COMMIT
# Completed on Thu Aug  4 17:56:30 2016
« Последнее редактирование: 04 Август 2016, 13:57:19 от dimvas »

Оффлайн AnrDaemon

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 26096
    • Просмотр профиля
Re: Как открыть TCP порты для Cisco VPN
« Ответ #5 : 04 Август 2016, 13:50:50 »
А ты убери и попробуй ещё раз.
Только входящий/исходящий IF укажи.
Хотите получить помощь? Потрудитесь представить запрошенную информацию в полном объёме.

Прежде чем [Отправить], нажми [Просмотр] и прочти собственное сообщение. Сам-то понял, что написал?…

Оффлайн dimvas

  • Автор темы
  • Новичок
  • *
  • Сообщений: 8
    • Просмотр профиля
Re: Как открыть TCP порты для Cisco VPN
« Ответ #6 : 04 Август 2016, 14:03:30 »
Посмотри сообщение выше, я вопрос задал. Интерфейсы смысла нет указывать, так как соединение идет исключительно через один интерфейс.

Пользователь -> Маршрутизация на сервере, интерфейс lan -> маршрутизатор Cisco -> интернет
« Последнее редактирование: 04 Август 2016, 14:05:04 от dimvas »

Оффлайн AnrDaemon

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 26096
    • Просмотр профиля
Re: Как открыть TCP порты для Cisco VPN
« Ответ #7 : 04 Август 2016, 14:28:35 »
Интерфейсы есть смысл указывать, чтобы не нарваться на обратку.
А чтобы узнать, почему режется, есть tcpdump.

Запускаешь на шлюзе tcpdump -i lan -w mydump.pcap 'tcp port 10000 and host clienthost' и пробуешь подключиться с хоста clienthost
Хотите получить помощь? Потрудитесь представить запрошенную информацию в полном объёме.

Прежде чем [Отправить], нажми [Просмотр] и прочти собственное сообщение. Сам-то понял, что написал?…

 

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