iT邦幫忙

1

Linux 主機套件資訊收集

  • 分享至 

  • xImage

資深菜鳥工程師來找尋解決方案。

目前管理上百台 Linux 主機 Redhat 家族的,雖說是管理,但是幾乎都是基底安裝更新好交出去後就只有在有問題時才會登入檢查,因為常常收到弱點修補通報,但又不知道每台主機上分別安裝了什麼套件,只能憑各系統廠商的主動回應才會知道該主機需要修補弱點。

有沒有什麼工具可以去收集各主機上安裝的某些特定套件資訊,比如 Apache 、Tomcat 、Java 等的,以方便通知相對應的系統廠商,並確認是否已確實更新到建議的版本?

謝謝!

目前工作單位有使用一套叫做「神網」的工具,其中的一個功能就是可以透過 Agent 去收集機器上有安裝那些軟體並回報給神網主機,於是在該主機上就能很清楚的知道某個軟體的版本是否是最新。

目前想到的做法:

  1. 寫支小 script 丟在每台主機上,用 cron 去定時收集特定軟體的版本並寫進一個檔案中。(這個算簡單)
  2. 將該檔案回傳至收集主機。(這個還想不出好辦法,rsync 或 scp 都會面臨輸密碼的問題,暫時不想用 key 的方式。)
  3. 寫一支小程式,把收集到的資訊輸出成一個 html 檔案。(暫時不想用 PHP ,打算用 Python)
  4. 網頁顯示所以收集主機這些特定軟體的安裝情況及版本。

不知道是否有更好的建議或者是工具?

圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中
0
Ray
iT邦大神 1 級 ‧ 2023-12-14 22:01:12

RedHat家族用:

yum list --installed

不就看到全部安裝的套件了?

canchang iT邦新手 3 級 ‧ 2023-12-14 22:37:23 檢舉

不好意思!沒說清楚,主要是收集各主機的一些特定套件,並顯示版本,這樣若是系統廠商有遺漏,也可以較及時得知。
類似神網,可以收集各端點所安裝的軟體及版本。

2
Ivan Cheng
iT邦新手 2 級 ‧ 2023-12-15 08:59:58

您可以考慮使用 OCS Inventory 來進行資訊資產盤點

如何在 Ubuntu 20.04 安裝 OCS Inventory 資產管理系統
https://ithelp.ithome.com.tw/articles/10314431

如何在 UNIX-Like 安裝 OCS Inventory 代理程式
https://ithelp.ithome.com.tw/articles/10326529

相容哪些 UNIX-Like 版本可參考下連結的 Compatibility
https://wiki.ocsinventory-ng.org/03.Basic-documentation/Setting-up-the-UNIX-agent-manually-on-client-computers/

如何在 OCS Inventory 使用 CVE 報告
https://ithelp.ithome.com.tw/articles/10316780

官方參考
https://wiki.ocsinventory-ng.org/

canchang iT邦新手 3 級 ‧ 2023-12-15 09:06:50 檢舉

感謝!
來研究看看。

0
DennisLu
iT邦研究生 1 級 ‧ 2023-12-15 11:59:28
  1. 寫支小 script 丟在每台主機上,用 cron 去定時收集特定軟體的版本並寫進一個檔案中。(這個算簡單)
  2. 將該檔案回傳至收集主機。(這個還想不出好辦法,rsync 或 scp 都會面臨輸密碼的問題,暫時不想用 key 的方式。)
  3. 寫一支小程式,把收集到的資訊輸出成一個 html 檔案。(暫時不想用 PHP ,打算用 Python)
    網頁顯示所以收集主機這些特定軟體的安裝情況及版本。

1跟3 看起來你會寫script 程式 跟排程設定,如果會一點點網頁跟資料庫那就好辦了...

寫一隻簡單程式,用cron定期執行,
這支程式,將收集好的資料直接寫到事先準備好的DB進去。
然後寫一個網頁去撈DB的資料出來就好了。
DB的格式設計好,一個網頁就可以切換不同主機的狀況,甚至設計一個全域分析表出來。
也可以另外寫程式定期去撈需要通知的條件,如果有就 mail line telgram通知之類的。

寫DB那段,如果不要直接用程式直接進資料庫寫資料,也可以多做一個web service做RESTful API的方式,將資料來打進資料庫內,但又多一道事情要做,如果能力可及,也是可以做。

看更多先前的回應...收起先前的回應...
canchang iT邦新手 3 級 ‧ 2023-12-21 09:02:26 檢舉

那個..........
我是會寫很簡單的 script ,網頁部份就不行了,把這堆資枓輸出成一個 HTML 應該還可以。
目前卡在各主機收集到資料後,怎麼集中到那台收集資料的主機上,以最小的變動方式。

DennisLu iT邦研究生 1 級 ‧ 2023-12-21 21:50:49 檢舉

那你可能找一個產品有匯入資料的方式,
然後把你收集資料的結果改寫成輸出變成該產品可以直接匯入的格式,
然後就很方便匯入了。

canchang iT邦新手 3 級 ‧ 2023-12-22 11:28:06 檢舉

現在在想辦法用 sftp 然後可以自動輸入密碼的方式,若是這一止解決了,那麼再來去想怎麼把這些資料去生成一個簡單的 HTML。
謝謝!

DennisLu iT邦研究生 1 級 ‧ 2023-12-22 11:57:21 檢舉

sftp 可以考慮改用金鑰認證的方式,然後搭配支援script sftp上傳檔案與執行指令來跑,讓事情更自動化。

0
alijen
iT邦見習生 ‧ 2023-12-20 17:25:02

1跟3 看起來你會寫script 程式 跟排程設定,如果會一點點網頁跟資料庫那就好辦了...
color blind test

我要發表回答

立即登入回答