메일 서버 설정 · 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 -qcp /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.php9 격리 해제 수정
해제된 이메일이 다시 확인되지 않도록(다시 격리될 수 있음) 몇 가지 규칙을 추가/수정해야 합니다.
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.rulesFrom: 127.0.0.1 /etc/MailScanner/filename.rules.allowall.conf
FromOrTo: default /etc/MailScanner/filename.rules.confvi filetype.rulesFrom: 127.0.0.1 /etc/MailScanner/filetype.rules.allowall.conf
FromOrTo: default /etc/MailScanner/filetype.rules.confvi filename.rules.allowall.confallow .* - -vi filetype.rules.allowall.confallow .* - -vi rules/content.scanning.rulesFrom: 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 startMailScanner 및 Postfix 재시작:
service MailScanner restartMailScanner 및 Postfix 중지:
service MailScanner stop12 Mailwatch 웹 인터페이스
이제 http://mailwatch.example.com를 통해 mailwatch 웹 인터페이스에 접근할 수 있습니다. 7.4단계에서 생성한 사용자 이름 및 비밀번호로 로그인하십시오.

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

13 링크
- CentOS: http://www.centos.org/
- MailScanner: http://www.mailscanner.info
- Mailwatch: http://mailwatch.sourceforge.net
VM
첨부된 VM은 다음과 같이 구성되어 있습니다.
- IP: 192.168.0.110
- 게이트웨이: 192.168.0.2
- 모든 비밀번호: howtoforge
- Mailwatch 웹 관리자: olli
새 게시물을 받은 편지함에서 받기
스팸은 없습니다. 언제든지 구독 해지 가능합니다.