Иногда бывает, что нужно сделать так, чтобы пользователь, после подключения к VPN, смог бы использовать сервер как шлюз по-умолчанию, то есть выходил в интернет через него. Даже если у пользователя уже есть шлюз по-умолчанию. Проблема тут раньше возникала такая: как сделать так, чтобы после установки шлюза по-умолчанию, инкапсулированные в VPN пакеты могли достигнуть этого самого VPN-сервера? Конечно, если все пользователи находятся в известных условиях, можно было накручивать кучу скриптов, которые бы устанаваливали маршрут до VPN-сервера через старый шлюз по-умолчанию, но вот в OpenVPN появилась опция, которая позволяет автоматически настроить маршрутизацию как надо:
1. Прописать маршрут к VPN-серверу через текущий шлюз по-умолчанию.
2. Установить новый шлюз по-умолчанию через VPN-сервер
3. После окончания работы с VPN вернуть все назад.
Опция называется redirect-gateway. Если вы и правда решили раздать интернет через OpenVPN, то вот рецепт :)
В конфигурационном файле клиента добавляем:
redirect-gateway
dhcp-option DNS <новый DNS-сервер>
На сервере настраиваем, соответственно, ip forwarding + NAT:
/etc/sysctl.conf:
net.ipv4.ip_forward = 1
# sysctl -p
# iptables -t nat -I POSTROUTING -s $VPN_IP_RANGE -o $INET_IFACE -j SNAT --to-source $SERVER_EXT_IP
И вуаля, оно работает. По крайней мере для клиентов с Windows XP. Другие не тестировал
воскресенье, 25 июля 2010 г.
Подписаться на:
Комментарии к сообщению (Atom)
Комментариев нет:
Отправить комментарий