2

最近我设置了一个 Ubuntu 16.04 的 Amazon EC2 实例,该实例被授权扫描 IP 块。我安装的 GSA 版本是 7.0.3。目前,我可以通过 EC2 实例在本地访问 GSA,也可以使用我的公共 Amazon 弹性 IP 远程访问 GSA。

此外,我已允许从我的 IP 块对 GSA 的侦听端口进行外部访问。目前,我可以通过 HTTPS 使用我的实例静态公共 IP 毫无问题地访问 GSA。

我目前遇到的问题是使用 FQDN 访问 GSA。

例如,我希望能够使用https://gsa.mydomain.com 我的本地 DNS 服务器具有 FQDN 和我的 EC2 实例公共 IP 的 A 记录。

在我的实例上,我运行了以下命令。

sudo gsad --allow-header-host gsa.mydomain.com

但是,浏览到https://gsa.mydomain.com会产生以下错误。

“该请求包含未知或无效的主机标头。如果您尝试通过其主机名或代理访问 GSA,请确保将 GSA 设置为允许它。”

重新启动 GSA 服务或我的实例都没有效果。

显然,DNS 正在工作,但主机头命令却没有。

关于如何实现这一点的任何想法?

此外,作为参考,我使用了以下 URL

https://github.com/greenbone/gsa/pull/318

4

2 回答 2

4

在 ubuntu/debian 中编辑 /etc/default/openvas-gsa 文件并设置 ALLOW_HEADER_HOST= HOSTNAME 其中HOSTNAME是您在浏览器地址行中的主机名。

于 2018-10-15T14:54:25.300 回答
3

我正在使用Kali并且能够解决我修改systemd服务文件的问题。修改文件/lib/systemd/system/greenbone-security-assistant.service--allow-header-host gsa.mydomain.com在 ExecStart 行的末尾添加 。

例如,将行从:

ExecStart=/usr/sbin/gsad --foreground --listen=<internal IP> --port=<configured web server port> --mlisten=<internal IP> --mport=<configured management port>

至:

ExecStart=/usr/sbin/gsad --foreground --listen=<internal IP> --port=<configured web server port> --mlisten=<internal IP> --mport=<configured management port> --allow-header-host gsa.mydomain.com

然后运行:

systemctl daemon-reload
systemctl restart greenbone-security-assistant.service openvas-manager.service openvas-scanner.service
于 2018-09-11T13:01:52.940 回答