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

相关内容