디지털콘텐츠 No.1 (주)아사달 고객지원
내정보 SI 도메인 호스팅 디자인몰 솔루션몰 홈페이지몰 모바일 디자인센터 게임 고객지원
로그인 회원가입 도메인정보조회
내정보 관련
도메인등록
등록정보변경
네임서버
도메인평가/매매
도메인정보조회
한글인터넷주소
웹호스팅
리눅스호스팅
윈도우즈호스팅
서버호스팅
이메일
부가서비스
파킹/포워딩
전체보기
게시판
회원관리
설문조사
접속통계
메뉴관리
팝업/배너
웹메일
아사프로
게시판
회원관리
설문조사
접속통계
아사몰
디자인몰 잦은 질문
CP입점문의
솔루션구매
솔루션기능
사이트관리
솔루션연동
기타
홈페이지몰 잦은 질문
유지보수 잦은질문
서비스요금
카드결제
환불관련
예치금
LIST DETAIL GALLERY VOTE MODIFY DELETE  
분류 : 서버호스팅  제목: Qmail을 이용한 SMTP 운용
글쓴이:이광수 날짜: 2006.04.14. 16:42:15 조회:24532 추천:0 글쓴이IP:
파일:     첨부파일이 없습니다.
Qmail을 이용한 SMTP 운용

1.qmail, spamGuard 설치
qmail 설치(qmail-scanner, smtp-auth 포함) :
http://qmail.kldp.org

spamGuard 설치는 이전글을 참조하세요!!! ^^

큐메일 설치시 리눅스 설치 후 퍼미션을 변경하지 않고 설치해야 합니다.

2. qmail 운용

2.1 첨부파일 용량
/var/qmail/control/databytes 에 바이트 단위로 입력합니다. 실제 첨부 가능 용량은 설정 용량의 70% 정도로 보면 됩니다. 설정 후 /etc/init.d/qmail reload or restart

2.2 동시 접속자 수 제한
# cat /var/qmail/supervise/qmail-smtpd/run
1 #!/bin/bash
2 QMAILQUEUE="/var/qmail/bin/qmail-scanner-queue.pl"
3 export QMAILQUEUE
4 ALIAS_UID=`id -u alias`
5 ALIAS_GID=`id -g alias`
6 exec /usr/local/bin/softlimit -m 9000000
7 /usr/local/bin/tcpserver -v -p –c200 -x/etc/tcp.smtp.cdb -u $ALIAS_UID -g $ALIAS_GID 0 25
8 /var/qmail/bin/qmail-smtpd webmail.kobis.net
9 /bin/cmd5checkpw /bin/true 2>&1

7번 라인의 –c100 을 변경하고 재시작하면 됩니다. 만약 설정하지 않는다면 기본값은 40입니다.

2.3 동시 처리량 제한
# cat /var/qmail/control/concurrencyremote
50
동시 처리량을 제한하고자 하면 값을 적절히 변경해 주면 됩니다. 로컬에서 발송되는 메일에 대한 처리량은 /var/qmail/control/concurrencylocal 에 설정하면 됩니다.
concurrencyremote는 값은 동시 메일 발송량 즉 참고인 수와 관련이 있는 것 같습니다.

기타 설정 파일에 대한 설명은 다음 표를 참조하시기 바랍니다.

Control 파일 Default 사용 설명
rcpthosts 없음 qmail-smtpd 메일을 받아들일 도메인(들)
badmailfrom 없음 qmail-smtpd 이 메일주소로 부터 오는 메일은 553 sorry, your envelope sender is in my badmailfrom list 라는 메세지와 함께 무조건 User unknown으로 bounce 한다.
bouncefrom MAILER
-DAEMON qmail-send bounce 할때 메일의 from: 헤더에 들어갈 유저 이름.
bouncehost me qmail-send bounce 할때 메일의 from: 헤더에 들어갈 호스트 이름.
concurrencylocal 10 qmail-send 로컬 메일 배달시 qmail-send의 동시 최대 프로세스의 수를 조절
concurrencyremote 20 qmail-send 리모트 메일 배달시의 qmail-send 동시 최대 프로세스 수를 조절
databytes 0 qmail-smtpd 메일의 최대 크기(byte, 0 = 무제한)
doublebouncehost me qmail-send double bounce 된 메일을 수신할 호스트
doublebounceto postmaster qmail-send double bounce 된 메일을 받을 유저
envnoathost me qmail-send 메일주소에 @ 가 명시되지 않았을 경우의 디폴트 도메인 이름
helohost me qmail-remote SMTP HELP 명령에 표시될 호스트 이름
localiphost me qmail-smtpd 로컬 IP 주소가 대체될 이름
locals me qmail-send 로컬로 인식하며 배달할 도메인(들)
me 시스템의 FQDN 다른 콘트롤 파일을 위해 쓰임
morercpthosts 없음 qmail-smtpd 두번째 rcpthosts 파일
percenthack 없음 qmail-send "%"-형식의 릴레이를 사용 할 수 있는 도메인
plusdomain me qmail-inject domain substituted for trailing "+"
qmqpservers 없음 qmail-qmqpc QMQP 서버의 IP 주소
queuelifetime 604800 qmail-send 메세지가 메일 큐안에 머물 수 있는 시간 (초단위)
smtpgreeting me qmail-smtpd SMTP greeting message
smtproutes 없음 qmail-remote artificial SMTP routes
timeoutconnect 60 qmail-remote SMTP 연결 대기 시간 (초)
timeoutremote 1200 qmail-remote 리모트 서버 연결 대기 시간 (초)
timeoutsmtpd 1200 qmail-smtpd SMTP client 대기 시간 (초)
virtualdomains 없음 qmail-send 가상 도메인들과 유저들
defaultdomain me qmail-inject 기본 도메인 이름
defaulthost me qmail-inject 기본 호스트 이름
idhost me qmail-inject Message-ID 에 사용될 호스트 이름

2.4 특정 도메인 발송 제한
/var/qmail/control/badmailfrom에 해당 이메일이나 도메인을 추가하고 큐메일을 재시작할 필요는 없습니다.
spammer@spammer.com <- 메일 주소
@nospam.com < - 도메인

2.5 메일큐 삭제
qmHandle이라는 프로그램을 이용해서 서버에 쌓인 큐를 삭제할 수 있습니다.
/var/qmail/bin/qmHandle에 존재합니다.
사용법:
qmHandle v1.0.0
by Michele Beltrame
-l : 리스트 보기
-L : 로컬 큐 보기
-R : 리모트 큐 보기
-s : 상태 보기
-vN : 해당 번호의 메시지 보기
-dN : 해당 번호의 메시지 삭제
-D : 리모드&로컬 모든 큐 삭제
Additional (optional) parameters are:
-c : 컬러 출력
-N : 해당 번호의 메시지 보기
(-l, -L or &#8211;R 함께 사용 가능함)

2.6 메일 서버 인증 에러 메시지 편집
# cat /usr/local/src/qmail/qmail-1.03/qmail-smtpd.c
/* void err_nogateway() { out("553 sorry, that domain isn't in my list of allowed rcpthosts (#5.7.1)rn"); } */
void err_nogateway() { out("553 보내는 메일 서버에 접속 중 인증 에러가 발생하였습니다. 보내는 메일 서버 인증을 요청하시기 바랍니다. 감사합니다. Tel: 02-xxxx-0xxx, Email: webmaster@xxx.net (#5.7.1)rn"); }
수정이 끝났으면 큐메일을 멈춘 후 make clean && make setup check 로 재컴파일 설치해 주면 됩니다.

2.7 인증 아이디 패스워드 설정
# cat /etc/poppasswd

smtp_id:smtp_password

위와 같이 아이디:패스워드 방식으로 추가하시면 됩니다.

3. qmailscanner 운용
3.1 rule 적용
# cat /var/spool/qmailscan/quarantine-attachments.txt

.pif 0 PIF files not allowed per Company security policy
첨부파일 확장자가 .pif이고 사이즈가 0인 메일을 필터링합니다. 실제 사이즈가 정확히 체크되지 않는 관계로 불필요한 확장자를 제한하는 방식이 됩니다.

# W32.Frethem.J@mm
.*Re: Your password!.* Virus-Subject: Your message may contain W32.Frethem.J@mm
제목에 해당 문자열이 있을 경우입니다.

# Refuse to Portal Siteㅁ
.*@hanmail.net.* Virus-RCPTTO: 한메일 메일 발송 불가…..
수신지 메일 주소로 메일을 필터링합니다.

룰 추가시 주의하실 점은 센드메일과 마찬가지로 각 필드는 탭으로 구분해야 합니다.

룰 추가 후 데이터 베이스를 생성한 후 큐메일을 재시작합니다.
# /var/qmail/bin/qmail-scanner-queue.pl -g
perlscanner: generate new DB file
perlscanner: total of 20 entries.

3.2 바이러스 로그 삭제
다음과 같이 크론에 등록하여 바이러스 로그를 주기적으로 삭제합니다.
0 5 * * * /bin/rm -rf /var/spool/qmailscan/viruses/new/* > /dev/null 2>&1
7 5 * * * echo > /var/spool/qmailscan/qmail-queue.log > /dev/null 2>&1

3.3 바이러스 알림 메일 삭제
바이러스에 감염된 메일이 발송될 경우 발송자 및 root에게 메일이 발송됩니다. 따라서 root, postmaster로 오는 메일을 postman이라는 계정을 생성 후 해당 계정의 메일을 주기적으로 삭제합니다.

포워딩 설정
# ls &#8211;al /home/vpopmail/domains/mail.kobis.net
drwx------ 6 vpopmail vchkpw 4096 Apr 23 11:43 .
drwx------ 3 vpopmail vchkpw 4096 Apr 23 11:20 ..
-rw------- 1 vpopmail vchkpw 34 Apr 23 11:42 .dir-control
drwx------ 3 vpopmail vchkpw 4096 Apr 23 11:25 kobis
drwx------ 3 vpopmail vchkpw 4096 Apr 23 11:42 postman
drwx------ 3 vpopmail vchkpw 4096 Apr 23 11:20 postmaster
-rw------- 1 vpopmail vchkpw 55 Apr 23 11:20 .qmail-default
-rw-r--r-- 1 root root 24 Apr 23 11:43 .qmail-postmaster
-rw-r--r-- 1 root root 24 Apr 23 11:43 .qmail-root
drwx------ 3 vpopmail vchkpw 4096 Apr 23 11:25 root
-rw------- 1 vpopmail vchkpw 462 Apr 23 11:42 vpasswd
-rw------- 1 vpopmail vchkpw 2598 Apr 23 11:42 vpasswd.cdb
-rw------- 1 vpopmail vchkpw 0 Apr 23 11:42 .vpasswd.lock

여기서 .qmail-root, .qmail-postmaster 파일에 포워딩 설정을 합니다.
# cat /home/vpopmail/domains/mail.kobis.net/.qmail-root
&postman@mail.kobis.net

postman에게 오는 메일을 크론에 등록하여 주기적으로 삭제합니다.
*/5 * * * * /bin/rm -rf /home/vpopmail/domains/mail.kobis.net/postman/Maildir/new/* > /dev/null 2>&1

4. spamGuard 운용
위 설치 문서를 참고하시면 되면 주기적으로 메일 로그를 감시하도록 크론에 등록해 줍니다.
# spamGuard설정
*/5 * * * * /usr/local/bin/spamGuard -w 100 -b 210 -p 1000 > /dev/null 2>&1
LIST DETAIL GALLERY VOTE MODIFY DELETE  


 
글쓴이제목내용
전체글:6  방문수:3053378
RELOAD VIEW DEL DETAIL GALLERY
6 보내는 메일 용량과 받는 메일 용량을 제한하고 싶을 때    이광수2006.04.14. 16:48:2121591 
5 CentOS 설치 후 한글이 깨질 때    이광수2006.04.14. 16:46:5219778 
4 Qmail을 이용한 SMTP 운용    이광수2006.04.14. 16:42:1524532 
3 사이트별 allow_url_fopen 허용방법    이광수2006.04.14. 16:29:4319964 
2 서버호스팅 이용시 서버는 누가 관리하나요?    서버관리자2001.07.27. 11:07:0419862 
1 서버가 해킹을 당한 것 같습니다.    서버관리자2001.07.26. 19:07:4219370 
RELOAD VIEW DEL DETAIL GALLERY
배경이미지
배경이미지 회사소개 사진모음 협력사 오시는 길 이용약관 개인정보취급방침 전화상담안내 게시판 문의 모바일 한국어 / 日本語 / 中文 / ENGLISH / 사이트맵 배경이미지
배경이미지
배경이미지 사이트명 : 아사달닷컴 | 회사명 : (주)아사달 | 대표이사 : 서창녕 | 대표전화 : 1544-8442 | 팩스번호 : 02-2026-2008
사업자등록번호 : 206-81-24351 | 법인등록번호 : 110111-1940504 | 통신판매업신고 : 제18-890호 | 벤처확인번호 : 051134532200563
(우편번호 : 08507) 서울시 금천구 가산디지털1로 168 우림라이온스밸리 A동 8층 (주)아사달
(우편번호 : 153-786) 서울시 금천구 가산동 371-28번지 우림라이온스밸리 A동 8층 (주)아사달
Copyright ⓒ asadal.com All rights reserved.
인터넷 익스플로러 구글 크롬 모질라 파이어폭스
애플 사파리 오페라 넷스케이프
맨위로
디지털콘텐츠 No.1 (주)아사달