Apache에서 사용 중인 IP 및 PORT 찾기

Apache에서 사용 중인 IP 및 PORT 찾기

어떤 IP:PORT Apache 웹 서버가 모니터링하고 있는지 어떻게 알 수 있나요? 일부 네트워크 명령이 있지만 사용 중인 TCP 포트를 표시합니다. 머신에는 여러 네트워크 인터페이스가 있으며 Listen섹션이 httpd.conf주석 처리되어 있습니다. 그래서 그 중 하나가 기본적으로 사용되는데 어느 것이 기본값으로 설정되어 있는지 모르겠습니다.

예를 들어 다음 명령은 포트 번호만 표시합니다.

root@cluster:~# netstat -pat | grep httpd
tcp        0      0 *:ulistproc     *:*      LISTEN      3940/httpd
tcp        0      0 *:https         *:*      LISTEN      3940/httpd

또한 올바른 포트 번호는 3940이 아닌 80이어야 한다고 예상합니다!

그걸 찾을 생각은 없나요?

답변1

마지막 열은 포트가 아닌 프로세스(프로세스 번호/프로세스 이름)입니다. 포트는 네 번째 열에 있으며, 귀하의 경우 ulistproc 및 https가 열려 있는 두 개의 포트가 표시됩니다. 두 포트 모두 주소 "*"에서 열려 있습니다. 이는 컴퓨터의 모든 주소를 의미합니다(대부분의 데몬에 대한 일반적인 기본값이며 이를 제한하는 구성이 있습니다). 실제 포트 번호를 원하면 "netstat -pant"를 사용하여 기호 변환을 수행하지 않도록 하세요.

답변2

루트로서 다음을 입력하십시오.

netstat -pat | grep httpd

(또는 grep apache배포판에 따라)

답변3

nmap localhost

cat httpd.conf | grep port

답변4

lsofnetstat를 사용하는 것 외에도 열린 파일(스트림, 소켓, 블록 파일 등)을 나열하는 데 사용할 수도 있습니다 .

root@host: lsof -i -n -P |grep httpd
COMMAND  PID  USER   FD   TYPE DEVICE  SIZE/OFF   NODE  NAME
httpd    4291 root   3u   IPv4 124715  0t0        TCP   *:80 (LISTEN)

lsof (8) - 열린 파일 목록

-i = IPv4/6 파일 표시
-n = 호스트 이름을 확인하지 않음(예: IP 표시)
-P 친숙한 이름 대신 포트 번호(예: HTTP 대신 80)를 표시합니다.

관련 정보