The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  вход/выход  слежка  RSS
"Проброс и перенаправление портов"
Вариант для распечатки  
Пред. тема | След. тема 
Форум Открытые системы на сервере (Маршрутизация, NAT / Linux)
Изначальное сообщение [ Отслеживать ]

"Проброс и перенаправление портов"  +/
Сообщение от StainDN email(ok) on 20-Янв-12, 16:04 
Поробую для начала описать структуру сети


Internet -->PPPOE eth1-router на Ubuntu-eth0 (192.168.1.5)-----локалка
                                                            |  
                                                            ---WWW(192.168.1.253) port 80
                                                            |
                                                            ---VPN(192.168.1.254)

далее через провайдера еще 9 подсетей подключены через VPN

шлюз 192.168.1.1------192.168.2.1----сеть№2
                   |
                   ---192.168.3.1----сеть№3
                   |
                   ---192.168.4.1----сеть№4----сервер моб. торговли (192.168.4.254:8889)

и т.д.

все это ходит в интернет через Ubuntu. На нем же установлен squid.

вот interfaces

# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
auto eth0
iface eth0 inet static
    address 192.168.1.5
    netmask 255.255.255.0
    up route add -net 192.168.2.0/24 gw 192.168.1.1
    up route add -net 192.168.3.0/24 gw 192.168.1.1
    up route add -net 192.168.4.0/24 gw 192.168.1.1
    up route add -net 192.168.5.0/24 gw 192.168.1.1
    up route add -net 192.168.6.0/24 gw 192.168.1.1
    up route add -net 192.168.7.0/24 gw 192.168.1.1
    up route add -net 192.168.8.0/24 gw 192.168.1.1
    up route add -net 192.168.9.0/24 gw 192.168.1.1
    up route add -net 192.168.10.0/24 gw 192.168.1.1

auto eth1
iface eth1 inet static
    address 1.1.1.1
    netmask 255.255.255.0

auto dsl-provider
iface dsl-provider inet ppp
pre-up /sbin/ifconfig eth1 up # line maintained by pppoeconf
provider dsl-provider

post-up /home/administrator/transparent_nat

вот transparent_nat

#!/bin/sh
# При использовании нескольких сетевых интерфейсов.  eth0 – интернет, eth1 - локальная сеть.
# Включаем пересылку пакетов.
echo 1 > /proc/sys/net/ipv4/ip_forward
# Разрешим проход трафика на loopback-интерфейсе.
iptables -A INPUT -i lo -j ACCEPT

# Разрешаем доступ из внутренней сети наружу.
iptables -A FORWARD -i eth0 -o ppp0 -j ACCEPT

# Включаем NAT. Замените 192.168.1.0 на адрес своей сети.
iptables -t nat -A POSTROUTING -s 192.168.1.0/24 -o ppp0 -j MASQUERADE

# Запретим доступ из внешней сети во внутреннюю.
iptables -A FORWARD -i ppp0 -o ppp0 -j REJECT
iptables -t filter -A FORWARD -p tcp -m tcp --dport 443 -j ACCEPT

# для заворачивание нужных портов на сквид
iptables -t nat -A PREROUTING -i eth0 -d ! 192.168.0.0/16 -p tcp -m multiport --dport 80,8080 -j DNAT --to 192.168.1.5:3128

#переброс портов на внутренние службы

iptables -t nat -A PREROUTING -i ppp0 -p tcp --dport 21 -j DNAT --to 192.168.1.253:21
iptables -A FORWARD -i ppp0 -p tcp --dport 21 -j ACCEPT

iptables -t nat -A PREROUTING -i ppp0 -p tcp --dport 8080 -j DNAT --to 192.168.1.253:80

iptables -t nat -A PREROUTING -i ppp0 -p tcp --dport 1723 -j DNAT --to 192.168.1.254:1723 #PPTP
iptables -A FORWARD -i ppp0 -p tcp --dport 1723 -j ACCEPT

iptables -t nat -A PREROUTING -i ppp0 -p tcp --dport 8889 -j DNAT --to 192.168.4.254:8889 #это для БСВ вязьма
iptables -A FORWARD -i ppp0 -p tcp --dport 8889 -j ACCEPT

iptables -t nat -A PREROUTING -i ppp0 -p udp --dport 47 -j DNAT --to 192.168.1.254:47 #PPTP
iptables -A FORWARD -i ppp0 -p tcp --dport 47 -j ACCEPT

route del default
route add default dev ppp0

собственно вопрос. не могу подключиться к VPN серверу из интерента. останавливается на проверке пароля. Не работает пинг в интернет из других подсетей. Работает доступ из инета к WWW и FTP. Есть еще просто ADSL модем через него из инета работает все. Что забыл прописать?  

Ответить | Правка | Cообщить модератору

Оглавление

Сообщения по теме [Сортировка по времени | RSS]


1. "Проброс и перенаправление портов"  +/
Сообщение от Дядя_Федор email on 20-Янв-12, 22:15 
Вы уверены, что понимаете логику работы iptables? А то у меня исхjдя из этого единственного правила
>iptables -A INPUT -i lo -j ACCEPT

возникают сомнения. Ну, и если что-то по пьяни забыл - у Вас PPTP? Дык для него протокол GRE нужен - Вы его вовнутрь не пропустили. В любом случае - чтобы понять - смотрим пакеты на выходящем в LAN интерфейсе. Для начала - по рту 47 (GRE).

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

2. "Проброс и перенаправление портов"  +/
Сообщение от StainDN email(ok) on 21-Янв-12, 10:26 
> Вы уверены, что понимаете логику работы iptables? А то у меня исхjдя
> из этого единственного правила
>>iptables -A INPUT -i lo -j ACCEPT
> возникают сомнения. Ну, и если что-то по пьяни забыл - у Вас
> PPTP? Дык для него протокол GRE нужен - Вы его вовнутрь
> не пропустили. В любом случае - чтобы понять - смотрим пакеты
> на выходящем в LAN интерфейсе. Для начала - по рту 47
> (GRE).

не могу похватсться достаточным для спора логики работы iptables,поэтому эта срочка была взята вот отсюда:
http://melfis.ru/ubuntu-nat-dhcp-squid-прозрачный-кэширующий-прокси-се/

а вот это:

iptables -t nat -A PREROUTING -i ppp0 -p udp --dport 47 -j DNAT --to 192.168.1.254:47
iptables -A FORWARD -i ppp0 -p tcp --dport 47 -j ACCEPT

разве не то что необходимо для пропуска GRE?

как ни странно но и даже на этом форуме http://www.opennet.dev/base/net/iptables_howto.txt.html
iptables -A INPUT -i lo -j ACCEPT

Ответить | Правка | ^ к родителю #1 | Наверх | Cообщить модератору

3. "Проброс и перенаправление портов"  +/
Сообщение от reader (ok) on 21-Янв-12, 11:07 
>[оверквотинг удален]
>> на выходящем в LAN интерфейсе. Для начала - по рту 47
>> (GRE).
> не могу похватсться достаточным для спора логики работы iptables,поэтому эта срочка была
> взята вот отсюда:
> http://melfis.ru/ubuntu-nat-dhcp-squid-прозрачный-кэширующий-прокси-се/
> а вот это:
> iptables -t nat -A PREROUTING -i ppp0 -p udp --dport 47 -j
> DNAT --to 192.168.1.254:47
> iptables -A FORWARD -i ppp0 -p tcp --dport 47 -j ACCEPT
> разве не то что необходимо для пропуска GRE?

у GRE 47 это номер протокола, а не порта.
да и в целом странная логика. пробрасываете -p udp --dport 47 , а разрешение -p tcp --dport 47

> этом форуме http://www.opennet.dev/base/net/iptables_howto.txt.html
> iptables -A INPUT -i lo -j ACCEPT

вы не показали что в output и если там все запрещено , то только это правило вам не поможет

плохая идея показывать куски скрипта, показывайте текущие правила после применения скрипта

iptables-save

Ответить | Правка | ^ к родителю #2 | Наверх | Cообщить модератору

4. "Проброс и перенаправление портов"  +/
Сообщение от Дядя_Федор email on 21-Янв-12, 11:24 
> у GRE 47 это номер протокола, а не порта.
> да и в целом странная логика. пробрасываете -p udp --dport 47 ,
> а разрешение -p tcp --dport 47

Именно ЭТО я пытался втолковать автору вопроса. :) Для пропуска GRE необходимо вот такие правила:
iptables -A INPUT -p gre -j ACCEPT
iptables -A OUTPUT -p gre -j ACCEPT
Если дефолтная политика в обеих цепочках DROP, разумеется.

Ответить | Правка | ^ к родителю #3 | Наверх | Cообщить модератору

5. "Проброс и перенаправление портов"  +/
Сообщение от StainDN email(ok) on 21-Янв-12, 11:28 
>[оверквотинг удален]
>> разве не то что необходимо для пропуска GRE?
> у GRE 47 это номер протокола, а не порта.
> да и в целом странная логика. пробрасываете -p udp --dport 47 ,
> а разрешение -p tcp --dport 47
>> этом форуме http://www.opennet.dev/base/net/iptables_howto.txt.html
>> iptables -A INPUT -i lo -j ACCEPT
> вы не показали что в output и если там все запрещено ,
> то только это правило вам не поможет
> плохая идея показывать куски скрипта, показывайте текущие правила после применения скрипта
> iptables-save

на самом деле это не логика а ошибка. конечно должно быть -p tcp --dport 47
скрипт я привел целиком.

Ответить | Правка | ^ к родителю #3 | Наверх | Cообщить модератору

12. "Проброс и перенаправление портов"  +/
Сообщение от Дядя_Федор email on 21-Янв-12, 15:50 
> на самом деле это не логика а ошибка. конечно должно быть -p
> tcp --dport 47
> скрипт я привел целиком.

И еще раз - для лучшего усвоения. GRE - это ПРОТОКОЛ! Протокол с номером 47 (см. /etc/portokols). К порту 47 протокола TCP он никакого отношения не имеет. Вы разрешили файрволлом абсолютно ненужную Вам вещь! См выхлоп команды grep 47 /etc/services! Ну и еще - для лучшего усвоения и приобретения дополнительных скиллов прочитайте как работает PPTP. Наверняка это Вам в будущем пригодится.

Ответить | Правка | ^ к родителю #5 | Наверх | Cообщить модератору

13. "Проброс и перенаправление портов"  +/
Сообщение от Дядя_Федор email on 21-Янв-12, 15:51 
> Протокол с номером 47 (см. /etc/portokols).

Пардон. /etc/protocols

Ответить | Правка | ^ к родителю #12 | Наверх | Cообщить модератору

14. "Проброс и перенаправление портов"  +/
Сообщение от StainDN email(ok) on 23-Янв-12, 09:39 
>> на самом деле это не логика а ошибка. конечно должно быть -p
>> tcp --dport 47
>> скрипт я привел целиком.
>  И еще раз - для лучшего усвоения. GRE - это ПРОТОКОЛ!
> Протокол с номером 47 (см. /etc/portokols). К порту 47 протокола TCP
> он никакого отношения не имеет. Вы разрешили файрволлом абсолютно ненужную Вам
> вещь! См выхлоп команды grep 47 /etc/services! Ну и еще -
> для лучшего усвоения и приобретения дополнительных скиллов прочитайте как работает PPTP.
> Наверняка это Вам в будущем пригодится.

так что с моими остальными проблемами?

Ответить | Правка | ^ к родителю #12 | Наверх | Cообщить модератору

15. "Проброс и перенаправление портов"  +/
Сообщение от Дядя_Федор on 23-Янв-12, 11:01 
> так что с моими остальными проблемами?

Если Вы про проблемы в части ИТ - мне показалось, что Вы написали, что все решилось включением соответствующих модулей ядра. Если Вы про проблемы личного плана - то это не по моей специальности.


Ответить | Правка | ^ к родителю #14 | Наверх | Cообщить модератору

16. "Проброс и перенаправление портов"  +/
Сообщение от StainDN email(ok) on 24-Янв-12, 11:48 
>> так что с моими остальными проблемами?
>  Если Вы про проблемы в части ИТ - мне показалось, что
> Вы написали, что все решилось включением соответствующих модулей ядра. Если Вы
> про проблемы личного плана - то это не по моей специальности.

я про пинг писал из других подсетей. :-) ну тоже разобрался пока ответа ждал. осталась одна проблема. вот этот кусок
iptables -t nat -A PREROUTING --dst 212.3.153.25 -p tcp --dport 8889 -j DNAT --to-destination 192.168.4.254
iptables -t nat -A POSTROUTING --dst 212.3.153.25 -p tcp --dport 8889 -j SNAT --to-source 192.168.1.5
iptables -t nat -A OUTPUT --dst 212.3.153.25 -p tcp --dport 8889 -j DNAT --to-destination 192.168.4.254
iptables -I FORWARD 1 -i ppp0 -o eth0 -d 192.168.4.254 -p tcp -m tcp --dport 8889 -j ACCEPT

для адреса сервера 192.168.1.254 работает, а для 192.168.4.254 нет. не подскажешь как посмотреть где затык?

Ответить | Правка | ^ к родителю #15 | Наверх | Cообщить модератору

6. "Проброс и перенаправление портов"  +/
Сообщение от StainDN email(ok) on 21-Янв-12, 11:32 
> iptables-save

:OUTPUT ACCEPT [7463:3287167]
-A INPUT -i lo -j ACCEPT
-A FORWARD -i eth0 -o ppp0 -j ACCEPT
-A FORWARD -i ppp0 -o ppp0 -j REJECT --reject-with icmp-port-unreachable
-A FORWARD -p tcp -m tcp --dport 443 -j ACCEPT
-A FORWARD -i 192.168.1.253 -p tcp -m tcp --dport 21 -j ACCEPT
-A FORWARD -i 92.168.4.254 -p tcp -m tcp --dport 8889 -j ACCEPT
-A FORWARD -d 192.168.1.254/32 -i ppp0 -p tcp -m tcp --dport 1723 -j ACCEPT
-A FORWARD -d 192.168.1.254/32 -i ppp0 -p gre -j ACCEPT
COMMIT
# Completed on Sat Jan 21 11:29:52 2012
administrator@ubuntu:~$ sudo iptables-save
# Generated by iptables-save v1.4.4 on Sat Jan 21 11:30:53 2012
*mangle
:PREROUTING ACCEPT [15701:4431062]
:INPUT ACCEPT [8616:3132556]
:FORWARD ACCEPT [3430:845518]
:OUTPUT ACCEPT [8012:3506172]
:POSTROUTING ACCEPT [11522:4362512]
-A FORWARD -o ppp0 -p tcp -m tcp --tcp-flags SYN,RST SYN -m tcpmss --mss 1400:65495 -j TCPMSS --clamp-mss-to-pmtu
COMMIT
# Completed on Sat Jan 21 11:30:53 2012
# Generated by iptables-save v1.4.4 on Sat Jan 21 11:30:53 2012
*nat
:PREROUTING ACCEPT [4500:560457]
:POSTROUTING ACCEPT [404:27756]
:OUTPUT ACCEPT [225:15617]
-A PREROUTING ! -d 192.168.0.0/16 -i eth0 -p tcp -m multiport --dports 80,8080 -j DNAT --to-destination 192.168.1.5:3128
-A PREROUTING -i ppp0 -p tcp -m tcp --dport 21 -j DNAT --to-destination 192.168.1.253:21
-A PREROUTING -i ppp0 -p tcp -m tcp --dport 8080 -j DNAT --to-destination 192.168.1.253:80
-A PREROUTING -i ppp0 -p tcp -m tcp --dport 8888 -j DNAT --to-destination 192.168.4.254:8888
-A PREROUTING -i ppp0 -p tcp -m tcp --dport 8889 -j DNAT --to-destination 192.168.4.254:8889
-A PREROUTING -i ppp0 -p tcp -m tcp --dport 8890 -j DNAT --to-destination 192.168.10.201:8889
-A PREROUTING -i ppp0 -p tcp -m tcp --dport 1723 -j DNAT --to-destination 192.168.1.254:1723
-A PREROUTING -i ppp0 -p tcp -m tcp --dport 47 -j DNAT --to-destination 192.168.1.254:47
-A POSTROUTING -s 192.168.1.0/24 -o ppp0 -j MASQUERADE
COMMIT

Ответить | Правка | ^ к родителю #3 | Наверх | Cообщить модератору

7. "Проброс и перенаправление портов"  +/
Сообщение от StainDN email(ok) on 21-Янв-12, 12:27 
в общем нашел мою ситуацию один в один
http://forum.ubuntu.ru/index.php?topic=103868.0
сделал ка написано - vpn заработал. осталось понять что означают вот эти строки

modprobe ip_conntrack_ftp
modprobe ip_gre
modprobe ip_conntrack_pptp
modprobe ip_nat_pptp

я так понял вся проблема в них.


и так и открыт вопрос пинга из других подсетей...

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

8. "Проброс и перенаправление портов"  +/
Сообщение от Дядя_Федор email on 21-Янв-12, 12:34 
> modprobe ip_conntrack_ftp
> modprobe ip_gre
> modprobe ip_conntrack_pptp
> modprobe ip_nat_pptp
> я так понял вся проблема в них.

А Вы этого не знаете? :) Сильно. Это подключение модулей ядра для работы GRE, PPTP и FTP. NAT - он и в Африке NAT, а conntracrk - connection tracking. Почитайте, как работает NAT двухсторонний.

Ответить | Правка | ^ к родителю #7 | Наверх | Cообщить модератору

9. "Проброс и перенаправление портов"  +/
Сообщение от StainDN email(ok) on 21-Янв-12, 12:50 
>> modprobe ip_conntrack_ftp
>> modprobe ip_gre
>> modprobe ip_conntrack_pptp
>> modprobe ip_nat_pptp
>> я так понял вся проблема в них.
>  А Вы этого не знаете? :) Сильно. Это подключение модулей ядра
> для работы GRE, PPTP и FTP. NAT - он и в
> Африке NAT, а conntracrk - connection tracking. Почитайте, как работает NAT
> двухсторонний.

а вы не знали что без этого не работает?

Ответить | Правка | ^ к родителю #8 | Наверх | Cообщить модератору

11. "Проброс и перенаправление портов"  +/
Сообщение от Дядя_Федор email on 21-Янв-12, 15:46 
> а вы не знали что без этого не работает?

Я-то? Я знал. :) Но в момент формулирования Вами вопроса мои ментальные возможности несколько иссякли - поэтому я не смог предположить, что у Вас поддержка указанных модулей у Вас не включена в ядре (ну, или в Вашем случае - не собрана модулем и не подключена).


Ответить | Правка | ^ к родителю #9 | Наверх | Cообщить модератору

10. "Проброс и перенаправление портов"  +/
Сообщение от StainDN email(ok) on 21-Янв-12, 12:52 
>> modprobe ip_conntrack_ftp
>> modprobe ip_gre
>> modprobe ip_conntrack_pptp
>> modprobe ip_nat_pptp
>> я так понял вся проблема в них.
>  А Вы этого не знаете? :) Сильно. Это подключение модулей ядра
> для работы GRE, PPTP и FTP. NAT - он и в
> Африке NAT, а conntracrk - connection tracking. Почитайте, как работает NAT
> двухсторонний.

я много чего не знаю. знал бы не задавал вопросов, а сам другим бы помогал.

Ответить | Правка | ^ к родителю #8 | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру