본문 바로가기

🌟2017년 이전 포스팅 모음 🌟/💞Linux OS💞

히스토리 로그 분석 정리와 로그 파일 설정 하기

히스토리 기능 강화

기록(history) 안하는 방법을 막는 방법

[root@lalalive*BunnyCOM2*~]# vi /etc/profile

끝에 다음 명령어 한 줄을 삽입한다.

declare -r HISTFILE

[root@lalalive*BunnyCOM2*~]# set è bash 환경 옵션 정보 출력

시간 정보 출력하게 하는 법

[root@lalalive*BunnyCOM2*~]# vi /etc/profile

HISTTIMEFORMAT='%Y-%m-%d_%H:%M:%S\ '

export HISTTIMEFORMAT

히스토리 저장 정보 변경

[root@lalalive*BunnyCOM2*~]# vi /etc/profile
HISTSIZE=1000
è HISTSIZE=800 <내가 주로 사용>

## 로그 내용을 파일에 저장하지 않으면서 메모리에 유지 <보안상>

HISTFILESIZE=0

[root@lalalive*BunnyCOM2*~]# vi /etc/syslog.conf

# crit 이상레벨의 커널관련 에러를 콘솔 디바이스로 보냅니다.

#kern.* /dev/console

# 메일관련과 개인 인증관련을 제외한 info 레벨 이상의 경우 기록

*.info;mail.none;authpriv.none;cron.none /var/log/messages

# 제한적인 접속에 대해서 모두 기록한다. 이는 모든 인증이 필요한 경우이다.

authpriv.* /var/log/secure

# 메일관련 모든 메시지를 기록함.

mail.* -/var/log/maillog

cron.* /var/log/cron

# emergency 메시지에 대해서 모든 사용자에게 알려준다

*.emerg *

# uucp와 news의 경우 crit 레벨 이상의 에러를 기록한다.

uucp,news.crit /var/log/spooler

local7.* /var/log/boot.log

[root@lalalive*BunnyCOM2*~]# vi /etc/logrotate.conf

# 아래에 특별히 명시하지 않은 로그파일에 대해서 일주일(weekly)마다 rotate한다.

weekly

# 최대 4번까지 rotate를 허용한다. (logfile, logfile.1 ~ logfile.4까지의 로그파일이 생성된다.

rotate 4

# 에러가 생기면 root 사용자로 메일을 보낸다.

errors root

# rotate한 후에 비어있는 로그파일을 생성.

create

# 로그파일을 압축한다. 용량문제가 크게 되지 않는다면 압축하지 않는것이 좋다.

#compress

# /etc/logrotate.d 디렉토리 안에 있는 설정파일들을 포함시킨다.

# 대부분 RPM 패키지로 설치되는 데몬들은 이렇게 이 디렉토리에 로그파일을 rotate 시킬 수 있도록 설정파일이 설치된다.

include /etc/logrotate.d

# 한달마다 rotate하며 최대 1회까지만 rotate한다

/var/log/wtmp {

monthly

create 0664 root utmp

rotate 1

}

# 한달마다 rotate하며 최대 3회까지 rotate한다

/var/log/lastlog {

monthly

rotate 3

}

[root@lalalive*BunnyCOM2*~]# service rsyslog restart

[root@lalalive*BunnyCOM2*~]# history

123 vi /etc/profile

127 service rsyslog restart è 이런 방식으로 나온다.

[root@lalalive*BunnyCOM2*~]# source /etc/profile è 다시 갱신

자 이제 히스토리가 어떻게 변경되어 나오는지 보자.

127 2012-09-20_22:35:48\ service rsyslog restart

128 2012-09-20_22:36:05\ history

129 2012-09-20_22:36:27\ source /etc/profile

130 2012-09-20_22:36:29\ history

è 이렇게 날짜별로 언제 작업을 실행했는지 알려준다. 즉 일반 사용자가 언제 무슨 작업을 했는지 빨리 확인할수 있다.

이런식으로 응용해서 사용할수 있다.

[root@lalalive*BunnyCOM2*~]# last è 로그인 상태 기록 확인

root pts/0 192.168.100.1 Thu Sep 20 22:07 still logged in

bunny pts/0 192.168.100.1 Thu Sep 20 21:51 - 22:06 (00:15)

reboot system boot 2.6.32-279.el6.i Thu Sep 20 21:51 - 22:41 (00:50)

[root@lalalive*BunnyCOM2*~]# lastlog è 시스템 데몬들이 상태를 파악한다.

사용자이름 포트 어디서 최근정보

root pts/0 192.168.100.1 목 9월 20 22:07:09 +0900 2012

bin **한번도 로그인한 적이 없습니다**

daemon **한번도 로그인한 적이 없습니다**

[root@lalalive*BunnyCOM2*~]# cat /var/log/messages | more è 시스템메세지로그의 내용을 패이지 단위로 출력하라는 명령어입니다.

[root@lalalive*BunnyCOM2*~]# cat /var/log/maillog | more è 메일로그 파일의 내용을 보여달라는 폐이지 단위 명령어입니다.

이런식으로 관리자는 메일메일 시스템의 로그를 확인할 수 있습니다.

[root@lalalive*BunnyCOM2*~]# dmesg | grep SELinux è 메시지에서 selinux에 관련된 로그만 출력해서 보여줍니다.

SELinux: Initializing.

SELinux: Starting in permissive mode

SELinux: Registering netfilter hooks

dracut: Loading SELinux policy

SELinux: 2048 avtab hash slots, 250818 rules.

SELinux: 2048 avtab hash slots, 250818 rules.