콘텐츠로 이동


clamd설치,Sendmail 연동하기

들어가는말

안녕하세요, 고니 입니다.

2025년 기준으로 좀 오래된 자료이긴 한데, 몇년전만 해도 꽤 유용했던 자료라 업데이트만 합니다.
sendmail + Clamav로 Email 수/발송시 백신과 연동하는 방안이였고, 지금은 버전들이 전부 업데이트 되어서 시간나면 한번 다시 써볼께요

[![image.png](http://wiki.igoni.kr/uploads/images/gallery/2025-06/scaled-1680-/zhGimage.png)](http://wiki.igoni.kr/uploads/images/gallery/2025-06/zhGimage.png)
perplexity에서 생성한 AI이미지

clamav 설치

1.Sendmail과 연동하기 위한 패키지 설치

$> yum install -y sendmail-devel
  1. clam바이너리 다운로드 - http://sourceforge.net/projects/clamav/files/clamav/0.97.8/clamav-0.97.8.tar.gz
  2. 바이너리 컴파일 & 설치 shell $> tar -zxvf clamav-0.97.8.tar.gz $> useradd -s /bin/false clamav $> cd clamav-0.97.8 $> ./configure --prefix=/usr/ --sysconfdir=/etc/ --enable-milter $> make;make install
  3. 설정파일 변경 – Freshclam (엔진 업데이트) shell $> $ vi /etc/freshclam.conf #Example ... UpdateLogFile /var/log/clamav/freshclam.log LogTime yes DatabaseMirror database.clamav.net NotifyClamd /etc/clamd.conf SubmitDetectionStats /etc/clamd.conf ...
  4. 설정파일 변경 – Clamd (Clamav데몬) shell $> vi /etc/clamd.conf LogFile /var/log/clamav/clamd.log LogTime yes LogSyslog yes PidFile /var/run/clamav/clamd.pid LocalSocket /var/run/clamav/clamd.sock FixStaleSocket yes TCPSocket 3310 TCPAddr 127.0.0.1 StreamMaxLength 100M User clamav PhishingSignatures yes PhishingScanURLs yes MaxFileSize 30M
  5. 설정파일 변경 – Milter(SMTP와 연동) ```shell $> vi /etc/clamav-milter.conf MilterSocket /var/run/clamav/clamav-milter.sock MilterSocketMode 666 FixStaleSocket yes User clamav PidFile /var/run/clamav/clamav-milter.pid ClamdSocket unix:/var/run/clamav/clamd.sock OnClean Accept OnInfected Quarantine OnFail Defer LogFile /var/log/clamav/clamav-milter.log LogTime yes

    6. 파일 생성 및 권한 변경shell $> mkdir /usr/share/clamav $> cd /var/log $> mkdir clamav $> cd clamav $> touch clamav-milter.log $> touch clamd.log $> touch freshclam.log $> cd /var/run $> mkdir clamav $> chown -R clamav.clamav /var/log/clamav $> chown -R clamav.clamav /var/run/clamav $> chown -R clamav.clamav /usr/share/clamav 7. 엔진 업데이트 & 프로세스 실행shell $> freshclam $> /usr/sbin/clamav-milter 8. 정상적으로 실행할 경우shell $> ps -ef | grep clam clamav 4242 1 0 15:37 ? 00:00:00 clamd clamav 4251 1 0 15:37 ? 00:00:00 clamav-milter ```

Sendmail연동

  1. /etc/mail/sendmail.mc 파일 열어서 shell $> vi /etc/mail/sendmail.mc ... INPUT_MAIL_FILTER(`clamav`, `S=local:/var/run/clamav/clamav-milter.sock, F=, T=S:4m;R:4m`) define(`confINPUT_MAIL_FILTERS`, `clamav`) ... *따음표(‘) 와 역슬래쉬(`)와 구분해야 되요
  2. sendmail 서비스는 freshclam 후에 구동되도록 설정이 필요. shell $> chkconfig sendmail off
  3. 자동으로 엔진업데이트를 하기 위해서는 freshclam 프로세스를 데몬형태로 띄우면 됨(conf파일 정책에 따라 2시간마다 한번씩 업데이트 시도함) shell $> freshclam -d
  4. /etc/rc.local에 아래 내용 추가 shell $> vi /etc/rc.local /usr/sbin/clamd /usr/sbin/clamav-milter freshclam -d $> /etc/init.d/sendmail start






작성일: 2026년 7월 15일 ,  마지막 업데이트: 2026년 7월 15일