Это в порядке для копирования/etc/sysconfig/iptables в другую машину?

Получается, что вы можете поместить туннельный интерфейс в сетевое пространство имен. Вся моя проблема сводилась к ошибке при поднятии интерфейса:

ip addr add dev $tun_tundv \
    local $ifconfig_local/$ifconfig_cidr \
    broadcast $ifconfig_broadcast \
    scope link

Проблема в "scope link", которую я неправильно понял, как влияющую только на маршрутизацию. Это приводит к тому, что ядро устанавливает исходный адрес всех пакетов, посылаемых в туннель, на 0.0.0.0; предположительно, сервер OpenVPN отбросит их как недействительные согласно RFC1122; даже если бы этого не произошло, получатель явно не смог бы ответить.

Все работало корректно при отсутствии сетевых пространств имён, потому что встроенный в openvpn скрипт сетевой конфигурации не допустил этой ошибки. И без "scope link", мой оригинальный скрипт тоже работает.

(Как я это обнаружил, спрашиваете? Запустив strace в процессе openvpn, установите hexdump всего, что он читает из туннельного дескриптора, а затем вручную декодируйте заголовки пакетов.)

.
1
15.07.2014, 14:26
1 ответ
[

]В основном да, это iptable файл по умолчанию для чистой установки, но я рекомендую использовать более современные 2 правила, и добавить некоторые журналы к вашим правилам.[

] [

]Смотрите этот шаблон, например: []https://gist.github.com/jirutka/3742890[][

]
2
27.01.2020, 23:38

Теги

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