TIL

모르는 서버 접근 후 프로세스 확인방법

하얀잔디 2025. 7. 4. 21:09

 

이 서버에는 뭐가 돌아가고있지? 싶을때가있다. ssh로 들어가서.

 

 

 

1. 현재 실행 중인 프로세스 전체 확인

ps -ef --forest

또는 

ps aux --sort=-%mem | head -n 20

→ 어떤 프로세스가 많이 돌아가고 있는지 한눈에 볼 수 있음

 

 


2. 리눅스 서비스(systemd)로 실행 중인 목록 확인

systemctl list-units --type=service --state=running

 xxx.service, nginx.service, api.service, redis.service 같은 게 나오면 시스템 서비스로 실행 중

 

 
 

 3. 포트 기반으로 어떤 서비스가 열려 있는지 확인

sudo lsof -i -P -n | grep LISTEN

또는

sudo netstat -tulnp

→ 예:

nginx
tcp 0 0 0.0.0.0:3000 0.0.0.0:* LISTEN 1234/node tcp 0 0 0.0.0.0:6379 0.0.0.0:* LISTEN 987/redis-server

→ 포트번호 + 프로세스로 어떤 서비스인지 추정 가능


4. Node.js 앱 추적 (PM2 사용 여부 포함)

 
ps -ef | grep node
 
pm2 list

→ 만약 pm2 설치돼 있다면 여러 앱 이름이 나올 수 있음


5. 로그가 저장되는 경로 추적

 
find /home -type f \( -iname "*.log" -o -iname "*.out" \) 2>/dev/null

또는 /var/log에서 먼저 탐색:

 
ls -lh /var/log/ ls -lh /var/log/nginx/

→ 유의미한 로그가 있으면 해당 프로세스를 역추적 가능


 6. 컨테이너 외부에서 도는 프로세스 확인 요약

명령목적
ps -ef --forest 전체 프로세스 구조 확인
systemctl list-units --type=service systemd로 실행 중인 서비스 확인
`lsof -i -P -n grep LISTEN`
find /home -name "*.log" 로그 파일 탐색
pm2 list PM2로 관리되는 앱 확인
 

'TIL' 카테고리의 다른 글

VI 있어보이게 써보자..  (0) 2025.07.04
Console vs Winston  (0) 2025.07.04
JS의 동작원리  (0) 2025.06.29
DB 차이점 정리  (0) 2025.06.29
소켓에서 레디스를 왜 쓸까?  (0) 2025.06.29