Unix:在檔案系統上尋找服務設定檔

Unix:在檔案系統上尋找服務設定檔

我有一個 Solaris 10 機器,與 Linux 發行版相比,它安裝的工具和命令有限。此外,可以使用的工具(例如 grep 和 netstat)也沒有相同的選項和標誌。

我想調查一些在連接埠上運行的服務。舉個例子,SSH 伺服器在不是 22 的連接埠上運行。但是,當我搜尋整個檔案系統時sshd.conf- 我只能找到連接埠 22 上預設 SSH 伺服器的配置。

誰能給我一些關於如何找到這個獨特服務的個人資料的提示。我已經嘗試過 `find / -name "sshd.conf" 和其他可能的變體,但沒有成功。

我想嘗試的下一個方法是使用netstat和等工具svcs。我可以看出該服務正在與nmap -p 5555 [ip]和 一起運行ssh [ip] -p 5555。我還可以看到該服務正在監聽netstat -an | grep "5555".但是,我無法將其與 中列出的服務相匹配svcs -a。如果我能夠將它與服務相匹配svcs -a,然後使用svcs -x [FMRI](了解更多詳細資訊) - 它不會為我提供從中讀取參數的設定檔 - 僅提供日誌檔案。

TL;DR:如果我知道 FMRI 或無法將服務對應到 FMRI,我如何找到服務的設定檔。也許更簡單,我如何使用 netstat 的輸出並確定設備上正在偵聽的實際服務是什麼?我想這會經常被要求進行安全審計等。

答案1

在這種情況下你可以man sshd

那會告訴你:

 -f configuration_file

     Specifies  the  name  of  the  configuration  file.  The
     default  is  /etc/ssh/sshd_config. sshd refuses to start
     if there is no configuration file.

如果您查看,/etc/ssh/sshd_config您會看到配置。

您還可以man sshd_config查看還有哪些其他選項可用。

一般來說,服務的 XML 來源位於/var/svc/manifest.其一ssh/var/svc/manifest/network/ssh.xml。您可以使用 查看目前設定svccfg export ssh

相關內容