Услуга слуша на 127.0.0.1:1080. Правило за DNAT насочва входящия трафик към този адрес, но връзката се проваля. Услугата може да е здрава и правилото за NAT да съвпада: loopback адресите в IPv4 получават специална обработка при маршрутизиране.

route_localnet в Linux определя дали адресите 127/8 се третират като марсиански по време на маршрутизиране. Стойността по подразбиране запазва обичайната loopback граница. Изключение за конкретен интерфейс може да е уместно при умишлен дизайн за локално пренасочване.

Това обяснява защо работещо правило от друга машина може да зависи от sysctl, който не сте копирали. Но не оправдава включването на опцията навсякъде.

Приемането за сигурност се променя с маршрута

Свързването с loopback често се използва, защото помощен компонент няма самостоятелна автентикация на клиентите. Ако трафик от друг интерфейс може да бъде насочен към него, адресът на свързване сам по себе си вече не описва достижимата аудитория. Ограничете източниците на вход, дестинацията и порта в действителния набор от правила, включително трафика, който твърди loopback адреси за източник или дестинация, когато това е приложимо.

Прегледайте мрежовото пространство от имена, което съдържа услугата. Loopback на контейнера не е loopback на хоста и промяната на настройка на интерфейса на хоста не създава автоматично слушател в контейнера.

rp_filter отговаря на друг въпрос относно проверката на пътя на източника. Изключването му глобално не е общ заместител на разбирането на loopback маршрутизирането. По същия начин ip_nonlocal_bind се отнася до свързване на сокети към нелокални адреси, а не до това този DNAT път да стане правилен.

Накрая, пренасочваният протокол трябва да пасва на слушателя. Изпращането на суров HTTP или TLS трафик към SOCKS порт все още изисква преводач; изключение в маршрутизирането не може да осигури липсващото договаряне.

Подобни статии