본문 바로가기

IT/검색 이력

리눅스 서버에서 리스닝 중인 포트 확인하기

반응형

리눅스 서버를 운영하면서 어떤 프로그램이 어떤 포트를 사용하고 있는지 확인할 필요가 종종 있습니다. 이번 포스팅에서는 리눅스에서 리스닝중인 포트를 확인하는 방법을 알아보겠습니다.

1. 넷스탯 (netstat) 명령어 사용하기

넷스탯(netstat)은 네트워크 연결, 라우팅 테이블, 인터페이스 상태 등 네트워크 관련 정보를 보여주는 명령어입니다. 특히, "-a" 옵션을 사용하면 모든 연결과 리스닝 소켓을 표시합니다.

$ netstat -a

또한, "-n" 옵션을 사용하면 숫자로 된 네트워크 주소와 포트 번호를 그대로 표시하며, "-p" 옵션은 해당 포트를 사용하는 프로그램/프로세스 이름을 표시합니다.

$ netstat -anp

2. lsof 명령어 사용하기

lsof(List of Open Files) 명령어는 현재 시스템에서 열려 있는 파일 목록을 출력하는 명령어로, 네트워크 연결도 파일로 취급하기 때문에 네트워크 연결 정보를 확인하는 데 사용할 수 있습니다. "-i" 옵션을 이용하여 특정 포트 리스닝 상태를 확인할 수 있습니다.

$ lsof -i :포트번호

3. ss 명령어 사용하기

ss(Socket Statistics) 명령어는 넷스탯 명령어와 비슷한 기능을 수행하지만, 대용량 네트워크를 다룰 때 보다 효과적입니다. "-l" 옵션을 사용하면 리스닝 상태인 소켓을, "-n" 옵션은 주소와 포트 번호를 숫자로, "-p" 옵션은 프로세스 정보를 표시합니다.

$ ss -lnp

4. netcat (nc) 명령어 사용하기

netcat(nc)는 컴퓨터 네트워크를 사용하여 TCP 또는 UDP 프로토콜을 사용하는 연결을 읽고 쓰는 도구입니다. "-z" 옵션을 사용하여 주어진 포트의 리스닝 상태를 확인할 수 있습니다.

$ nc -zv localhost 포트번호

이상으로 리눅스에서 사용할 수 있는 몇 가지 포트 확인 방법을 살펴보았습니다. 각 도구는 상황에 따라 다르게 사용될 수 있으므로 적절하게 활용하시기 바랍니다.

반응형