Skip to content

2009.10.20 17:27

SendMail 설정 하기

조회 수 10466 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄 첨부
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄 첨부

SendMail 설정 파일

1.jpg

 
SendMail에 사용되는 명령 정보
w 클래스에 값을 지정. 여러 명령을 복수 사용 가능
클래스로 저으이한 파일을 불러 읽음
내부 매크로 변수 j에 특정한 값을 정의함
옵션을 지정함
신뢰 가능한 사용자 지정
메시지 우선 순위
SMTP 메일러 지정
헤더(Header) 포맷
규칙 재쓰기
룰셋 정의
 
sendmail.cf 구성 내용
V9/Berkely
- 레벨 9 설정 파일 포맷을 정의하는 행
Cwlocalhost
- C 설정 명령어로 localhost를 w 클래스로 정의하는 행
Fw/etc/mail/local-host-names
- F 설정 명령어로 /etc/mail/local-host-names 파일을 w클래
  스로 정의한 행
Kvirtuser hash -o /etc/mail/virtusertable
- 가상 유저 테이블을 작성하는 파일을 정의
Kaccess hash -o /etc/mail/access
- 특정 호스트나 도메인이 Sendmail로 접근하는 것을 제어하는 파일을 정의
FR -o /etc/mail/relay-domains
- 정의된 relay-domains 파일은 릴레이를 허락할 도메인을 설정
DnMAILER_DAEMON
- Sendmail 시스템 에러 메시지를 보낼 사람의 이름을 설정
O SevenBitlnput
- 설정 값이 True이면 7비트로 받아들임
O EightBitMode
- 8비트 데이터로 처리
O AliasFile
- 메일 별칭 파일 이름을 지정
O MaxMessageSize

- MaxMessageSize

- 메일 메시지의 최대 크기 용량

- 단위는 Byte이며, 1,000,000Byte보다 큰 메시지는 처리되지 않는다.

- 주석 처리하면 메시지 크기의 제한이 없다.

메일사용 공간과 별개의 설정이다.

O DeliveryMode

- Sendmail을 background로 실행시키는 설정

  (기본값 사용 권장)

O LogLevel

- O LogLevel=9

- 기본 로그 레벨 설정(기본값 사용 권장)

- Level 설정 값

  1 : 최소 정보만 기록

  2 : 심각한 에러 또는 보안 정보 기록

  3 : 네트워크 에러 또는 접근 실패 기록

  4 : 잘못된 주소, forward 에러, 시간경과에 따른 접속 실패 기록

  5 : TCP 랩퍼에 의해 거부된 접속 기록

  6 : Vrft 명령에 의한 사용자 정보 파악 시도 기록

  7 : 메일 수신 실패 기록

  8 : 메일 수신 성공 기록

  9 : 시스템 자원 부족에 의한 수신 실패 기록

 10 : 데이터베이스에서 탐색되는 키 값 기록

 11 : NIS 에러 및 프로세스 종료 기록

 12 : SMTP 접속 기록

 13 : 비 사용자 쉘 및 디렉토리 퍼미션 설정 기록

 14 : 접속 거부에 대한 기록

 15 : 모든 SMTP 접속 기록

O ForwardPath
- 시스템 각 사용자가 자신에게 들어오는 메일을 다른 곳으로 포워딩할 수 있도록 Sendmail이 이 설정 파일을 찾게 지정
O Timeout.queuereturn
- 메일이 최종적으로 보내는 사람에게 반송되기까지의 시간을 설정
O Timeout.queuewarn
- 어떤 이유로 인해서 메일이 아직 배달되지 않을 경우 메일을 보낸 사람에게 경고 메일을 보내는 시간을 설정
O DefaultUser=8:12
    mailer의 기본 사용자와 유저이다. 즉 UID:GID 값이다.
O MinQueueAge=30m
    최소한 30분 동안 대기열에 있다가 처리한다.
O sitpGreetingMessage=$j Sendmail $v/$Z; $b
    Sendmail에 접속했을 때 나오는 환영 메시지이다.
 
sendmail.cf 파일 규칙
빈 행은 무시한다.
#으로 시작하는 행은 주석 처리로 무시한다.
C, D, F, G, K, M, O, P, R, S, V로 시작하는 행은 설정 행이며, 이들은 각각 하나의 설정 명령어이다.
하나의 빈 공간 또는 여러 개의 빈 공간으로 시작하는 행은 앞 행의 연장이다.
 
SendMail 수신자 설정
SendMail 수신자 설정은 sendmail.cw에서 설정한다.
sendmail.cw 파일은 sendmail.cf에서 클래스 설정 명령어 Ffh 설정한 w 클래스이다.
F 명령어는 file, pipe를 대상으로 클래스를 정의하며, C 명령어로 클래스를 정의할 경우에는 문자열이 그 대상이 된다.
정의된 w 클래스에는 들어오는 메일을 받을 수신자를 설정한다.
'메일을 받을 수신자'라 함은 자신의 메일 서버로 들어오는 메일에 대한 호스트 네임이나 도메인을 의미한다.
네임 서버에 메일 서버 주소에 오직 mail.linuone.co.kr 하나만 등록되어 있는 경우에 다음과 같이 설정한다.
# cat sendmail.cw
mail.linux.co.kr
 
SendMail Alias
SendMail Alias는 /etc/alias에서 설정한다.
mail Alias 기능이란 어느 계정으로 메일을 보냈을 때 그 계정으로 메일이 도착하지 않고, Alias 파일에 지정된 다른 계정으로 메일이 전송될 수 있게 하는 기능이다.
: 문자로 왼쪽 필드와 오른쪽 필드를 구분한다.
 바뀐 설정대로 mail alias를 사용하기 위해서는 newalias 명령을 이용하여 /etc/aliases를 /etc/aliases.db 파일로 저장해야 한다.
 다음과 같이 설정하면 webmaster에게 메일을 보내면 오른쪽에 지정한 linuxonr.linuxtwo 두 계정이 똑같이 받을 수 있다.
webmaster:linuxone,linuxtwo
 
가상 유저 테이블 (/etc/mail/virtusertable)
sendmail.cf 파일에서 Kviruser hash -o /etc/mail/virusertable로 설정된 내용이다.
들어오는 메일을 다른 곳(자신의 sendmail의 유저, 또는 완전히 다른 SMTP의 유저)으로 매핑하는 기능이다.
가상 유저를 주 대상으로 하지만 꼭 가상 유저만 해당되는 것은 아니다.
가상의 유저란 /etc/passwd 파일에 존재하지 않는 유저를 말한다.
alias는 ,(콤마)를 사용하여 여러 user를 등록할 수 있지만, 가상 유저 테이블은 일대일 매핑만 가능하다.
2.jpg
 
SendMail 접근 제어 (/etc/mail/access)
/etc/mail/access 파일은 Sendmail이 특정 호스트나 도메인에 대한 접근을 제어하는 설정 파일이다. 스팸메일을 차단하기 위해 기본으로 설정된 부분이다.
/etc/mail/access 파일은 sendmail.cf 파일에서 Kaccess hash -o /etc/mail/access로 지정된 파일이다.
3.jpg
 
Third Party Replay
→ SMTP 서버의 사용자가 아닌 사람이 SMTP 서버를 사용하는 것을 Third Party Replay 설정이라 한다.
→ Replay 기능을 이용하여 스패머는 스팸 메일을 불특정 다수에게 보낸다.
 
큐잉 서버
큐잉(Queueing) 서버는 큐잉 상태로 동작하는 서버를 말한다.
큐잉상태는 SendMail이 작업을 처리하기 위한 대기 행렬 상태를 말한다.
4.jpg
큐잉 서버 만들기 조건
   * /etc.mail/access에서 들어오는 메일에 대해서 REPLAY를 허용한다.
   * 메일 호스트가 중단되었을 때 큐잉 상태로 동작한다.
   * 해당 도메인 네임 서버에 MX 레코드로 지정한다.
   * sendmail과 같은 SMTP 서버를 구축해야 한다.
   * 메일을 직접 받지 않는다.
 
 
IMP를 이용한 웹 메일 구축
준비
   * SendMail이나 Qmail을 이용한 메일 서버가 구축되어 있어야 한다.
   * 웹 서비스가 가능해야 하고, 필요에 따라서는 데이터베이스가 구축되어 있어야 한다.
웹 메일 :
→ 별도의 프로그램 없이 인터넷이 가능하고 웹 브라우저만 있다면 어디서나 메일을 주고 받을 수 있는 프로그램이다.
* Internet Massaging Program
* PHP로 작성되어있으며, IMAP과 POP3 계정을 사용하는 웹메일이다.
* 누구나 사용할 수 있으며, 자유롭게 소스를 수정할 수 있다.
 
 IMP를 위해서 기본적으로 갖춰져야 할 것
→ imap을 지원하는 php 3.x 상위 버전
→ 아파치와 같은 php를 지원하는 웹 서버
→ imap 서버
→ Horde와 phplib가 설치되어야 함
→ SSL 웹 서버 (아파치 + mod_ssh + OpenSSL)
→ 데이터베이스
→ LDAP (서치엔진 사용에 필요)
 
SSL 이란?
   Secure Socket Layer의 약자도 두 개의 통신 Application 사이의 privacy와 reliablity를 보장하기 위한 암호화 프로토콜을 말한다.
 
Hord 설정
→ hord/phplib/local.inc를 수정해주면 된다.
→ MySQL을 사용하기 위해서 다음 두 클래스의 주석을 없애주고, 데이터베이스를 사용하지 않는다면, 그에 해당하는 부분의 클래스 주석을 없애주면 된다.
Class HordDB extends DB_sql { }
Class HordCT extends CT_sql { }
IMP 설정
→ secure.sh를 실행하여 test.php3와 setup.php3등의 설정을 위한 것들의 퍼미션을 변경해준다. 이것은 secure.sh에 의해 자동으로 수행할 수 있다.
sh ./secure.sh
 
 
※ 웹 메일 서비스를 제공하는 곳

List of Articles
번호 제목 글쓴이 날짜 조회 수
62 Sendmail에서 milter 사용으로 spam, 바이러스 막기 ADMINPLAY 2009.10.20 8309
61 telnet 을 사용한 메일서버 접속 ADMINPLAY 2009.10.20 8849
» SendMail 설정 하기 file ADMINPLAY 2009.10.20 10466
59 리턴메일 분석 ADMINPLAY 2009.10.20 9477
58 Jul 5 15:53:46 www sendmail[25566]: NOQUEUE: [211.192.... ADMINPLAY 2009.09.20 10907
57 sendmail : rejecting connections on port 25 : load ave... ADMINPLAY 2009.09.20 8640
56 g5M1EkS08293: timeout waiting for input from mx4.hanma... ADMINPLAY 2009.09.20 9097
55 Jun 26 11:15:15 www sendmail[27135]: g5Q2FES27135: col... ADMINPLAY 2009.09.20 8708
54 Jun 26 11:04:12 www sendmail[26626]: g5Q246I26624: g5Q... ADMINPLAY 2009.09.20 9024
53 /var/spool/mail root계정 및 일반계정 용량삭제 ADMINPLAY 2009.08.23 12581
52 리눅스 특정 계정 받는메일,보내는메일 사용 막기 ADMINPLAY 2009.08.23 9325
51 vpopmail 과 mysql 연동 관련 장애 처리 ADMINPLAY 2009.08.08 8715
50 Sendmail 메일큐 활용하기.[멀티 큐 활용] ADMINPLAY 2009.07.18 9540
49 [스팸관련] 외국 RBL 확인하는 방법 ADMINPLAY 2009.07.18 8779
48 [SMTP(메일발송)] 에러코드 ADMINPLAY 2009.07.18 12180
47 메일서버(Sendmail) 구축 ADMINPLAY 2009.07.18 9737
46 하나의 서버에서 dns 와 rbldns 운영하기. ADMINPLAY 2009.07.14 9057
45 imap, ipop3 on xinetd ADMINPLAY 2009.06.12 8780
44 메일서버 구축하기(sendmail) ADMINPLAY 2009.06.12 9866
43 qmail + vpopmail 관리팁 ADMINPLAY 2009.06.04 8073
Board Pagination Prev 1 2 3 4 5 6 Next
/ 6

Copyright ADMINPLAY corp. All rights reserved.

abcXYZ, 세종대왕,1234

abcXYZ, 세종대왕,1234