景观警报 - 有问题的脚本:update_security_db.sh

景观警报 - 有问题的脚本:update_security_db.sh

我正在运行安装了 Landscape On-Premises 16.06 的 Ubuntu Server 16.04.1,并且连接了 3 台计算机。几天以来,更新安全脚本不再运行,其他一切都按预期运行。为了确保我的设置没有问题,我从头开始执行了新安装。问题仍然存在,我收到永久警报,提示脚本update_security_db.sh未运行 - 实际上,自全新安装以来它从未运行过。

在此处输入图片描述

这是我从中获得的错误信息/var/log/landscape-server/update-security-db.log

Sep  1 19:15:08 update-security-db ERR  Unhandled error in Deferred:
Sep  1 19:15:08 update-security-db ERR
Sep  1 19:15:08 update-security-db ERR
Sep  1 19:15:08 update-security-db ERR  Traceback (most recent call last):
Sep  1 19:15:08 update-security-db ERR  Failure: txamqp.client.Closed: [Failure instance: Traceback (failure with no frames): <class 'twisted.internet.error.ConnectionLost'>: Connection to the other side was los$
Sep  1 19:15:08 update-security-db ERR  ]

尝试update_security_db.sh以景观用户身份手动运行脚本失败的
sudo -u landscape bash -x /opt/canonical/landscape/scripts/update_security_db.sh

所有连接的计算机(1 台服务器和 2 台工作站)都安装了最新的可用更新。根本原因是什么?要做什么才能使其再次正常运行?

答案1

该脚本在 中有自己的日志文件/var/log/landscape-server。它使用 curl(1) 从 Ubuntu 服务器下载文件并在本地解析。我怀疑你可能有一个代理,并且正在https://bugs.launchpad.net/landscape/+bug/1523950(横向 cron 作业没有获得代理设置)。

日志会告诉你发生了什么。

答案2

虽然这已经过时了,但仍然具有现实意义,我有一个更新的解决方案。如果您更改了运行 Landscape 的主机名,则必须重新配置 RabbitMQ,无论大小写。

获取已配置的 RabbitMQ 景观用户的密码

sudo less /opt/canonical/landscape/configs/standalone/service.conf

在 [broker] 部分下,密码是 base64 编码的,因此复制 b64: 后面的所有内容,然后对其进行解码

echo the_base64_string | base64 -d

返回的输出是实际密码。现在获取该值并创建 RabbitMQ 景观用户,

sudo rabbitmqctl add_user landscape the_password_above

创建虚拟主机,设置景观用户权限并重新启动

sudo rabbitmqctl add_vhost landscape
sudo rabbitmqctl set_permissions -p landscape landscape ".*" ".*" ".*"
sudo service rabbitmq-server restart

主机名更改后,一切都应该可以正常工作。

答案3

我终于自己搞清楚了……一切都与原始服务器主机名有关。我在解决问题时发现:如何在 Landscape On-Premises 中正确使用 Landscape APIlandscape-server,在主机名包含大写字母的服务器上使用会导致landscape-api无法使用的问题。在恢复 clonezilla 基本服务器映像并使用全部小写字母重命名主机后,我认为现在一切都应该正常工作了……

我完全错了 - 旧主机名一定被缓存在某个地方,尽管我编辑了和文件/etc/hostnameetc/hosts然后重新启动了服务器系统。然后我决定从 Ubuntu Server 16.04 USB 介质执行全新安装。现在一切都按预期运行 - 脚本update_security_db.sh错误消失了。吸取教训!使用 Landscape 时切勿使用大写字母并更改主机名。

相关内容