【问题标题】:LXD / Container / Apache2 / Iptables - Unable to load external sources in websiteLXD / Container / Apache2 / Iptables - 无法在网站中加载外部源
【发布时间】:2020-03-10 10:04:14
【问题描述】:

我有一个带有 LXD 的容器设置,运行多个 wordpress 网页 (apache2) 一切正常。

我通过以下方式添加了端口转发:

lxc config device add CONTAINER lxd_proxy_port80 proxy listen=tcp:0.0.0.0:80 connect=tcp:INTERNALIP:80

…443 端口也一样。一切正常。

很遗憾,我在 apache2 日志 (var/log/apache2/access.log) 中看不到原始 IP,但只能看到本地 IP。 通过使用 iptables,我想改变这一点。我做到了:

iptables -A FORWARD -p tcp -d LOCALIP --dport 443 -j ACCEPT
iptables -A FORWARD -p tcp -d LOCALIP --dport 80 -j ACCEPT

并删除我的代理设备

lxc config device remove CONTAINER lxd_proxy_port80
lxc config device remove CONTAINER lxd_proxy_port443

我实际上可以正确访问我服务器上的文件,并且现在我还在 apache2 访问日志中看到了我的外部 IP。

但是,wordpress 不再访问更新服务器(外部),并且似乎无法访问外部世界,并且我的一个 wordpress 页面无法再访问 index.php 文件(它挂起加载)。我想后一种效果是由于一些外部内容没有正确加载造成的。

你能帮我理解发生了什么吗?

【问题讨论】:

    标签: apache containers iptables lxc lxd


    【解决方案1】:

    这段对话回答了以下问题: https://discuss.linuxcontainers.org/t/iptables-apache-in-lxd-container/6143 一个很好的视频: https://www.youtube.com/watch?v=1p-fbS_OYTg

    我的解决方案最终通过在 iptables 规则中添加 -d MYIP/32 使其仅适用于传入流量。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-07-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多