I. 시스템 분석
-커널 로그: "klogd"라는 데몬에 의해 커널 메세지가 생성된다.
-시스템 로그: "syslogd"라는 데몬에 의해 생성되는 로그이다.
▲왼쪽부터 순서대로 날짜, 시간, 호스트명, 프로세스명, 설명 기록
▲왼쪽부터 날짜, 시간, 호스트명, 프로세스명, 설명 기록
※last 명령어
-마지막으로 로그인한 사용자 정보를 보여준다.
-/var/log/wtmp 파일에 기록한다.
지난 달의 로그 파일 보기 ▶ # last -f wtmp.1 //전달의 로그는 logrotate프로그램에 의해 wtmp.1, wtmp.2 와 같이 저장됨
# lastlog -t 2 //최근 2일 동안 접속한 사용자의 마지막 로그 기록(-t옵션) |
# lastlog -u bjkim //특정 사용자의 마지막 접속 기록(-u옵션) |
-기본적으로 mail, secure, message, cron등의 로그가 존재한다.
-여러대의 서버를 관리하기 위해 원격 로그 시스템을 지정할 수 있다.
syslogd 데몬 제어 및 작동 확인
# /etc/rc.d/init.d/syslog [start|stop|restart] or # service syslog [start|stop|restart] //데몬 제어 |
# ps -e | grep syslog //작동 확인 |
# grep syslog /etc/service //PID 확인 |
/etc/syslog.conf 파일 (syslogd.conf와 헷갈리지 말것)
파일 형식: facility.priority;facility.priority logfile_location |
|
facility: 메세지를 보내는 서브 시스템의 이름이다. |
|
auth |
로그인과 같이 사용자 인증에 관한 메세지 |
authpriv |
ssh와 같은 보안 및 승인에 관한 메세지 |
cron |
crond 데몬과 atd 데몬에 의해 발생되는 메세지 |
daemon |
telnet, ftp 등과 같은 데몬에 의한 메세지 |
kern | kernel에 의한 메세지 |
lpr | 프린터 데몬인 lpd에 의해 발생되는 메세지 |
sendmail, pop, qmail 등의 메일에 의해 발생되는 메세지 | |
news | innd 등과 같은 뉴스 시스템에 의해 발생되는 메세지 |
uucp | uucp에 의한 메세지 |
user | 사용자에 의해 생성된 프로세스 |
syslog | syslogd에 의해 발생되는 메세지 |
local0~7 | 시스템 부팅 메세지 기록, 기타 여분 서비스에 사용하기 위함 |
* | 모든 서비스를 의미 |
priority: 메세지를 받는 파일, 장치, 컴퓨터나 사용자의 이름이다. | |
none | 그에 대한 모든 로그 메세지 무시 |
debug | 문제 추적을 돕는 특수정보 |
info | 정보 메세지 |
notice | 비임계 메세지 |
warn | 경고 |
err | 에러 |
crit | 하드 장치 에러와 같은 임계 에러 |
alert | 에러 경고, 즉시 알려야 할 내용 |
emerg | 시스템 패닉 |
* | 발생하는 모든 상황에 대한 메세지 |
로그 서버: 로그를 작성 후 일정한 서버에 자료를 보내면 이것을 지속적으로 백업해 둘 수 있다.
1. 로그를 작성하는 클라이언트 서버 설정
/etc/syslog.conf 설정 파일에 보낼 파일과 호스트명을 적어서 설정한다.
ex) mail.info @logserver ▶ 로그서버는 DNS 뿐만 아니라 /etc/hosts에 등록해 두는 것이 안전하다.
2. 로그를 처리하는 서버 설정
syslogd 데몬을 시작할 때 추가 옵션이 필요하다.
ex) daemon syslogd -m 0 -r -h
[-m 0: 지정한 분동안 MARK라고 로그파일에 기록 / -r: 인터넷 도메인 소켓을 이용해 네트워크에서 메세지를 받음 / -h: 원격 호스트에서 받은 로그파일을 포워드]
※syslog를 대체하는 시스템 로그 및 커널 메세지 관련 데몬으로 멀티스레드를 지원하고, TCP 프로토콜도 지원한다. (MySQL, PostgreSQL, Oracle등 DB로그 관리 가능)
▶ rsyslog
weekly |
로그 파일을 주 단위로 바꾸어줄 것을 설정 [daily | weekly | monthly] |
rotate 4 |
4주 동안 백업한 로그를 유지할 것을 설정 |
errors root |
root에게 에러 메세지를 보낼 것을 설정 [버전에 따라 있을 수도 있고 없을 수 도 있음 윗 버전<Centos6>에는 없음] |
create |
오래된 백업 로그 파일들 이후에 새로운 로그 파일을 생성 여부 |
#compress |
compress로 압축 변경 여부 [기존엔 gzip으로 설정] |
include /etc/logrotate.d | logrotate에 적용될 각종 로그파일들을 보관하는 디렉터리 지정 |
/var/lib/logrotate.status 파일: logrotate로 작업한 작업 내역이 보관되는 파일이다.
/etc/cron.daily/logrotate 파일: cron에 의해서 주기적으로 실행되는 logrotate의 cron 설정 파일이다.
crontab 명령어: crontab [-u user] [-l 작업리스트] [-r 삭제할작업] [-e 등록하고싶은작업]
항목 |
허용 범위 |
minute |
0-59 |
hour |
0-23 |
day of month |
1-31 |
month |
1-12 (or 달 이름) |
weekday |
0-6 (0=일요일) |
1 * * * * root run-parts /etc/cron.1 | 이 파일은 한 시간마다 한번씩, 매 시간 1분에 실행된다. |
2 4 * * * root run-parts /etc/cron.2 | 이 파일은 하루에 한번씩, 매일 4시 2분에 실행된다. |
42 4 1 * * root run-parts /etc/cron.3 | 이 파일은 한달에 한번씩, 1일 4시 42분에 실행된다. |
22 4 * * 0 /root/backup.sh | 매주 일요일 4시 22분에 /root/backup.sh 실행 파일을 동작한다. |
5 4 * * 1,3,5 /etc/log.sh | 매주 월, 수, 금요일 새벽 4시 5분에 로그 점검 스크립트인 /etc/log.sh를 실행되도록 설정한다. |
명령 |
설명 |
at |
지정한 시간에 명령을 실행한다. |
atp |
현재 사용자의 등록된 작업목록을 보여준다. |
atrm |
지정된 작업 번호의 작업을 삭제한다. |
batch |
시스템 부하 수준이 낮을 때 명령을 수행한다. |
'자격증 > 리눅스 마스터 1급' 카테고리의 다른 글
Part2) 리눅스 시스템 관리 -시스템 보안 및 관리(3) | 시스템 백업 (0) | 2018.03.06 |
---|---|
Part2) 리눅스 시스템 관리 -시스템 보안 및 관리(2) | 시스템 보안 및 관리 (0) | 2018.03.05 |
Part2) 리눅스 시스템 관리 - 장치 관리 | 장치의 설치 및 관리 (0) | 2018.02.28 |
Part2) 리눅스 시스템 관리 - 일반 운영 관리(3) | 프로세스 관리, S/W설치 및 관리 (0) | 2018.02.22 |
Part2) 리눅스 시스템 관리 - 일반 운영 관리(2) | 파일 시스템 관리 (0) | 2018.02.21 |