Доброе утро )
Ситуация такая - есть сервер c установленной ОС mandriva,это сервер выступает как интернет шлюз, на нём установлен прокся и почтовик. По топологии сети за этим сервером распологается сервер с Win 2003 (например, ip 10.1.1.1), там установлен Kerio Firewall и поднят VPN-сервер.Так вот я хочу из дома соединяться благодаря kerio vpn client соединяться c vpn сервером организации и попадать в сеть.
Понимаю что для этого надо настроить iptables на интернет шлюзе, чтоб он пакеты с определенного ip адреса и порта направлял на vpn сервер.
Люди подскажите как правильно это сделать ??
порт у vpn сервера - 4090.
мой ip - 12.12.12.12вот мой вариант -
iptables -t nat -A PREROUTING -i eth0 -d 12.12.12.12 -p tcp --dport 4090 -j DNAT --to-destination 10.1.1.1:4090
iptables -t nat -A POSTROUTING -o eth1 -s 10.1.1.1 -p tcp --sport 4090 -j SNAT --to-source 12.12.12.12:4090я так делал и что то не вышло.
>[оверквотинг удален]
>мой ip - 12.12.12.12
>
>вот мой вариант -
>
>iptables -t nat -A PREROUTING -i eth0 -d 12.12.12.12 -p tcp --dport
>4090 -j DNAT --to-destination 10.1.1.1:4090
>iptables -t nat -A POSTROUTING -o eth1 -s 10.1.1.1 -p tcp
>--sport 4090 -j SNAT --to-source 12.12.12.12:4090
>
>я так делал и что то не вышло.Еще нужно, как минимум:
iptables -A FORWARD -p tcp -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A FORWARD -i eth0 -d 12.12.12.12 -p tcp --dport 4090 -m state --state NEW -j ACCEPT
И маршрутизацию включить не забудьте.
А как проверить включена маршрутизация или нет ?
>А как проверить включена маршрутизация или нет ?cat /proc/sys/net/ipv4/ip_forward если там значение 1 то включена если 0 то выключена незнаю как в вашем дистрибутиве но скарей всего так как он редхат лайк то тут vi /etc/sysctl.conf
# Controls IP packet forwarding
net.ipv4.ip_forward = 0поменять 0 на 1 и ребут сети
Включено.
Добавил:
iptables -A FORWARD -p tcp -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A FORWARD -i eth0 -d 12.12.12.12 -p tcp --dport 4090 -m state --state NEW -j ACCEPTВсе равно не идёт.
Пишет запрос на установление отклонен сервером.
Может логи стоит на сервере посмотреть ?>>А как проверить включена маршрутизация или нет ?
>
> cat /proc/sys/net/ipv4/ip_forward если там значение 1 то включена если 0 то
>выключена незнаю как в вашем дистрибутиве но скарей всего так как
>он редхат лайк то тут vi /etc/sysctl.conf
># Controls IP packet forwarding
>net.ipv4.ip_forward = 0
>
>поменять 0 на 1 и ребут сети
>Добавил:
>iptables -A FORWARD -p tcp -m state --state ESTABLISHED,RELATED -j ACCEPT
>iptables -A FORWARD -i eth0 -d 12.12.12.12 -p tcp --dport 4090 -m
>state --state NEW -j ACCEPT
>
>Все равно не идёт.
>Пишет запрос на установление отклонен сервером.
>Может логи стоит на сервере посмотреть ?Посмотрите логи. Можете включить логи и для фильтра пакетов:
iptables -t mangle -A FORWARD -p tcp --dport 4090 -LOG ACCEPT
iptables -t mangle -A FORWARD -p tcp --sport 4090 -LOG ACCEPTЕсли сервер отвечает, то очевидно, что пакеты проходят. Значит нужно смотреть настройки самого VPN-сервера.
запрос на установление отклонен сервером - может сервер который интернет шлюз ??с настройками впн сервера всё нормуль, там чётко прописано с какого ip можно создавать vpn-туннель.
А куда будут сыпаться логи для фильтра пакета ??
>[оверквотинг удален]
>>Пишет запрос на установление отклонен сервером.
>>Может логи стоит на сервере посмотреть ?
>
>Посмотрите логи. Можете включить логи и для фильтра пакетов:
>
>iptables -t mangle -A FORWARD -p tcp --dport 4090 -LOG ACCEPT
>iptables -t mangle -A FORWARD -p tcp --sport 4090 -LOG ACCEPT
>
>Если сервер отвечает, то очевидно, что пакеты проходят. Значит нужно смотреть настройки
>самого VPN-сервера.
Кстати, а виндовый файрвол не блокирует пакеты?
Нет, он отключен.
>Кстати, а виндовый файрвол не блокирует пакеты?
>[оверквотинг удален]
>мой ip - 12.12.12.12
>
>вот мой вариант -
>
>iptables -t nat -A PREROUTING -i eth0 -d 12.12.12.12 -p tcp --dport
>4090 -j DNAT --to-destination 10.1.1.1:4090
>iptables -t nat -A POSTROUTING -o eth1 -s 10.1.1.1 -p tcp
>--sport 4090 -j SNAT --to-source 12.12.12.12:4090
>
>я так делал и что то не вышло.интересно у вас получается, DNAT делаете на eth0 и если это интерфейс смотрящий на провайдера, а eth1 смотрит на сервер, то тайный смысл такого SNAT не понятен
покажите iptables-save и укажите какие интерфейсы куда смотрят
eth0 - интерфейс который смотрит в стороноу провайдера, а eth1 в сторону локалки.
>
>интересно у вас получается, DNAT делаете на eth0 и если это интерфейс
>смотрящий на провайдера, а eth1 смотрит на сервер, то тайный смысл
>такого SNAT не понятен
>
>покажите iptables-save и укажите какие интерфейсы куда смотрят
а надо на сервере интернет шлюз открывать порт 4090 ??
чтобы к нему коннектился клиент..
>а надо на сервере интернет шлюз открывать порт 4090 ??
>чтобы к нему коннектился клиент..и что?
SNAT для пакетов от сервера делается или нет?
у eth1 адрес из подсети 10.1.1.0 ?
у сервера что шлюзом прописано?
на сервер пакеты приходят или нет?
ответы от сервера уходят?
iptables -t nat -A PREROUTING -p tcp -d $EXT_R_IP --dport $PORT1 -j DNAT --to-destination $LOCAL_IP:$PORT2
iptables -A FORWARD -i eth0 -d $LOCAL_IP -p tcp --dport $PORT2 -j ACCEPT
ввёл такого рода команды. до vpn сервера пробиваюсь. и там он выдает ошибку Невозможно организовать туннелирование данных.Надо в postrouting написать.
помогите..
>[оверквотинг удален]
>DNAT --to-destination $LOCAL_IP:$PORT2
>iptables -A FORWARD -i eth0 -d $LOCAL_IP -p tcp --dport $PORT2 -j
>ACCEPT
>
>
>ввёл такого рода команды. до vpn сервера пробиваюсь. и там он выдает
>ошибку Невозможно организовать туннелирование данных.
>
>Надо в postrouting написать.
>помогите..postrouting такой же как вы и писали только место -o eth1 пишите -o eth0, но если это шлюз и он уже и так для всего SNAT делает, то будет незачем, показывайте iptables-save и ifconfig, только белые адреса замаскируйте, так что бы логика осталась понятна
за последнюю неделю уже в трех ветках памойму написал а никто нечитает даже.товарищи ЮЗАЙТЕ поиск по подобным проблемам.вопервых в фаире подгрузите модуль ip_nat_pptp (без него и недолжен работать впн через ваш шлюз)во вторых есть генеальная никсовая софтина называеться tcpdump если вы незнаете как с ней работать то никогда нормально без чьей либо помощи несможете разобраться в проблемах в сети,посмотрите на обеих интерфейсах что приходит что уходит.и в третих прочитайте вы уже наконецтаки
http://www.opennet.me/docs/RUS/iptables/