메일 서버 설정 · 2 min read · Dec 31, 2025

Postfix, MailScanner, Mailwatch 및 MySQL을 이용한 가상 사용자 및 도메인 설정 - 페이지 3

8 Cronjobs

8.1 MailScanner 격리

vi /etc/cron.daily/clean.quarantine

비활성화되어 있는지 확인하십시오 - 해당 줄은 다음과 같아야 합니다:

$disabled = 1;

8.2 Mailwatch 격리

vi /tmp/mailwatch-1.0.4/tools/db_clean.php

첫 번째 줄을 다음과 같이 변경하십시오:

#!/usr/bin/php -q

cp /tmp/mailwatch-1.0.4/tools/quarantine_maint.php /usr/local/bin/
cp /tmp/mailwatch-1.0.4/tools/db_clean.php /usr/local/bin/
chmod +x /usr/local/bin/quarantine_maint.php /usr/local/bin/db_clean.php
echo “/usr/local/bin/quarantine_maint.php –clean” > /etc/cron.daily/mailwatch_quarantine_maint.sh
echo “/usr/local/bin/db_clean.php” > /etc/cron.daily/mailwatch_db_clean.sh
chmod +x /etc/cron.daily/mailwatch*

8.3 메일 큐 감시기

먼저 메일 큐 감시기 스크립트를 복사합니다.

cp /tmp/mailwatch-1.0.4/mailq.php /usr/local/bin/

그 후 새로운 크론잡을 생성합니다.

crontab -e

다음 줄을 추가하십시오:

0-59 * * * *    /usr/local/bin/mailq.php

9 격리 해제 수정

해제된 이메일이 다시 확인되지 않도록(다시 격리될 수 있음) 몇 가지 규칙을 추가/수정해야 합니다.

9.1 화이트리스트 SQL 데이터베이스

phpmyadmin에 연결합니다 ( %server_ip%/phpmyadmin) 및 mailwatch로 로그인합니다. 그 후 데이터베이스 “ mailscanner “를 선택하고 “ whitelist “ 테이블을 선택합니다. 새 레코드를 생성합니다:

to_address = default
to_domain = default
from_address = 127.0.0.1

9.2 MailScanner 규칙

다음 파일의 모든 줄의 항목은 탭으로 구분되어야 합니다!

cd /etc/MailScanner/
touch filename.rules filetype.rules filename.rules.allowall.conf filetype.rules.allowall.conf rules/content.scanning.rules

vi filename.rules
From:          127.0.0.1       /etc/MailScanner/filename.rules.allowall.conf
FromOrTo:      default         /etc/MailScanner/filename.rules.conf
vi filetype.rules
From:          127.0.0.1       /etc/MailScanner/filetype.rules.allowall.conf
FromOrTo:      default         /etc/MailScanner/filetype.rules.conf
vi filename.rules.allowall.conf
allow   .*      -       -
vi filetype.rules.allowall.conf
allow   .*      -       -
vi rules/content.scanning.rules
From:           127.0.0.1      no
FromOrTo:       default        yes

이제 격리 디렉토리에 대한 권한을 조정합니다.

chown -R postfix:apache /var/spool/MailScanner/quarantine/
chmod g+rws /var/spool/MailScanner/quarantine/

참고: 필요한 MailScanner 설정은 이미 4단계에 포함되어 있습니다.

10 시작

chkconfig –level 2345 MailScanner on
service MailScanner start && tail -f /var/log/maillog

출력에서 다음과 같은 줄을 볼 수 있어야 합니다:

Mar 6 07:33:21 server1 MailScanner[8594]: Config: calling custom init function SQLBlacklist
Mar 6 07:33:21 server1 MailScanner[8594]: Starting up SQL Blacklist
Mar 6 07:33:21 server1 MailScanner[8594]: Read 0 blacklist entries
Mar 6 07:33:21 server1 MailScanner[8594]: Config: calling custom init function MailWatchLogging
Mar 6 07:33:21 server1 MailScanner[8594]: Started SQL Logging child
Mar 6 07:33:21 server1 MailScanner[8594]: Config: calling custom init function SQLWhitelist
Mar 6 07:33:21 server1 MailScanner[8594]: Starting up SQL Whitelist
Mar 6 07:33:21 server1 MailScanner[8594]: Read 1 whitelist entries

11 남은 구성

https://www.howtoforge.com/virtual-users-and-domains-postfix-courier-mysql-centos5.1 14단계부터 끝까지.

메일을 시작, 중지 또는 재시작하는 명령이 변경되었음을 기억하십시오!

MailScanner 및 Postfix 시작:

service MailScanner start

MailScanner 및 Postfix 재시작:

service MailScanner restart

MailScanner 및 Postfix 중지:

service MailScanner stop

12 Mailwatch 웹 인터페이스

이제 http://mailwatch.example.com를 통해 mailwatch 웹 인터페이스에 접근할 수 있습니다. 7.4단계에서 생성한 사용자 이름 및 비밀번호로 로그인하십시오.

먼저 SpamAssassin 규칙 설명 및 GeoIP 데이터베이스를 업데이트해야 합니다. “Tools/Links” 버튼을 클릭하면 두 가지 옵션을 찾을 수 있습니다.

13 링크

VM

첨부된 VM은 다음과 같이 구성되어 있습니다.

  • IP: 192.168.0.110
  • 게이트웨이: 192.168.0.2
  • 모든 비밀번호: howtoforge
  • Mailwatch 웹 관리자: olli
Share: X/Twitter LinkedIn

새 게시물을 받은 편지함에서 받기

스팸은 없습니다. 언제든지 구독 해지 가능합니다.