여기에 소개하는 프로그램은 시스템에 존재하는 SUID,SGID파일들과 소유자가
없는파일들을 검색해서 리스트를 구축하고 리스트 갱신, 변경파일 알림,
메일전송 기능이 포함된 프로그램입니다.

#find / -type f ( -perm -04000 -o -perm -02000 )
위처럼 find를 이용해서 리스트를 저장할수도 있지만 편리성이나
유연성(?)은 떨어지겠죠...

sxid를 설치하게되면 /etc/cron.daily에 sxid실행스크립트를 카피하게됩니다.
cron에 의해 동작하며 매일 시스템을 검사후 로그를 남겨 놓습니다.

설정파일은 /etc/sxid.conf파일로 sxid의 동작을 설정하게됩니다.

설정부분에는 특별히 설정할건 없지만 입맛(?)에따라 suid,sgid파일을 검색후
메일로 변경내용을 받아볼수있습니다.

#########################################################################
#file /etc/sxid.conf

# Who to send reports to #주석대로 메일로 변경내용을 받을 유저
EMAIL = "root"

# This implies ALWAYS_NOTIFY. It will send a full list of
# entries along with the changes
# 역시 주석대로 검색후에 생성된 모든리스트를 메일로 보내게 됩니다.
# yes로 설정할경우

LISTALL = "no"

#시스템 검색에서 제외할 디렉토리를 설정합니다.
IGNORE_DIRS = "/home"

그외에 mail프로그램의 경로설정도 있는데 시스템 기본값을 사용하게됩니다.
#MAIL_PROG = "/usr/bin/mail"
########################################################################

아래는 sxid의 로그(var/log/sxid.log)입니다.

/usr/bin/sperl5.6.0.0.0.35273.4198190.f39a1d3db12ae9cee7bc8225d14c43c0
/usr/bin/chage.0.0.35309.4198192.9273ecd694ecbd94eda82c55dc06b746
/usr/bin/gpasswd.0.0.35309.4198194.fbfca697ddc99a805c04a1daae7fcc65
/usr/bin/at.0.0.35309.4198315.cbaced33f7e8fe86ac939f8ea2051504
/usr/bin/lockfile.0.12.34285.4198457.8a2559ec1c47eaa688633cdf1df98eb6
/usr/bin/passwd.0.0.35145.4198598.d2a053addb5ddca0d25d8c9b0cd30da7
/usr/bin/sudo.0.0.34889.4198607.cc074d9f2bb98e8899f22b1a7c49afb1
/usr/bin/chfn.0.0.35273.4198887.e8f122c8b737c507941c64b631a34569
/usr/bin/chsh.0.0.35273.4198888.273005f62be73f70d2adec79dff864fe
/usr/bin/newgrp.0.0.35273.4198983.7d3f471b934c70cb801bef0fb2366c95
/usr/bin/write.0.5.34285.4198994.ac7dbe33121e54ba6b0594c44403d164
/usr/bin/crontab.0.0.35309.4199014.18a11d726c6811885fc1440458dba2ca
/usr/bin/slocate.0.21.34285.4198539.19e45c7b7cd2b0ff5ca88db899ed5cb2
/usr/bin/openssh.0.0.35309.4199367.737aef44149c5e2f0c7dba4629144481

아래는 메일로 보내진 내용입니다.

sXid Vers : 4.0.2
Check run : Tue Nov 5 22:52:52 2002
This host : free4u.dnip.net
Searching : /
Excluding : /proc /mnt /cdrom /floppy
Ignore Dirs: /home
Forbidden : /home /tmp

#이전 검색내용과 비교해서 변경된 파일을 기록
Checking for any additions or removals:

#파일속성의 변경을 기록
Checking for changed attributes or sums/inodes:

#소유권이 없는 미아(?)파일을 기록
Checking for no user/group matches:

/tmp/www/html/mail/maildata/2002/9/14/8/ apache.*100 2700
/tmp/www/html/mail/maildata/2002/9/16/8/ apache.*100 2700

위의 내용은 /tmp/www/html/mail/maildata/2002/9/16/8/디렉토리의
소유자가 apache인데 그룹이 없는(GID 100)파일이라는 내용입니다.
예전에 존재했던 유저(혹은 시스템상의 유저)가 삭제된후 소유자가 없게된
미아(?)파일들입니다. 소유권을 변경하던지 삭제하는것이 좋습니다.

메일로 받은 내용처럼 시스템에서 s(ug)id파일을 검색해서 로그(/var/log/sxid.log)를 남기고 메일로 리스트를 보내게됩니다.

-----------------------------------------------------------------------------
첨부파일은 sxid-4.0.4입니다.
관련링크 : http://freshmeat.net/projects/sxid/

'System' 카테고리의 다른 글

linux kernel 2.6 업그레이드시 몇가지 문제점들  (1) 2004.07.18
리눅스 시스템 최적화 튜닝  (0) 2003.01.13
grub의 이점  (6) 2002.09.06
CHKCONFIG (configuration state checker)  (1) 2002.07.14
저널링(Journalling)과 ReiserFS  (0) 2002.05.14

+ Recent posts