nix. ограничение трафика в обход VPN.как запретить доступ к сети во время обрыва впн?
Здравствуйте.
как отдельным программам [или всей системе] запретить доступ к сети во время обрыва впн соединения?
основная задача:
для определенных программ [Deluge, Vmware. Empathy, Opera, ...] нужно запретить доступ к сети при неработающем впн.
трафик должен идти только когда работает впн. если не работает впн то трафик не уходит.
Подскажите пожалуйста как это можно реализовать?
ОС: Ubuntu 9.10
доступ в интернет через ppp0
openvpn через tun0
отдельно для VMware пробовал так:
iptables -A FORWARD --in-interface tun0 --out-interface vmnet255 -j ACCEPT
iptables -A FORWARD --in-interface vmnet255 --out-interface tun0 -j ACCEPT
iptables -A FORWARD ! --in-interface tun0 --out-interface vmnet255 -j REJECT
iptables -A FORWARD --in-interface vmnet255 ! --out-interface tun0 -j REJECT
не помогает. трафик идет и без впн. хотя в настроках виртуальной машины указан интерфейс vmnet255
разрешить только порты впн не получается, порты все время разные (OpenVPN).
в WinXP делал так:
первая группа программ - разрешен полный доступ в сеть
вторая группа программ - разрешен доступ только через "виртуальный MAC адрес ВПН соединения"
самой программе openvpn (всем ее файлам) и некоторым системным файлам разрешен полный доступ в сеть, иначе сам впн не может установить соединение.
частично разобрался. в конфиге опенвпна добавляем параметр "down" при обрыве соединения он выполняет указываемую команду.
(подробнее про настройку конфика опена: http://tuxnotes.ru/articles.php?a_id=26)
для того чтоб из конфига опенвпн(у меня "vpn.conf") выполнить скрипт нужно:
1. полность прописать путь к файлу. например:
up /home/namenamename/Desktop/script-up.sh (для запуска при старте tun/tap)
down /home/namenamename/Desktop/script-down.sh (для запуска при закрытиии tun/tap)
2. прописать права к скриптам. (я ставил "chmod 777 /home/namenamename/Desktop/script-up.sh", что именно надо пока не вникал)
3. опен впн запускать с аргументом "--script-security 3 system" (наверное можно и с 2, но тоже пока не изучал подробно). у меня запуск выглядит так: "sudo -s openvpn --config vpn.conf --script-security 3 system" (уже в папке с конфигом)
осталось в файле /home/namenamename/Desktop/script-down.sh прописать что-то типа: "/sbin/route del -net 0.0.0.0 netmask 0.0.0.0" (перенаправляет все соединения в "пустоту", после перезапуска соединений все проходит).
осталось придумать что точно прописывать в "script-down.sh". и, потом, найти другой, более простой, способ сделать все как мне надо.