Почему необходимо правило iptables на Oracle CN для разрешения HTTP-трафика через порт 80, если правило отклонения не установлено, а политика по умолчанию установлена ​​на ACCEPT?

Почему необходимо правило iptables на Oracle CN для разрешения HTTP-трафика через порт 80, если правило отклонения не установлено, а политика по умолчанию установлена ​​на ACCEPT?

У меня есть Oracle Cloud Infrastructure Compute Node на бесплатном уровне, настроенный на Ubuntu 22.04 в качестве операционной системы. Я успешно установил Nginx и добавил входящее правило в подсеть, чтобы разрешить интернет-подключения на порту 80.

Однако я столкнулся с проблемой, когда я не могу получить доступ к серверу, введя публичный IP в браузере. После некоторых исследований я обнаружил, что мне нужно добавить правило(а) iptables, чтобы разрешить HTTP-трафик на порту 80. После добавления правила(ов) сервер становится доступным. Я нашел два способа сделать это:

Добавив это правило:

sudo iptables -I ВВОД 6 -m состояние --state НОВЫЙ -p tcp --dport 80 -j ПРИНЯТЬ sudo netfilter-persistent сохранить

Или добавив эти два правила:$

sudo iptables -I ВВОД -p tcp --dport 80 -m conntrack --ctstate НОВЫЙ, УСТАНОВЛЕННЫЙ -j ПРИНЯТЬ

$ sudo iptables -I ВЫВОД -p tcp --sport 80 -m conntrack --ctstate УСТАНОВЛЕНО -j ПРИНЯТЬ

Меня озадачивает тот факт, что я не могу получить доступ к серверу извне, не добавив правило(а), даже несмотря на то, что политика INPUT по умолчанию установлена ​​на ACCEPT, и я не смог найти ни одного правила отклонения, специально блокирующего порт 80.

Перед добавлением правила я использовал команду: sudo iptables -S и получил следующий результат:

-P ВХОД ПРИНЯТЬ

-P ПЕРЕСЛАТЬ ПРИНЯТЬ

-P ВЫХОД ПРИНЯТЬ

-N СлужбыЭкземпляров

-A ВХОД -m состояние --state СВЯЗАННЫЙ,УСТАНОВЛЕН -j ПРИНЯТЬ

-A ВХОД -p icmp -j ПРИНЯТЬ

-A ВХОД -i lo -j ПРИНЯТЬ

-A ВХОД -p udp -m udp --sport 123 -j ПРИНЯТЬ

-A ВХОД -p tcp -m state --state НОВЫЙ -m tcp --dport 22 -j ПРИНЯТЬ

-A ВХОД -j ОТКЛОНИТЬ --reject-with icmp-host-prohibited

-A ПЕРЕСЫЛКА -j ОТКЛОНИТЬ --reject-with icmp-host-prohibited

-A ВЫХОД -d 169.254.0.0/16 -j СлужбыЭкземпляров

-A InstanceServices -d 169.254.0.2/32 -p tcp -m owner --uid-owner 0 -m tcp --dport 3260 -m comment --comment "См. раздел Oracle-Provided Images в документации Oracle Cloud Infrastructure, чтобы узнать о влиянии изменения или удаления этого правила на безопасность" -j ACCEPT

-A InstanceServices -d 169.254.2.0/24 -p tcp -m owner --uid-owner 0 -m tcp --dport 3260 -m comment --comment "См. раздел Oracle-Provided Images в документации Oracle Cloud Infrastructure, чтобы узнать о влиянии изменения или удаления этого правила на безопасность" -j ACCEPT

-A InstanceServices -d 169.254.4.0/24 -p tcp -m owner --uid-owner 0 -m tcp --dport 3260 -m comment --comment "См. раздел Oracle-Provided Images в документации Oracle Cloud Infrastructure, чтобы узнать о влиянии изменения или удаления этого правила на безопасность" -j ACCEPT

-A InstanceServices -d 169.254.5.0/24 -p tcp -m owner --uid-owner 0 -m tcp --dport 3260 -m comment --comment "См. раздел Oracle-Provided Images в документации Oracle Cloud Infrastructure, чтобы узнать о влиянии изменения или удаления этого правила на безопасность" -j ACCEPT

-A InstanceServices -d 169.254.0.2/32 -p tcp -m tcp --dport 80 -m comment --comment "См. раздел Oracle-Provided Images в документации Oracle Cloud Infrastructure, чтобы узнать о влиянии изменения или удаления этого правила на безопасность" -j ACCEPT

-A InstanceServices -d 169.254.169.254/32 -p udp -m udp --dport 53 -m comment --comment "См. раздел Oracle-Provided Images в документации Oracle Cloud Infrastructure, чтобы узнать о влиянии изменения или удаления этого правила на безопасность" -j ACCEPT

-A InstanceServices -d 169.254.169.254/32 -p tcp -m tcp --dport 53 -m comment --comment "См. раздел Oracle-Provided Images в документации Oracle Cloud Infrastructure, чтобы узнать о влиянии изменения или удаления этого правила на безопасность" -j ACCEPT

-A InstanceServices -d 169.254.0.3/32 -p tcp -m owner --uid-owner 0 -m tcp --dport 80 -m comment --comment "См. раздел Oracle-Provided Images в документации Oracle Cloud Infrastructure, чтобы узнать о влиянии изменения или удаления этого правила на безопасность" -j ACCEPT

-A InstanceServices -d 169.254.0.4/32 -p tcp -m tcp --dport 80 -m comment --comment "См. раздел Oracle-Provided Images в документации Oracle Cloud Infrastructure, чтобы узнать о влиянии изменения или удаления этого правила на безопасность" -j ACCEPT

-A InstanceServices -d 169.254.169.254/32 -p tcp -m tcp --dport 80 -m comment --comment "См. раздел Oracle-Provided Images в документации Oracle Cloud Infrastructure, чтобы узнать о влиянии изменения или удаления этого правила на безопасность" -j ACCEPT

-A InstanceServices -d 169.254.169.254/32 -p udp -m udp --dport 67 -m comment --comment "См. раздел Oracle-Provided Images в документации Oracle Cloud Infrastructure, чтобы узнать о влиянии изменения или удаления этого правила на безопасность" -j ACCEPT

-A InstanceServices -d 169.254.169.254/32 -p udp -m udp --dport 69 -m comment --comment "См. раздел Oracle-Provided Images в документации Oracle Cloud Infrastructure, чтобы узнать о влиянии изменения или удаления этого правила на безопасность" -j ACCEPT

-A InstanceServices -d 169.254.169.254/32 -p udp -m udp --dport 123 -m comment --comment "См. раздел Oracle-Provided Images в документации Oracle Cloud Infrastructure, чтобы узнать о влиянии изменения или удаления этого правила на безопасность" -j ACCEPT

-A InstanceServices -d 169.254.0.0/16 -p tcp -m tcp -m comment --comment "См. раздел Oracle-Provided Images в документации Oracle Cloud Infrastructure, чтобы узнать о влиянии изменения или удаления этого правила на безопасность" -j REJECT --reject-with tcp-reset

-A InstanceServices -d 169.254.0.0/16 -p udp -m udp -m comment --comment "См. раздел Oracle-Provided Images в документации Oracle Cloud Infrastructure, чтобы узнать о влиянии изменения или удаления этого правила на безопасность" -j REJECT --reject-with icmp-port-unreachable

Политики по умолчанию для цепочек INPUT, FORWARD и OUTPUT установлены на ACCEPT. Единственное правило, которое указывает на порт 80 для определенного IP, также установлено на active.

Вопрос: Разве этого не должно быть достаточно для того, чтобы сервер был доступен? Что я упускаю?

Пожалуйста, объясните почему и как простым языком, так как я новичок. Спасибо большое!

Связанный контент