티스토리 뷰
리눅스 로그들 (로그를 볼때 cat, vim 는 적합하지 않다 실시간으로 생성되므로 tail 명령어가 적합)
/var/log/boot.log 리눅스가 부팅될때 나타나는 메세지 기록 /var/log/cron 시스템 cron 에 대한 로그 /var/log/message 커널에서 보내주는 실시간 로그 (시스템에서 실시간으로 생성되므로 가장 많이 보는 로그중의 하나임) /var/log/secure 시스템 접속에 관한 로그파일 (언제, 누가, 어디에서 접근했는지에 대한 로그가 남아있음) |
/var/log/xferlog ftp 로 로그인하는 사용자에 대한 로그를 기록하는 파일 a : 아스키 파일 b : 바이너리 파일 C : 압축 / U : 비압축 / T : Tar archive o : outgoing / i : ingoing a : anoymous / g : guest / r : 인증된 사용자 |
/var/log/maillog
- 센드메일을 통한 메일에 대한 로그를 기록하는 파일
/var/log/wtmp
- 사용자의 로그인 / 로그아웃 / shutdown / booting 기록이 DATA 파일로 저장
cat /var/log/wtmp 로 열면 DATA 파일이라 사람이 읽을수가 없다.
last -f /var/log/wtmp 로 확인
root pts/0 115.xx.xx.13 Thu Feb 23 16:53 - 17:04 (00:11) |
/var/log/btmp
- 로그인 5번 이상 실패한 로그가 남음 (DATA 형식)
lastb 명령어로 확인 가능
아래 아이피에서 무작위로 접근하는듯 함....
root ssh:notty 98.xxx.xx.92 Wed Jul 11 22:06 - 22:06 (00:00) |
로그를 관리하는 데몬 - syslogd
syslogd는 시스템이 부팅되면서 /etc/syslog.conf 파일을 읽어서 각 로그파일의 위치 파악하여 설정파일의 정의된
로그들은 각각 로그들을 시작하게 됨
/etc/syslog.conf
- 위의 로그들이 정의되어 있는 설정파일
syslog 원격에서 받기 (syslog 서버 구축)
[호스트]
vim /etc/hosts (로그서버 별칭과 아이피 등록) 192.168.6.2 syslogger vim /etc/syslog.conf 혹은 아래와 같이 아이피로 지정 가능 (앞에 kern 은 커널관련 메세지 level 을 의미) kern.* @192.168.2.18 /etc/init.d/syslog restart ; 적용 |
[로그서버] centos5.X
vim /etc/sysconfig/syslog - SYSLOGD_OPTIONS="-r -m 0" ← 수정 ; "-r" 만 추가 된것 |
[로그서버] centos 6.X
vim /etc/rsyslog.conf # 192.168.1.182 서버에서 로그를 받자! # Provides UDP syslog reception $ModLoad imudp $UDPServerRun 514 :FROMHOST-IP, isequal, "192.168.1.182" /var/log/192.168.1.182.log & ~ vim /etc/sysconfig/rsyslog # 변경 SYSLOGD_OPTIONS="-c 2" → SYSLOGD_OPTIONS="-r -m 0" |
/etc/init.d/syslog restart
로그서버에서 tail -f /var/log/messages 를 해보면 원격지의 로그가 보이면 된다
logrotate
- 로그파일을 순환시킨다. (주기적으로 보관후 제일 오래된 로그는 삭제)
/etc/logrotate.conf
rotate 4 : 순환 간격 지정 (4주까지의 로그 정보를 기록해둠)
create : 순환 주기에 다다르면 로그파일을 순환시킨뒤 새로운 로그파일을 생성
#compress : 로그파일의 용량을 줄이기 위해 로그 파일을 gzip으로 자동으로 압축하는 지시자
include /etc/logrotate.d : 네트워크 서비스의 로그파일을 설정을 /etc/logrotate.d/ 에 넣어서 적용할 수 있음
wtmp에 대한 로그 설정 부분으로 전역으로 선언된 설정 중복되는것들은 무시되고 아래에 설정이 우선시됨
순환주기는 monthly 이며 순환간격이 1입니다. create 지시자는 만들 로그 파일의 허가권과 소유권을 지정하였음
/var/log/wtmp {
monthly
create 0664 root utmp
minsize 1M
rotate 1
}
/etc/logrotate.d/syslog
sharedscripts
postrotate
/bin/kill -HUP `cat /var/run/syslogd.pid 2> /dev/null` 2> /dev/null || true
endscript
시스템에서 예약되어 있는 주요 로그는 위에서 설정되어 있다.
postrotate ~ endscript : 로그파일이 순환된 이후 특정작업을 지시하라는 의미 (여기서는 데몬을 재시작한다는 의미?)
logrotate -d /etc/logrotate.conf
- 디버그 모드로 로그를 순환시킴 (디버그 모드에서는 이전 내용과 비교하여 변경된것이 없으면 로그를 순환하지 않음)
로그로테이트로 돌아간것들은 아래와 같이 나오네. 요즘은 날짜로 지정해주나 본데요?
-rw------- 1 root root 54549 2010-01-31 04:51 messages-20100131
-rw------- 1 root root 56810 2010-02-07 04:51 messages-20100207
-rw------- 1 root root 1963 2010-02-14 04:51 messages-20100214
특정 데몬의 로그만 순환시키기
logrotate -f /etc/logrotate.d/apache
사이트 참고
http://linuxsysconfig.com/2013/04/how-to-configure-remote-logging-on-rhel6-centos6/
'Linux' 카테고리의 다른 글
No space left on device 에러 메세지 (0) | 2015.06.04 |
---|---|
lshw 리눅스에서 하드웨어 자원 알아보기 (0) | 2015.06.04 |
mingetty 프로세스 (0) | 2015.06.04 |
리눅스 언어셋 UTF-8 (unicode 유니코드) (0) | 2015.06.04 |
geoip DB 업데이트 (0) | 2015.06.04 |
- Total
- Today
- Yesterday
- IPSEC
- softether
- WAF
- OpenVPN
- NGINX
- centos8
- mariadb
- centOS7
- L2TP
- glusterfs
- 베이어다이나믹
- HAProxy
- virtualbox
- SSL
- iptables
- cURL
- kvm
- 인증서
- gitlab
- mod_security
- MySQL
- Apache
- yum
- ntp
- 리눅스
- pptp
- GeoIP
- php
- galera
- ssh
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |