【问题标题】:How to configure port forwarding in gitlab?如何在gitlab中配置端口转发?
【发布时间】:2021-12-14 00:19:23
【问题描述】:

我已经配置了 gitlab,所以我只能从特定的 IP 地址连接到它。在 gitlab.rb 文件中,我以这种方式配置了 url:

external_url 'gitlab.example.pl:2000'

还配置了ufw:

[ 1] 2000   ALLOW IN    192.169.0.1/24

当我想通过浏览器访问 gitlab 时,我必须额外输入端口 2000,所以我想将端口转发到 443。我不能只对 ufw 中的特定 IP 地址访问端口 443,因为我配置了最重要的在同一台服务器中,并且必须从任何地方访问。我尝试使用 apache2 或 ngnix 进行端口转发,但 gitlab 侦听端口 80,因此 apache2 和 nginx 无法正常工作。我也尝试在文件 gitlab.rb 中找到解决方案

nginx['listen_port'] = 443
nginx['redirect_http_to_https_port'] = 80
nginx['redirect_http_to_https'] = false

请给我一个解决这个问题的方法。

【问题讨论】:

    标签: linux gitlab portforwarding mattermost


    【解决方案1】:

    您不必分别为 gitlab 和mattermost 配置侦听器。你的 mattermost 和 gitlab URL 都将指向相同的 IP 地址和端口,并且都应该路由到 NGINX。

    NGINX 将根据主机名标头将流量适当地路由到 gitlab 或最重要的。只需在同一 gitlab 安装中适当地为 gitlab 配置 external_url 和为最重要的 mattermost_external_url 即可。 gitlab 的 nginx 前面没有特别需要放 apache。

    external_url 'https://gitlab.example.com'
    mattermost_external_url 'https://mattermost.example.com'
    nginx['listen_port'] = 443
    nginx['listen_https'] = true
    

    只要您的防火墙允许端口 443 上的流量到 nginx,就可以了。如果您需要将其设为特定 IP 地址,请设置 nginx['listen_address']

    【讨论】:

    • 好的,但我希望mattermost 可以在任何地方访问,并且gitlab 只能从特定IP 访问
    猜你喜欢
    • 2020-11-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-10-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-01-08
    相关资源
    最近更新 更多