반응형
출처 : http://coffeenix.net/board_print.php?bd_code=1712
-------------------------------------------------------------------------------------- - 작 성 자 : 김혁중(티니) [sky #at# tini4u.net] - 작 성 일 : 2010-10-06 - 사 이 트 : http://linux.tini4u.net/ - 원 제 목 : 큐메일 서버 구축 - ucspi-tcp, daemontools, knetqmail-1.06, vpopmail - 환 경 : CentOS 5.x, CentOS 6.x - 키 워 드 : ucspi-tcp, daemontools, knetqmail, qmail, vpopmail, libdomainkeys - 업데이트 : 2012-01-10 -------------------------------------------------------------------------------------- 이 문서는 knetqmail-1.06(qmail.kldp.net)을 기준으로 제작된 문서 입니다. knetqmail은 qmail.kldp.net 운영자이신 임은재님께서 netqmail 1.06에 toaster 패치 및 여러가지 추가적인 패치를 적용한 소스 입니다. 기존의 문서는 qmail 1.03 + cocktail 14 patch를 기준으로 제작되었으나, 시간이 흐르면서 각종 패치에 여러 변화가 있었고, 또한 일부는 outdate 되기도 했었습니다. 따라서 spf, domainkeys, mail submission 등을 반영한 knetqmail의 문서를 추가적으로 제작합니다. 물론 cocktail 패치에 문제가 있다는 것은 아닙니다. 지금도 수많은 서버에서 잘 사용되고 있습니다. 이 문서를 보시는 분들께서 불필요한 오해가 없기를 분명히 밝힙니다. 01. ucspi-tcp 0.88 [최신버전: http://cr.yp.to/ucspi-tcp/install.html] ucspi-tcp는 tcpserver와 tcpclient 전송제어 프로토콜(TCP client-server)을 구축하는데 좀더 편리하게 사용할 수 있도록 제작된 command-line 툴 입니다. 이 프로그램의 자세한 정보는 http://cr.yp.to/ucspi-tcp.html 이곳을 참조하시면 되겠습니다.
02. daemontools 0.76 [최신버전: http://cr.yp.to/daemontools/install.html] 02-1. daemontools 설치
※ 중간에 나오는 for... 부분은 쉘에서 직접 타이핑 하셔도 실행되는 부분 입니다. 설치과정 중간에 for문이 나왔다고 script를 만드는 수고를 하지 않으시길 바랍니다. 02-2. daemontools 시작 ※ CentOS 5.x 이하
※ CentOS 6.x 이상
03. qmail, vpopmail 에서 사용할 계정과 그룹 생성 ※ -r 옵션은 시스템 계정(uid 500 미만)으로 사용자를 생성하겠다는 의미 입니다.
04. vpopmail 5.4.30 [최신버전: http://sourceforge.net/projects/vpopmail/] ※ 큐메일의 chkuser 패치로 인하여 컴파일시 vpopmail의 라이브러리를 필요로 하게 됐습니다. 따라서 큐메일보다 vpopmail을 먼저 설치하도록 합니다. ※ vpopmail의 환경설정을 할때 qmail 디렉토리 및 몇몇 바이너리 위치(locate)를 필요로 합니다. 따라서 큐메일이 설치된 것처럼 속이기 위하여, fake 파일을 생성해 주도록 합니다. (단순히 큐메일의 위치만 설정 하기 때문에, fake 파일로 속이더라도 전혀 문제가 없습니다)
※ 필자는 관리의 편의상 cdb를 사용하지 않고, mysql database를 통하여 도메인 및 사용자 관리를 할 것 입니다. 따라서 필자와 같이 mysql과 연동해서 관리하고자 하시는 분들은 vpopmail 설치전에 mysql이 미리 설치되어 있어야 합니다. (만약 cdb를 사용하고자 하신다면 configure 옵션중 --enable-auth-module=mysql 부터 그 아래의 모든 옵션을 제거하시면 됩니다) ※ 환경설정(configure)시 mysql 관련 에러를 만나는 경우 incdir과 libdir의 경로를 mysql에 맞게 수정해주시기 바랍니다.
※ mysql과 연동하시는 분들만 하면 되는 설정 입니다. mysql의 접속 정보를 입력해주시면 됩니다.
※ fake 파일 삭제
05. libdomainkeys 0.69 [최신버전: http://sourceforge.net/projects/domainkeys/]
06. knetqmail 1.06 [최신버전: http://qmail.kldp.net/ - 문서버전: http://qmail.kldp.net/phpbb/viewtopic.php?f=4&t=8299] 06-1. knetqmail 1.06 설치
※ 만약 openssl의 설치 경로가 다르신 분은, 설치과정 중간에 나오는 openssl 경로 부분을 변경해주시면 됩니다. 06-2. 설정 파일 생성 ※ 큐메일 운영에 필요한 설정 파일을 생성하도록 하겠습니다. 원래 큐메일 소스에서 config script를 제공하고 있지만, 아주 기본적인 파일만 생성해주므로 필자는 필요한 파일을 직접 생성해주는 방법을 사용하도록 하겠습니다.
06-3. 큐메일 데몬을 위한 디렉토리 및 스크립트 생성
06-4. tcp.smtp 설정
06-5. qmail log 디렉토리 생성
06-6. qmail 구동 스크립트 생성
06-7. qmail 시작
※ 이로서 기본적인 큐메일 서버 사용이 가능해졌습니다. 도메인 및 이메일 계정을 생성한 뒤 사용하시면 됩니다. 이 아래는 번외편(?) 입니다. 즉, 설정하실분만 설정하셔서 사용하시면 됩니다. ------------------------------------------------------------------------------------------- ------------------------------------------------------------------------------------------- 07. SMTP SSL 인증서 생성 ※ SMTP를 SSL을 이용하여 사용할 경우 SSL 인증서가 필요 합니다. SSL 인증서는 RootCA 에서 유료로 구입을 해야 되지만, 테스트를 위하여 사설 인증서를 생성하도록 하겠습니다.
08. Domain Keys 세팅 ※ 도메인키 시스템은 Yahoo에서 주도하여 개발된 SSL 키를 이용한 메일 인증 방법 입니다. 자세한 사항은 http://antispam.yahoo.com/domainkeys 이곳을 참조하시기 바랍니다. 08-1. SSL Key 생성 ※ SSL 키는 도메인별로 생성해주는것이 좋습니다. 예제에서는 example.com 이라는 도메인에 대해서 세팅하겠습니다.
08-2. 큐메일 바이너리 교체 ※ 큐메일 서버가 메일 헤더에 비밀키로 Sign 하거나, 혹은 인증쿼리(Verify query)를 정상적으로 처리할 수 있도록 qmail-dk를 거치도록 바이너리 파일을 교체하도록 하겠습니다.
08-3. tcp.smtp 설정 변경 ※ knetqmail에 적용된 도메인키 패치는 기본적으로 SSL 인증서를 /etc/domainkeys/your-domain.com/default 에서 찾도록 되어 있습니다. 따라서 큐메일이 정상적으로 SSL 인증서를 찾을 수 있도록 환경변수를 설정하도록 하겠습니다. (참고로 인증서 파일명은 자유롭게 수정이 가능합니다. 단, DNS에 설정된 HostName과 동일해야 됩니다)
08-4. DNS 세팅 ※ 도메인 키 인증 시스템이 사용할 TXT 레코드를 추가하도록 합니다. TXT 레코드에 사용될 값은 SSL Key 생성 부분에서 추출한 public.txt 파일의 내용을 이용하시면 됩니다.
|
반응형
'개발자이야기 > QMail' 카테고리의 다른 글
외부 메일 client 접속 시 메모리 문제 발생 (0) | 2014.07.21 |
---|---|
qmail pop3 실패 해결 (0) | 2014.07.21 |
qmail 실행 오류 또는 설치 오류 (0) | 2014.07.21 |
QMail 설치 및 계정추가 (0) | 2014.07.18 |