Я укрепляю свой VPS-сервер и недавно увидел, что все политики открыты (ПРИНИМАТЬ) в Nat Table. Я искал в интернете и ничего не нашел о защите nat table. Это дыра в безопасности или нет? Вот ВЫВОД:
Chain PREROUTING (policy ACCEPT 21038 packets, 1097K bytes)
pkts bytes target prot opt in out source destination
Chain INPUT (policy ACCEPT 9 packets, 1088 bytes)
pkts bytes target prot opt in out source destination
Chain OUTPUT (policy ACCEPT 187 packets, 14396 bytes)
pkts bytes target prot opt in out source destination
Chain POSTROUTING (policy ACCEPT 48 packets, 3767 bytes)
pkts bytes target prot opt in out source destination
523 140K MASQUERADE all -- * eth0 0.0.0.0/0 0.0.0.0/0
За каждую помощь я благодарен
с наилучшими пожеланиями черная борода
решение1
Нет, это совершенно нормально использовать политику ACCEPT длянаттаблица. Использование политики DROP было бы аномалией.
Пакет проходит по различным цепочкам в различных таблицах, следуя этой схеме:
Принятие просто означает, что пакет получает еще один шанс быть принятым или отброшенным в следующем раунде (т. е.: следующая цепочка и ее правила для получения этого пакета). Отбрасывание имеет мгновенный эффект: пакет исчезает, и никакие другие правила для этого пакета не обрабатываются. Таким образом, по мере того, как пакет проходит через различные цепочки в различных таблицах, есть много мест, где он может быть отброшен. Один DROP в любом месте удалит пакет. Дополнительный ACCEPT (например: если NAT никогда не используется, нетнаттаблица создана) не изменит этот результат.
Какнаттаблица предназначена для NAT, а не для фильтрации трафика (для этого есть специальная таблица:фильтр), нет никаких причин, чтобы NAT когда-либо сбрасывал трафик. Технически это все еще возможно сделать, но в любом случае вы также должны учитывать, что NAT не обрабатывается как другие таблицы, потому что это действительно частьconntrack: только первый пакет каждого нового потока виден вiptables'наттаблица, чтобы установить правила NAT для потока. Другие не будут, их обработка выполняется напрямуюconntrackкоторый следует правилам NAT (включенным в соответствующийconntrackтаблица, с которой можно ознакомитьсяconntrack
команда).
Короче говоря, вы никогда не должны КОПИТЬ внаттаблица: вы должны ACCEPT или RETURN, чтобы создать исключения из следующих правил, фактически выполняющих NAT (таким образом, оставляя пакет нетронутым, чтобы он продолжился в следующем раунде), или использовать различные доступные цели NAT (например: DNAT, REDIRECT, SNAT, MASQUERADE ...), чтобы установить правила NAT для этого потока (что также заставит пакет продолжиться в следующем раунде). Оставьте политику DROP по умолчанию для цепочек вфильтрТаблица.увечьеtable также может использоваться для сброса трафика, но обычно он не настроен с политикой DROP по умолчанию для своих цепочек. Что касается малоизвестногобезопасностьстол, я не знаю, он редко используется, поэтому и существует редко.