как исключить трафик FTP, чтобы не направ канавка vpn?

Я использую openvpn и администратора сети для соединения с ghostvpn, и все прекрасно, но я хочу исключить весь трафик FTP из соединения VPN, потому что мне нужно больше скорости для/загружает. До настоящего времени я должен разъединиться с vpn сервера в течение времени, когда я делаю мой и загрузки - это не прохладное решение ;)

Как я могу сделать это? Или возможно в filezilla существует опция?

Заранее спасибо!

Sebastian

0
задан 27 April 2017 в 08:09

1 ответ

Вы можете направить ftp напрямую в Интернет с помощью iptables

Здесь мы возьмем ftp для маршрутизации. Используйте таблицу mangle из iptables для модификации пакетов ftp.

sudo iptables -t mangle -A OUTPUT -p tcp --dport 21 -j MARK --set-mark 0x1

Мы помечаем все пакеты с портом назначения 21 как 0x1.

Теперь сохраните и перезапустите iptables.

sudo service iptables save
sudo service iptables restart

Затем создайте новую таблицу маршрутов IP в /etc/iproute2/rt_tables, просто введя запись

100 ftptable

Правило записи для ftp пакетов.

ip rule add fwmark 0x1 lookup ftptable

Добавить маршрут в новую таблицу ftptable. Весь остальной трафик будет проходить через vpn, если vpn установлен как шлюз по умолчанию, что можно увидеть командой ip route show.

Делайте это впервые, когда вы подключены к vpn.

Мы копируем все записи, кроме записи шлюза по умолчанию из основной таблицы.

sudo ip route show table main | grep -Ev ^default | while read ROUTE ; do ip route add table ftptable $ROUTE; done

Добавить запись шлюза по умолчанию для пакетов ftp в таблицу ftptable

sudo ip route add default dev <your_interface> table ftptable

your_interfrace в команде - это обычный интерфейс Wi-Fi или eth для доступа в Интернет, когда вы не подключены к интернет.

Используйте ip route show table ftptable, чтобы показать все маршруты в ftptable.

РЕДАКТ. 1

Второй способ

Отредактируйте /etc/iproute2/rt_tables и добавьте новую таблицу, добавив следующую строку:

100 ftptable

Настройте новую таблицу маршрутизации с именем [ 1129] со шлюзом по умолчанию и создайте правила для условной отправки трафика в эту таблицу.

ip route add default via <usual_gw_ip> dev <your_int> table ftptable
ip rule add fwmark 0x1 table ftptable

Ваш последний аннотированный скрипт будет выглядеть следующим образом:

# Populate secondary routing table
ip route add default via <usual_gw_ip> dev <your_int> table ftptable
# Anything with this fwmark will use the secondary routing table
ip rule add fwmark 0x1 table ftptable
# Mark these packets so that iproute can route it through ftptable
iptables -A OUTPUT -t mangle -o <your_int> -p tcp --dport 21 -j MARK --set-mark 1
# now rewrite the src-addr
iptables -A POSTROUTING -t nat -o <your_int> -p tcp --dport 21 -j SNAT --to <your_local_ip>

Try.

РЕДАКТИРОВАТЬ 2

Когда вы подключены к vpn, я думаю, что весь трафик проходит через них. В вашей таблице маршрутизации вы увидите интерфейс gw to tun0 по умолчанию. Просто добавьте маршрут для маршрутизации трафика на FTP-сервер в другой интерфейс / IP

ip route add <your_ftp_server_ip/32> dev <your_exit_int>

<your_exit_int> - represent not tun interface example: eth0, ens160, ...
1
ответ дан 3 November 2019 в 08:59

Другие вопросы по тегам:

Похожие вопросы: