Tonny_Bennet
10-07-2010, 14:41
Здравствуйте. Есть Ubuntu Server 10.4 работающий в качестве интернет-шлюза, на нём крутится Squid.
ppp0 193.105.33.35 смотрит наружу (статический внешний IP)
eth0 192.168.0.10 смотрит внутрь
В мануале по настройке sqid был скрипт iptables который в принципе работает нормально. (NAT и заворачивание трафика на интерфейс squid) Но помимо прокси ещё нужно завернуть VPN трафик из внешки на локальную машину 192.168.0.100 (она когда то была шлюзом и на ней крутится VPN сервер под 2003 виндой)
Вот скрипт iptables
#!/bin/sh
# Включаем форвардинг пакетов
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
iptables -t nat -A POSTROUTING -o ppp0 -s 192.168.0.0/24 -j MASQUERADE
# Запрещаем доступ снаружи во внутреннюю сеть
iptables -A FORWARD -i ppp0 -o ppp0 -j REJECT
# Заворачиваем http на прокси
iptables -t nat -A PREROUTING -i eth0 ! -d 192.168.0.0/24 -p tcp -m multiport --dport 80,8080 -j DNAT --to 192.168.0.10:3128
#Заворачиваем трафик VPN сервера на Win2003
modprobe ip_gre
iptables -A INPUT -p gre -j ACCEPT
iptables -A OUTPUT -p gre -j ACCEPT
iptables -t nat -A PREROUTING --dst 193.105.33.35 -p tcp --dport 1723 -j DNAT --to-destination 192.168.0.100
iptables -t nat -A POSTROUTING --dst 192.168.0.100 -p tcp --dport 1723 -j SNAT --to-source 192.168.0.10
iptables -t nat -A OUTPUT --dst 193.105.33.35 -p tcp --dport 1723 -j DNAT --to-destination 192.168.0.100
iptables -I FORWARD 1 -i ppp0 -o eth0 -d 192.168.0.100 -p tcp -m tcp --dport 1723 -j ACCEPT
При создании VPN на внешний IP 193.105.33.35 появляется ошибка 721
В логах 2003 сервера пишется:
Тип события: Предупреждение
Источник события: Rasman
Категория события: Отсутствует
Код события: 20209
Дата: 10.07.2010
Время: 14:34:38
Пользователь: Н/Д
Компьютер: HIGHLANDER
Описание:
Связь между VPN-сервером и VPN-клиентом 192.168.0.10 была установлена, но не удалось завершить установку VPN-подключения. Наиболее вероятная причина - брандмауэр или маршрутизатор между VPN-сервером и VPN-клиентом не разрешает передачу пакетов GRE (Generic Routing Encapsulation) протокола 47. Проверьте, что брандмауэры и маршрутизаторы между этим VPN-сервером и Интернетом разрешают GRE-пакеты. Проверьте, что брандмауэры и маршрутизаторы в сети пользователя также разрешают GRE-пакеты. Если проблема сохраняется, обратитесь к вашему поставщику услуг Интернета (ISP) чтобы проверить, не происходит ли блокирование GRE-пакетов поставщиком.
Дополнительные сведения можно найти в центре справки и поддержки, в "http://go.microsoft.com/fwlink/events.asp".
При подключении на интерфес VPN сервера 192,168,0,100 из локальной сети - коннект проходит удачно
Пожалуйста помогите разобраться
ppp0 193.105.33.35 смотрит наружу (статический внешний IP)
eth0 192.168.0.10 смотрит внутрь
В мануале по настройке sqid был скрипт iptables который в принципе работает нормально. (NAT и заворачивание трафика на интерфейс squid) Но помимо прокси ещё нужно завернуть VPN трафик из внешки на локальную машину 192.168.0.100 (она когда то была шлюзом и на ней крутится VPN сервер под 2003 виндой)
Вот скрипт iptables
#!/bin/sh
# Включаем форвардинг пакетов
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
iptables -t nat -A POSTROUTING -o ppp0 -s 192.168.0.0/24 -j MASQUERADE
# Запрещаем доступ снаружи во внутреннюю сеть
iptables -A FORWARD -i ppp0 -o ppp0 -j REJECT
# Заворачиваем http на прокси
iptables -t nat -A PREROUTING -i eth0 ! -d 192.168.0.0/24 -p tcp -m multiport --dport 80,8080 -j DNAT --to 192.168.0.10:3128
#Заворачиваем трафик VPN сервера на Win2003
modprobe ip_gre
iptables -A INPUT -p gre -j ACCEPT
iptables -A OUTPUT -p gre -j ACCEPT
iptables -t nat -A PREROUTING --dst 193.105.33.35 -p tcp --dport 1723 -j DNAT --to-destination 192.168.0.100
iptables -t nat -A POSTROUTING --dst 192.168.0.100 -p tcp --dport 1723 -j SNAT --to-source 192.168.0.10
iptables -t nat -A OUTPUT --dst 193.105.33.35 -p tcp --dport 1723 -j DNAT --to-destination 192.168.0.100
iptables -I FORWARD 1 -i ppp0 -o eth0 -d 192.168.0.100 -p tcp -m tcp --dport 1723 -j ACCEPT
При создании VPN на внешний IP 193.105.33.35 появляется ошибка 721
В логах 2003 сервера пишется:
Тип события: Предупреждение
Источник события: Rasman
Категория события: Отсутствует
Код события: 20209
Дата: 10.07.2010
Время: 14:34:38
Пользователь: Н/Д
Компьютер: HIGHLANDER
Описание:
Связь между VPN-сервером и VPN-клиентом 192.168.0.10 была установлена, но не удалось завершить установку VPN-подключения. Наиболее вероятная причина - брандмауэр или маршрутизатор между VPN-сервером и VPN-клиентом не разрешает передачу пакетов GRE (Generic Routing Encapsulation) протокола 47. Проверьте, что брандмауэры и маршрутизаторы между этим VPN-сервером и Интернетом разрешают GRE-пакеты. Проверьте, что брандмауэры и маршрутизаторы в сети пользователя также разрешают GRE-пакеты. Если проблема сохраняется, обратитесь к вашему поставщику услуг Интернета (ISP) чтобы проверить, не происходит ли блокирование GRE-пакетов поставщиком.
Дополнительные сведения можно найти в центре справки и поддержки, в "http://go.microsoft.com/fwlink/events.asp".
При подключении на интерфес VPN сервера 192,168,0,100 из локальной сети - коннект проходит удачно
Пожалуйста помогите разобраться