카테고리 없음

리눅스 SSH 세션 확인 및 종료 방법

고지존 2025. 7. 2. 17:53

 

리눅스 시스템을 운영하다 보면 동시에 여러 사용자가 접속하거나, 사용하지 않는 SSH 세션이 남아 있는 경우가 있습니다. 특히 서버를 원격으로 관리할 때는 누가 접속해 있는지를 실시간으로 파악하고, 필요 시 세션을 안전하게 종료하는 것이 중요합니다.

이번 글에서는 SSH 세션 확인부터 비정상 세션 종료까지, 실무에서 자주 사용하는 명령어들을 예제와 함께 정리해드립니다.

 

실전 확인 방법

1. 접속자 확인w 명령어

w 명령어는 현재 시스템에 로그인한 사용자 목록과 세션 상태를 확인할 수 있는 유용한 도구입니다.

# w

예시 출력:


  16:42:12 up  1:26,  3 users,  load average: 0.00, 0.00, 0.00
  USER     TTY        LOGIN@   IDLE   JCPU   PCPU WHAT
  root     tty1      15:16    1:25m  0.02s  0.02s -bash
  root     pts/0     15:36    2.00s  0.02s  0.00s w
  root     pts/1     16:42   11.00s  0.02s  0.02s -bash
  

위 출력에서는 3명의 root 사용자가 접속 중이며, 각각 물리 콘솔(tty1)과 원격 SSH 터미널(pts/0, pts/1)을 사용하고 있습니다.

2. SSH 프로세스 확인 ps -ef | grep ssh

현재 시스템에 활성화된 SSH 연결을 확인하려면 ps 명령어로 SSH 관련 프로세스를 검색할 수 있습니다.

# ps -ef | grep ssh

예시 출력:


root         677       1  0 15:15 ?        00:00:00 sshd: /usr/sbin/sshd -D [listener]
root        1349     677  0 15:36 ?        00:00:00 sshd: root [priv]
root        1351    1349  0 15:36 ?        00:00:00 sshd: root@pts/0
root        1468     677  0 16:40 ?        00:00:00 sshd: root [priv]
root        1470    1468  0 16:42 ?        00:00:00 sshd: root@pts/1
  

위에서 sshd: root@pts/1와 같은 항목이 사용자의 SSH 세션입니다. 이 프로세스 ID(PID)를 활용해 해당 세션을 종료할 수 있습니다.

3. SSH 세션 종료kill 명령어

특정 사용자의 SSH 세션을 강제로 종료하려면 해당 세션의 PID에 kill -9 명령을 적용합니다.

# kill -9 1470

이 명령어를 실행하면 PID 1470(예시)의 SSH 세션이 즉시 종료되며, 해당 사용자는 연결이 끊어집니다.

4. 종료 확인

w 명령어로 다시 확인해 보면, 종료된 세션은 목록에서 사라진 것을 볼 수 있습니다.

# w

출력:


  16:44:26 up  1:28,  2 users,  load average: 0.00, 0.00, 0.00
  USER     TTY        LOGIN@   IDLE   JCPU   PCPU WHAT
  root     tty1      15:16    1:27m  0.02s  0.02s -bash
  root     pts/0     15:36    1.00s  0.03s  0.00s w
  

이제 root@pts/1 세션은 종료된 것을 확인할 수 있습니다.

5. 주의사항

  • kill -9는 강제 종료이므로 데이터 손실 가능성이 있습니다.
  • 운영 중인 서비스 사용자 세션을 종료하기 전에는 항상 신중하게 판단해야 합니다.
  • 특정 사용자만 종료하려면 사용자명, 접속 시간, TTY를 확인하세요.
  • 보안상의 이유로 불필요한 root SSH 세션은 최소화하는 것이 좋습니다.

리눅스 서버 운영 시 SSH 세션 관리 능력은 필수입니다. w 명령어로 접속자를 확인하고, pskill 명령어로 불필요한 세션을 정리하는 습관은 보안과 자원 효율 면에서 모두 도움이 됩니다.

정기적으로 SSH 세션을 점검하고, 이상 접속이 발생하면 즉시 대응할 수 있는 체계를 갖추세요. 단순한 명령어 하나하나가 서버를 안전하게 지키는 첫걸음이 될 수 있습니다.