如何设置iptables从公共IP访问我的apache2服务器

用户1150482

我在 ubuntu 20.04 上安装了 Oracle Cloud 实例,并设置了 apache2 服务器。它在工作,curl localhost但在我的实例公共 IP 上不起作用。我的 ufw 状态:

Status: active

To                         Action      From
--                         ------      ----
22/tcp                     ALLOW       Anywhere
Apache                     ALLOW       Anywhere
80/tcp                     ALLOW       Anywhere
OpenSSH                    ALLOW       Anywhere
OpenSSH (v6)               ALLOW       Anywhere (v6)
22/tcp (v6)                ALLOW       Anywhere (v6)
Apache (v6)                ALLOW       Anywhere (v6)
80/tcp (v6)                ALLOW       Anywhere (v6)

如果我愿意,sudo ufw disable它仍然无法连接。

只有当我这样做时它才会连接:

iptables -P INPUT ACCEPT
iptables -P OUTPUT ACCEPT
iptables -P FORWARD ACCEPT
iptables -F

但我显然不想那样做。

如果我向 iptables 添加一些规则:

sudo iptables -A INPUT -p tcp --dport 80 -m conntrack --ctstate NEW,ESTABLISHED -j ACCEPT
sudo iptables -A OUTPUT -p tcp --sport 80 -m conntrack --ctstate ESTABLISHED -j ACCEPT
sudo netfilter-persistent save

它不会改变任何东西

编辑
sudo iptables -S OUTPUT

-P OUTPUT ACCEPT
-A OUTPUT -d 169.254.0.0/16 -j InstanceServices
-A OUTPUT -j ufw-before-logging-output
-A OUTPUT -j ufw-before-output
-A OUTPUT -j ufw-after-output
-A OUTPUT -j ufw-after-logging-output
-A OUTPUT -j ufw-reject-output
-A OUTPUT -j ufw-track-output
-A OUTPUT -p tcp -m tcp --dport 80 -m conntrack --ctstate ESTABLISHED -j ACCEPT
-A OUTPUT -p tcp -m tcp --dport 443 -m conntrack --ctstate ESTABLISHED -j ACCEPT
-A OUTPUT -p tcp -m tcp --sport 80 -m conntrack --ctstate ESTABLISHED -j ACCEPT
托尼

您似乎在使用原始 iptables 和 ufw(这是 iptables 的前端)之间进行混合和匹配

我认为首先要做的是删除所有 ufw 规则,并刷新 iptables。然后选择一个(原始 iptables 或前端)。然后就用那个。两者混合搭配会导致各种问题

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何从家庭网络外部访问我的SSH linux服务器

无法从公共IP连接到在EC2上运行的Rails服务器

如何授予Circle CI SSH访问我的服务器?

如何授予他人访问我的Linux服务器的权限

如何为一直尝试访问我的邮件服务器的人阻止IP?

如何从Office访问我的家庭Ubuntu服务器

如何在Apache2服务器上设置SSL CRT?

无法远程访问我的Xampp服务器

如何配置我的apache2网络服务器?

无法从外部局域网(Raspberry Pi)访问我的apache服务器

我应该如何在apache2 HTTP服务器上放置文件

无法登录,ping或访问我的CentOS apache服务器上的域

如何通过IP地址阻止客户端访问我的Web服务器上的某些URL?

公开我的Apache2服务器

流星:从服务器访问我的public / lib

无法访问我服务器中的网站

从公共IP访问Amazon EC2 Windows实例Web服务器

如何从公共服务器更新本地镜像?

无法从localhost外部访问Apache2服务器

无法从公共网络访问Ubuntu Web服务器

如何通过互联网访问我的Express Node.js服务器?

我有一台可以通过公共地址使用ssh的服务器,但是我无法访问它所托管的apache2 Web服务器

无法建立到我服务器的SSH连接,只能从公共IP建立(端口22:连接被拒绝)

设置从公共服务器到私有服务器EC2的SSH连接?

如何使用服务器域名从本地计算机访问我的 nodejs Web 服务器?

如何使用 Apache2 虚拟主机在服务器的裸 IP 上提供*无*服务?

有人试图在 ubuntu apache2 服务器(Laravel)上访问我的 index.php 文件

Ubuntu 服务器 apache2

如何通过公共网络访问我的本地服务器?