1. 시 작
- 이 문서는 FreeBSD에서 smtp 서버를 설치하는 문서이다. FreeBSD가 아닌 다른 OS라면 이 문서를 보지않을것을 권한다.
필자의 시스템 환경은 FreeBSD 4.4-stable 이다.
2. imap-uw 설치
- FreeBSD를 설치하면 sendmail은 기본 패키지로 설치가 되어 있다.
먼저 포트로 imap-uw 를 설치한다.
$ cd /usr/ports/mail/imap-uw
$ make install clean
설치후 /etc/inetd.conf 파일을 열고 아래 3줄을 추가 합니다.
pop2 stream tcp nowait root /usr/local/libexec/ipop2d ipop2d
pop3 stream tcp nowait root /usr/local/libexec/ipop3d ipop3d
imap4 stream tcp nowait root /usr/local/libexec/imapd imapd
inetd 를 재 실행 한다
$ killall -HUP inetd
pop3와 imap가 정상적으로 구동하는지 알아보자.
$ telnet localhost 110
Trying ::1...
telnet: connect to address ::1: Connection refused
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
+OK POP3 localhost v2001.76 server ready
정상적으로 실행되고 있습니다. 다음은 imap가 정상적인지 알아봅니다.
$ telnet localhost 143
Trying ::1...
telnet: connect to address ::1: Connection refused
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
* OK [CAPABILITY IMAP4REV1 LOGIN-REFERRALS AUTH=LOGIN] localhost IMAP4rev1 2001.307 at Tue, 18 Sep 2001 17:55:37 +0000 (GMT)
잘되고 있군요...
3. cyrus-sasl 설치
- sasl은 인증된 유저만 메일서버를 통해서 메일을 보낼수 있게 하는 것 입니다.
cyrus-sasl을 설치합니다.
$ cd /usr/ports/security/cyrus-sasl
$ make install clean
설치가 끝났으면 다음으로 넘어갑니다.
4. sendmail 재 컴파일
- 센드메일을 재 컴파일 해야 합니다.
$ cp /etc/defaults/make.conf /etc/make.conf
/etc/make.conf 파일을 열구 아래 3줄을 추가 합니다.
SENDMAIL_CFLAGS+=-I/usr/local/include -I/usr/local/include/sasl -DSASL
SENDMAIL_LDFLAGS+=-L/usr/local/lib -L/usr/local/lib/sasl
SENDMAIL_LDADD+=-lsasl
이제 sendmail을 다시 컴파일 합니다.
$ cd /usr/src/usr.sbin/sendmail
$ make clean all install
컴파일이 끝났으면 /etc/mail/sendmail.cf 파일에다 아래 2줄을 추가합니다.
C{TrustAuthMech}DIGEST-MD5 CRAM-MD5 LOGIN
O AuthMechanisms=LOGIN GSSAPI KERBEROS_V4 DIGEST-MD5 CRAM-MD5
이제 외부메일을 받고 메일을 외부에 보내는 일을할수있도록 설정해줘야 합니다.
2nom.net이 2nom.net의 받는메일 서버이면 /etc/mail/local-host-names 라는 파일에 mail.2nom.net 를 한줄 추가하시면 됩니다.
그리고 /etc/access 파일에 아래와 같이 메일을 보낼수 있는 IP 대역을 적습니다.
127. RELAY
211.219.49.45 RELAY
access파일을 변경후에는 access db를 새로 생성해야 합니다.
$ makemap hash access < access
메일서버를 공개하시려면 /etc/sendmail.cf 파일안에 보시면
# anything else is bogus
R$* $#error $@ 5.7.1 $: "550 Relaying denied"
이런 부분이 있을것입니다. 이 부분을 주석(#) 처리하시면 됨니다.
하지만 메일서버를 공개하시면 스팸메일을 중계서버로 이용될수 있으니 권하지 않습니다.
이제 모든 설정이 끝났습니다. sendmail에 유저 인증부분이 생겼는지 테스트 해보죠.
$ killall sendmail
$ sendmail -bd -q30m &
$ telnet localhost 25
Trying ::1...
telnet: connect to address ::1: Connection refused
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
220 2nom.net ESMTP Sendmail 8.11.6/8.11.5; Tue, 18 Sep 2001 18:10:38 GMT
ehlo localhost
250-2nom.net Hello localhost [127.0.0.1], pleased to meet you
250-ENHANCEDSTATUSCODES
250-8BITMIME
250-SIZE
250-DSN
250-ONEX
250-ETRN
250-XUSR
250-AUTH LOGIN <-- 이 부분이 보이시면 성공 하신겁니다.
250 HELP
마지막으로...아래 파일을 실행 하세요
$ /usr/local/etc/rc.d/pwcheck.sh start
패스워드 파일을 체크하는 것 입니다.
이게 실행되어야 아웃룩에서 보내는메일서버에 로그인을 할수 있습니다.
이 문서에 대해 잘못된점 혹은 질문이 있다면 메일로 보내주기 바란다.

댓글목록
등록된 댓글이 없습니다.