我有一台运行 Tomcat 8.5.39 的 Ubuntu 18.04.3 服务器。由于此版本易受“GhostCat”攻击,因此我想更新到最新版本的 Tomcat 8(8.5.57)。
但是,最新版本似乎不在 apt 存储库中。运行apt-get upgrade tomcat8
告诉我tomcat8 is already the newest version (8.5.39-1ubuntu1~18.04.3)
。有办法解决这个问题吗?
答案1
这tomcat8
包裹仿生的8.5.39-1ubuntu1~18.04.3
( 18.04LTS )目前焦点(20.04LTS)已经tomcat9
。您已经位于适合您发行的最新版本!
您可以从其他版本的 Ubuntu 安装软件包,但这可能会破坏某些依赖关系:这会使您的系统维护更加困难,或者在最坏的情况下使其变得毫无用处。您也可以编译自己的软件包,但在这种情况下,您会失去所有自动安全更新:要么您的系统变得脆弱,要么您需要一遍又一遍地编译 Tomcat。
对于每个需要问这个问题的人来说,弄乱存储库是极其危险的,绝不建议这样做。如果您出于兼容性原因或提供的新功能而确实需要较新的版本,那么您应该升级整个发行版。
对于安全更新,你应该等待它在发行版中修复。这在不要破坏Debian:不要患上闪亮新事物综合症,并且同样适用于 Ubuntu:
在尝试从 Debian Stable 存储库以外的其他地方安装某些软件的最新版本之前,请注意以下几点:
Debian 反向移植了安全修复和新功能,通过比较 Debian 软件包的版本号和上游版本号来判断软件并没有考虑到这一点。
您尝试使用的软件的最新版本可能也存在新的错误。
Debian 安全团队不负责从官方 Debian 存储库以外的地方安装软件。
然而,升级软件包是一个XY问题,而你不应该升级,而应该......
解决鬼猫(CVE-2020-1938)
这鬼猫是与默认配置而非代码相关的漏洞。从CVE-2020-1938:
Tomcat 将 AJP 连接视为比类似的 HTTP 连接具有更高的信任度。如果攻击者可以利用此类连接,则可能会以令人惊讶的方式利用它们。在 Apache Tomcat 9.0.0.M1 到 9.0.0.30、8.5.0 到 8.5.50 和 7.0.0 到 7.0.99 中,Tomcat 默认启用了 AJP 连接器,该连接器监听所有配置的 IP 地址。如果不需要,预计(并在安全指南中建议)将禁用此连接器。
导致漏洞的 AJP 连接器在 Ubuntu 中默认被禁用(评论 #1对于错误#1865904)。如果您已启用 AJP 连接器,则禁用该连接器或限制对它的访问应该可以解决问题。
答案2
你可以在你的 repo 列表中添加 Tomcat 自己的 repo(如果有的话)
或者您可以从 Apache Tomcat 网页安装 Tomcat 二进制文件(或从源代码):此处 ---->>>https://tomcat.apache.org/download-80.cgi
我注意到这里有一个自述文件 ---->>>http://apache.forsale.plus/tomcat/tomcat-8/v8.5.57/README.html
此外,也许您的发行版需要更新或升级才能包含最新的 Tomcat 版本,也许 Ubuntu 18.04.3 不包含最新的软件包并且不会……
抱歉,我不是 Ubuntu 专家。