서비스 실행 시 어떤 포트가 열려 있는지 어떻게 확인하나요?

서비스 실행 시 어떤 포트가 열려 있는지 어떻게 확인하나요?

sudo service service_name start을 사용하여 서비스를 시작했고 서비스에서 열린 모든 포트를 알고 싶다고 가정해 보겠습니다 . 포트-프로그램 매핑을 알 수 있지만 sudo netstat -tulnp특정 서비스를 알아야 합니다.

답변1

이를 위해 나는 일반적으로 lsof사용 중인 포트를 표시하는 옵션을 사용합니다.

예는 다음과 같습니다.

[root@localhost ~]# lsof -Pi | grep myprog
myprog  23411  user    9u  IPv6 9828537      0t0  TCP 1.2.3.167:51163->1.2.3.54:8090 (ESTABLISHED)
myprog  23411  user   16u  IPv4 9827813      0t0  TCP 1.2.3.167:60783->1.2.3.186:23 (ESTABLISHED)
myprog  23411  user   23u  IPv4 9827817      0t0  TCP 192.168.2.8:37435->192.168.2.1:20003 (ESTABLISHED)
myprog  23411  user   24u  IPv4 9827815      0t0  TCP 192.168.2.8:38942->192.168.2.1:20001 (ESTABLISHED)
myprog  23411  user   30u  IPv4 9849168      0t0  TCP 1.2.3.167:52352 (LISTEN)
myprog  23411  user   31u  IPv4 9849242      0t0  TCP 1.2.3.167:52352->1.2.3.186:59323 (ESTABLISHED)
myprog  23411  user   33u  IPv4 9852370      0t0  TCP 1.2.3.167:40328 (LISTEN)
[root@localhost ~]#

답변2

다음을 사용하여 프로세스를 직접 종료할 수 있습니다 sudo fuser -k 80/tcp(포트를 필요한 것으로 교체).

관련 정보