본문 바로가기

IT/리눅스

Rocky linux 시스템의 현재 접속 정보와 작업 정보 알아내기(who, w, last, netstat, ss)

반응형

시스템을 운용하다보면 부하가 올라가거나 상태가 이상할때 원인을 확인하고 싶을 때가 있습니다. 

 

ps -ef 로 프로세스를 확인하거나 top으로 부하를 확인하는 방법도 있지만 역시 확실한건 접속자와 실행 중인 작업을 알아내는 것이죠. 

 

 

Linux 시스템에서 현재 접속한 사용자를 확인하는 방법에는 여러 가지가 있습니다.

주로 사용하는 명령어는 who, w, last입니다.

이 명령어들은 시스템 관리자가 사용자의 로그인 상태를 모니터링하거나 문제 해결이 필요할 때 아주 유용하지만 의외로 잘 모르시는 분들이 많습니다.

 

각각에서 제공되는 정보는 다음과 같습니다.

 

1. who 명령어

 

who 명령어는 -a 옵션과 함께 사용하여 로그인한 사용자, 그들의 IP 주소, 로그인 방식 등을 포함한 상세 정보를 제공할 수 있습니다.

네트워크를 통해 접속한 경우는 해당 사용자의 IP 주소도 함께 표시됩니다.

 

> who -a

 

 

 

2. w 명령어

 

w 명령어는 현재 시스템에 로그인한 사용자들이 무엇을 하고 있는지 상세 정보를 포함하여 보여줍니다.

사용자 이름, 사용중인 터미널, 로그인 시간, CPU 사용 시간, 현재 실행 중인 명령어 등의 정보를 포함합니다.

 

> w

 

 

3. last 명령어

 

last 명령어는 시스템에 로그인하고 로그아웃한 사용자의 목록을 보여줍니다.

이 명령어는 /var/log/wtmp 파일을 사용하여 정보를 표시하며 현재 접속 중인 사용자 뿐만 아니라 최근에 접속했던 사용자의 정보도 확인할 수 있습니다.

 

> last

 

 

 

추가적으로 네트워크 연결을 모니터링하거나 접속 IP를 확인하는데는 netstatss 명령어도 유용합니다.

이 명령어들은 현재 시스템에 대한 모든 네트워크 연결을 보여주며, 원격 접속에 사용된 IP 주소를 확인할 수 있게 해줍니다.

 

4. netstat 명령어

 

> netstat -natp

 

 

5. ss 명령어

 

> ss -natp

 

 

 

-n 옵션 : IP 주소와 포트 번호를 숫자로 표시

-a 옵션 : 모든 연결과 리스닝 소켓을 표시

-t 옵션 : TCP 연결만 표시

-p 옵션 : 각 연결에 대한 프로세스 정보를 표시

 

 

 

이외에도 SSH와 같은 특정 서비스를 통해 원격 접속이 이루어진 경우, 해당 서비스의 로그 파일 (/var/log/secure )을 직접 확인하여 원격 접속한 사용자와 IP 주소를 찾을 수도 있습니다.

 

반응형