
我有一個 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
。