您認為 Linux 伺服器上的 Java 是一個問題嗎?

您認為 Linux 伺服器上的 Java 是一個問題嗎?

如果您想在 Linux(或其他 Unix)上使用實用程式伺服器盒子,而且它需要 Java,並且您的伺服器上沒有其他應用程式需要 Java,您會因為必須安裝它而感到厭煩嗎?

也就是說,您是否會看到這種依賴關係並認為“臃腫、安全隱患、我必須維護的另一個系統”,或者在這一點上 Java 如此安全且無處不在,根本沒有任何麻煩?

答案1

取決於很多事情。

  1. 有什麼用處?它有多重要?
  2. 為什麼猶豫是否安裝 Java?
  3. 機器的安全設定檔是什麼?
  4. Sun Java 還是您的 Linux 發行版中的 Java(自動更新)?

這基本上是成本和收益之間的權衡。與所有應用程式一樣,Java 也存在安全缺陷。 Sun 不時更新他們的 JVM,提供 Java 的 Linux 供應商也做同樣的事情。您打算如何向這台機器推送更新?它有多重要?如果機器有適當的防火牆並且運行有限的網路守護進程,Java 作為磁碟上的解釋器可能不會有太大的危險。 Java 通常不會以 root 身分運行。

幾乎所有關於 Java 的爭論都可以針對 Perl、Mono、GCC 或任何可以運行任意程式碼的軟體。此外,大多數 Linux 軟體通常由發行版提供,因此您通常可以依靠發行版的更新來確保安全。在這種情況下,Sun Java 將與任何第三方軟體相同。如果這個第三方實用程式需要一個剛好是 Java 的函式庫,這有什麼關係嗎?也許不會。

如果您談論的是 Java 運行服務應用程式(例如 Tomcat 或 JBoss),那麼情況會略有不同,然後 Java 會監聽網路。在這種情況下,安全風險會更高。但對於任何面向網路的應用程式(例如 apache 或 ssh),您都面臨著相同的安全風險。

答案2

我發現我的 Linux 伺服器上沒有應用程式需要 java 的情況非常罕見,而且我對需要 java 的東西沒有太大問題。它的使用如此廣泛,我希望在某個時候我會需要它。這可能是因為我擁有的大多數Linux伺服器都是用於ERP系統的。

不過,我確實遇到了不同應用程式需要不同版本的 JVM 或非常特定版本的 JVM 的問題。

答案3

這是一個最小的風險。任何軟體都包含一些風險,因此說完全不擔心是不正確的,但與其他任何軟體相比,我對 Java 不再有特別的擔憂。但在 Java 的早期,情況有所不同。

答案4

我將 Java 與 Python、Perl、Ruby、PHP、Mono 或任何需要運行時的東西歸為同一類別。只要它不需要我去找一些與打包版本衝突的自訂類別、插件或模組,我安裝它就沒有問題。

也就是說,身為Java 應用程式的系統管理員往往會有點耗時,因為系統管理員寧願直接看到錯誤,而不是閱讀3 頁的「堆疊中…」錯誤來尋找「空字串」之類別的錯誤。

相關內容