Что такое правило NFT, позволяющее SSH туннелю работать? - PullRequest
0 голосов
/ 29 апреля 2019

Я могу установить SSH соединение с правилами «Все IP совпадают» в nft:

table ip filter {
    chain INPUT {
            type filter hook input priority 0; policy drop;
            iifname "eth0" ip saddr { 0.0.0.0-255.255.255.255 } accept
    }

    chain FORWARD {
            type filter hook forward priority 0; policy accept;
    }

    chain OUTPUT {
            type filter hook output priority 0; policy accept;
    }
}

Туннель SSH работает без вышеуказанного набора правил, но не работает, когда представлен набор правил nft:

putty

Вопрос: Каково минимальное правило, чтобы туннель SSH работал при сохранении политики ввода «drop»?

1 Ответ

0 голосов
/ 30 апреля 2019

Политика по умолчанию "drop" применяется ко всему интерфейсу.В то время как пользовательские правила относятся к "eth0" конкретно.В результате любой трафик, использующий интерфейс обратной связи, такой как туннель SSH, будет заблокирован политикой по умолчанию.

Чтобы ответить на вопрос, удалите интерфейс eth0:

...
chain INPUT {
        type filter hook input priority 0; policy drop;
        ip saddr { 0.0.0.0-255.255.255.255 } accept
}
...

Или добавьте интерфейс обратной связи:

...
chain INPUT {
        type filter hook input priority 0; policy drop;
        iifname { "lo", "eth0" } ip saddr { 0.0.0.0-255.255.255.255 } accept
}
...
...