Маршрутизировать только трафик ssh через VPN

Возможно ли маршрутизировать службу SSH компьютера через VPN-соединение, но разрешить ли другим другим данным выйти через WAN-адрес? Какую манеру iptables нужно сделать для этого?

Данные SSH → проходят через VPN
ВСЕ другие данные → проходит по маршруту по умолчанию

  • Как сделать соединение openvpn доступным для всех хостов в той же подсети?
  • Как я могу использовать VPN для входящих соединений и прямую линию для исходящих соединений?
  • vpn связывается с дополнительным сервером
  • Использовать nmcli для чередования пароля VPN?
  • Создание туннеля от хоста до шлюза
  • Перечислите все DNS-серверы, в том числе VPN
  • отремонтировать статический маршрут, чтобы трафик был в нужном месте
  • Перенаправление трафика IPv6 на VPN-интерфейс
  • One Solution collect form web for “Маршрутизировать только трафик ssh через VPN”

    Мой ответ связан с ответом на связанный, но более сложный вопрос и не проверяется.

    Вам нужен пакет iproute2 .

    Добавить в /etc/iproute2/rt_tables строку

     200 vpn-route 

    а затем написать сценарий, который вы вызываете после инициализации VPN:

     # set default gateway of vpn-route ip route add default via $VPNGATEWAY dev $VPNINTERFACE table vpn-route # use this for marked packages ip rule add fwmark 0x1 table vpn-route # mark outgoing ssh packages iptables -t mangle -A OUTPUT -o $WANINTERFACE -p tcp --dport 22 -j MARK --set-mark 1 # rewrite source address iptables -t nat -A POSTROUTING -o $VPNINTERFACE -j MASQUERADE 

    Конечно, вам нужно заменить переменные $... их фактическими значениями.

    PS: Если ваш IP-адрес на WAN-интерфейсе исправлен, вы можете заменить последнюю строку на iptables -A POSTROUTING -t nat -o $WANINTERFACE -p tcp --dport 22 -j SNAT --to $WANIP

    Interesting Posts

    Как проверить входной параметр для запуска сценария оболочки

    Команда `ls` не отображает содержимое последней директории

    Идентификаторы исходных IP-адресов всех входящих пакетов

    Удалить строки со значением ниже (или выше) порога

    Как усечь второй столбец до заданной длины

    pure ftpd: как установить владельца на загруженные файлы

    Где я должен сохранять цветовые коды для командной строки PS1 / терминала?

    Понимание нескольких сетевых интерфейсов и маршрутизации с использованием OpenWRT

    Могу ли я сопоставить внутренний IP-адрес с доменным именем, когда в конкретной сети?

    как: Пожалуйста, sudo, do _not_ настроить любую среду, особенно $ SUDO_USER?

    Как перенести файлы с полного раздела на один с большим количеством комнат?

    Как добавить ярлыки в PDF?

    Изменить порядок сортировки с помощью ярлыков в Midnight Commander?

    Преобразовать массив в аргументы команды?

    Как проверить контрольные суммы в режиме on-line в brtfs?

    Linux и Unix - лучшая ОС в мире.