
Linux 배포판에 비해 제한된 도구와 명령이 설치된 Solaris 10 상자가 있습니다. 또한 grep, netstat 등 사용할 수 있는 도구에도 동일한 옵션과 플래그가 없습니다.
조사하고 싶은 포트에서 실행 중인 일부 서비스가 있습니다. 예를 들어, 22가 아닌 포트에서 실행되는 SSH 서버입니다. 변경 사항을 수정하기 위해(약한 암호 비활성화 등) 구성 파일을 찾을 수 있기를 원합니다. 그러나 전체 파일 시스템을 검색하면 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]
(자세한 내용을 위해) 사용할 수 있다면 매개변수를 읽는 구성 파일은 제공되지 않고 로그 파일만 제공됩니다.
따라서 요약: 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
.