티스토리 뷰

메일 서버를 운영할 때 외부에서 회사 서버에 접속해서 다른 회사의 이메일을 보내야 할 경우가 있습니다.

보안 상 제일 좋은 방법은 포털의 웹메일을 이용하게 하는 것이 좋겠지만, 또 업무를 위해서는 이런 경우도 종종 있을 수 있습니다. 이를테면 프로젝트 수행을 위해 별도 사무실을 장기간 운영해야 할 경우, 회사 메일 서버 이용에 제한을 받을 수 밖에 없습니다.

대개는 access.db를 이용해서 처음부터 접속하는 IP대역을 설정할 수도 있지만, SMTP에 대한 계정 인증 방식을 통해서도 가능합니다.

이 방법의 경우, 언제 어디서나 회사 메일 서버에 자기 계정만 있다면 이메일을 보낼 수가 있게 됩니다.

많이 쓰는 방법인데, 설명이 부족하거나 버전이 업데이트 되면서 현재 공개된 문서들로는 부족한 것 같습니다. 그래서, 다시 정리해서 올릴까 합니다.

참고로 제가 운영하는 환경은 CentOS 4.2입니다.

 

sendmail.mc에서 추가로 설정해야 할 부분

다음 부분을 찾아서 다음과 같이 바꿔줍니다.

1. dnl TRUST_AUTH_MECH(`EXTERNAL DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl ->
   TRUST_AUTH_MECH(`EXTERNAL DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl

   (앞의 dnl 삭제)

2. dnl define(`confAUTH_MECHANISMS', `EXTERNAL GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl ->
   define(`confAUTH_MECHANISMS', `EXTERNAL GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl

   (앞의 dnl 삭제)

3. dnl # DAEMON_OPTIONS(`Port=smtp,Addr=127.0.0.1, Name=MTA')dnl ->
   DAEMON_OPTIONS(`Port=smtp,Addr=0.0.0.0, Name=MTA')dnl

   (어디에서나 접속가능하도록 변경. sendmail이 8.12 버전으로 업그레이드 되면서 로컬 호스트에서만 발송가능하게끔 되어 있던 것을 주석처리해서 사용하다가, 이것을 어느 네트워크에서든지 접속할 수 있게끔 변경)

 

그리고 반드시 m4 명령으로 sendmail.cf는 다시 생성해야 하는 것은 아시겠죠?

다음과 같이 합니다 :

m4 /etc/mail/sendmail.mc > /etc/mail/sendmail.cf    

 

또는 간단히 make 만 쳐도 된다.

 

 

바뀐점

1. SASL 보안 모듈은 SASL2로 버전업되었습니다. 따라서 /usr/lib/sasl에서 Sendmail.conf를 설정하는 것이 아니고, /usr/lib/sasl2에서 설정해야 합니다. 그리고, 이미 Sendmail.conf가 만들어져 있습니다.(다시 설정할 필요가 없음)

 

 

서비스 추가 또는 확인해야 할 점

서비스 데몬에서 saslauthd 서비스가 실행 중인지 확인하십시오. 실행되어 있지 않으면 SMTP 인증이 되지 않아 계속 인증 확인창이 뜰 것입니다.

ntsysv 명령을 실행시켜 saslauthd 항목을 찾아 자동시작데몬으로 체크해주십시오.

실행할 때는 다른 서비스들과 마찬가지로 다음과 같이 실행합니다 :

service saslauthd start

댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크