Linux/서버 보안(CentOS)

프로세스와 명령어 모니터링

D4tai1 2018. 9. 16.

1. 프로세스 모니터링

1) ps

 [1] 사용자가 접속한 단말에서 실행되고 있는 프로세스를 보여준다.

 [2] ps옵션

  - a : 모든 프로세스에 대해

  - u : 실행한 유저명을 포함하고

  - x : 제어 단말이 없는 프로세스까지 보여준다.

 

 - 위 그림은 ps -aux 명령어를 사용한 결과이다.

 

 [3] 확인방법

 - VSZ는 프로세스가 메모리의 총 사용량이다.

 - RSS는 프로세스가 현재 사용 중인 메모리양이다.

 - TTY는 제어단말명을 말한다.

 - STAT는 프로세스 상태를 의미한다

  ① S : 슬립상태

  ② D : 인터럽트가 불가능한 슬립상태

  ③ R : 실행상태

  ④ T : 트레이스 혹은 정지상태

  ⑤ Z : 소멸한 프로세스

  ⑥ W : 스왑 아웃한 프로세스

 

2) top

 [1] CPU 및 메모리 사용률, 시스템 부하 등의 상태를 모니터링 할 수 있다.

 [2] 확인방법

  - PR : 실행우선순위

  - NI : nice 값

  - VIRT : 사용 중인 가상메모리(KB)

  - RES : 사용 중인 실제메모리(KB)

  - SHR : 공유메모리 크기(KB)

  - S : 프로세스 상태

  - MEM : 물리 메모리 점유율(%)

  - COMMAND : 실행 명령어

 

 [3] 사용방법

  - M : 메모리 사용률 순으로 정렬

  - P : CPU 사용률 순으로 정렬

  - q : 종료

  - 스페이스 : 업데이트


 [4] 시연

 - user1 사용자가 vi에디터를 연다.


 - user1 사용자가 vi에디터를 사용하고 있다.


 - 관리자가 top 명령어를 실행한다.


 - P를 누르면 CPU 사용률 순서대로 정렬한다. (위 그림)

 - M을 누르면 메모리 사용률 순서대로 정렬한다. 


 - u를 누르면 사용자를 검색할 수 있다.


 - 검색한 사용자가 사용하는 것만 확인할 수 있다.


 - k를 누르면 프로세스를 강제로 종료할 수 있다.(프로세스 ID 입력)


 - user1에서 사용하던 vi 에디터가 강제로 종료되었다.


 

3) 명령어 로그 확인방법

 [1] /.bash_history 에 사용자의 기록이 남는다.

 [2] /etc/profile 에서 history 명령어의 출력포멧을 설정할 수 있다.

 

 - [HISTTIMEFORMAT="%F %T --> "] 내용을 추가한다.

 - [export=HISTTIMEFORMAT] 내용을 추가한다.(위 사진에는 오타가 나서 수정하였다.) 

 

 - history 명령어로 확인한다.


 [3] 각 유저가 사용한 명령어는 /home/"사용자명"/.bash_history에서 확인할 수 있다.

 

2. 사용자 모니터링

1) users

 [1] 현재 시스템에 로그인한 사용자 이름을 볼 수 있다.

 

2) who

 [1] 현재 시스템에 접속한 사용자 및 단말, 시간, ip 등을 확인할 수 있다.

 

3) w

 [1] 서버 정보와 함께 사용자 정보를 상세히 확인할 수 있다. 

 [2] 마지막 열을 보면 가장 최근에 사용한 명령어도 확인할 수 있다. 

 

 

'Linux > 서버 보안(CentOS)' 카테고리의 다른 글

시스템 시간관리  (0) 2018.09.23
사용자 계정관리  (0) 2018.09.23
패키지 설치  (0) 2018.09.15
서버 부팅과정  (0) 2018.09.09
서비스관리  (0) 2018.09.09

댓글