메뉴 건너뛰기

Bigdata, Semantic IoT, Hadoop, NoSQL

Bigdata, Hadoop ecosystem, Semantic IoT등의 프로젝트를 진행중에 습득한 내용을 정리하는 곳입니다.
필요한 분을 위해서 공개하고 있습니다. 문의사항은 gooper@gooper.com로 메일을 보내주세요.


*출처 : http://m.blog.naver.com/bansd2/40121228968


제목과 같은 프로그램을 이용하는 이유는 메일서버를 만들기 위함이며, saslauthd는 smtp인증을 받아야지만

메일을 보낼 수 있게 하기 위한 인증 모듈이다.

 

아웃룩에서 보내는 메일을 smtp인증을 받게 하기 위해서 사용을 하였다.

 

우분투에서 sendmail과 dovecot, saslauthd를 설치하기는 쉽다.

(sendmail 설치는 https://www.gooper.com/ss/index.php?mid=bigdata&category=2809&document_srl=3456 를 참조한다)


설치는 전부 root권한으로 진행하였다.

 

#apt-get install libsasl2-2 libsasl2-modules sasl2-bin

#apt-get install dovecot-pop3d dovecot-imapd

 

위와같이 하면 설치는 완료다.

 

문제는 설정!!!

 

이것때문에 난 한달에 가까운 시간을 버렸다.

 

일단 smtp인증을 받기 위해서 sendmail.cf 과 sendmail.mc 를 수정한다.

 

먼저 sendmail.mc 수정

 

dnl # These are the allowed auth mechanisms. To allow relaying for a userdnl # that uses one of them, you must set TRUST_AUTH_MECH.define(`confAUTH_MECHANISMS', `LOGIN PLAIN DIGEST-MD5 CRAM-MD5')dnldnl # These are the SMTP auth mechanisms which, if used,dnl # Sendmail will allow relaying for. TRUST_AUTH_MECH(`LOGIN PLAIN DIGEST-MD5 CRAM-MD5')dnl 

위 문장을 없으면 추가하고 있으면 위 문장과 같이 만든다.

그리고 Addr=127.0.0.1 이라고 나와있는 부분이 있을 텐데 이걸 전부 지워주거나 0.0.0.0으로 변경해준다.

그래야지만 다른 곳에서 아웃룩 등을 이용하여 메일 사용이 가능해진다.

 

저장 후 콘솔에서 m4 /etc/mail/sendmail.mc > /etc/mail/sendmail.cf 입력

 

그 다음은 sendmail.cf 확인

 

O AuthMechanisms=LOGIN PLAIN DIGEST-MD5 CRAM-MD5  <-주석 되어 있는지 확인 후 주석있으면 제거

 

그 다음은 local-host-names 수정

/etc/mail/local-host-names 파일을 메일을 받을 도메인으로 수정해준다.

 

xxxx.co.kr처럼

 

마지막으로 Sendmail.conf 수정(없으면 생성)

/usr/lib/sasl2/Sendmail.conf 파일을 수정 및 생성하여 아래 내용을 기입한다.

pwcheck_method: saslauthd

 

이상으로 설정이 끝났다.

센드메일과 sasl을 재시작(시작)한다.

 

/etc/init.d/sendmail start(또는 restart)

(우분투는 service sendmail restart)


/etc/init.d/saslauthd start(또는 restart)

(우분투는 service sendmail restart)

 

원래는 access도 수정해야 하지만 smtp인증을 받으면 굳이 access에 RELAY설정을 하지 않아도

메일이 잘 간다.

스팸때문에 sasl를 설정하는 것이라면 access를 아무 것도 없이 하는 것도 좋은 방법인 것 같다.

 

 

 dovecot 설정

 

/etc/dovecot/dovecot.conf를 수정한다.

 

protocols = imap imaps pop3 pop3s

 

dovecot이 메일을 받을 프로토콜을 설정하는 구문이다. pop3만 넣어도 무관하다.

 

listen = *

 

위처럼 하면 모든 포트를 다 열고 대기하겠다는 뜻인것 같다. 자세히는 모르겠다.

 

disable_plaintext_auth = no

 

인증을 사용할지 안 할지를 설정하는 것 같은데 현재는 smtp인증을 사용하므로 no라고 해주면 되겠다.

(안해줘도 되는지는 자세히 모름)

 

mail_location = mbox:~/Maildir:INBOX=/var/mail/%u

 

마지막 설정이다. 메일을 보관할 폴더를 설정하는 부분이다. maildir로 설정할 수도 있는데 현재 dovecot(이 글을 쓰는 시점의 dovecot)은 mbox로 해야지만 제대로 작동한다. ~/Maildir <- 이 부분을 메일을 받기 원하는 디렉토리로 지정하면 된다.

 

설정이 다 끝나면 /etc/init.d/dovecot restart(또는 start)를 해주면 된다.


* pop3테스트(메일 주소로 사용할 메일주소(예, admin)의 OS계정이 미리 생성되어 있어야하며 

해당 계정의 home디렉토리 밑에 /home/admin/Maildir폴더가 메일주소로 사용할 계정으로 (예, admin) 소유자가 

설정되어 있어야 한다)


telnet localhost 110을 실행해서 접속이 되면 실행중인것이다.

(오류발생시 : https://www.gooper.com/ss/index.php?mid=bigdata&category=2809&page=1&document_srl=3497 참조)

 

이제 모든 설정이 다 끝났다. 아웃룩에서 smtp인증을 선택하고 메일을 보내면 끝이다.


추가 : dovecot에 SSL설정하는 방법 : http://blog.naver.com/jinkalee_new/220857802628




 

번호 제목 글쓴이 날짜 조회 수
» sendmail + dovecot(pop3) + saslauthd 설치 총관리자 2017.06.11 209
380 [Jsoup]특정페이지를 jsoup을 이용하여 파싱하는 샘플소스 총관리자 2017.04.18 210
379 [shellscript] 함수에 배열을 인자로 주어서 처리하는 방법 총관리자 2019.07.16 210
378 beeline으로 접근시 "User: gooper is not allowed to impersonate anonymous (state=08S01,code=0)"가 발생하면서 "No current connection"이 발생하는 경우 조치 총관리자 2018.04.15 212
377 숭실대 교수님등 강의영상(바이오데이터마이닝, 빅데이터분산컴퓨팅, 컴퓨터 그래픽스, 데이터베이스응용및 프로그램밍, 데이터베이스, 의생명영상처리, 웹그로그래밍, 데이터마이닝, 컴퓨터구조) file 총관리자 2017.06.13 213
376 lagom의 online-auction-java프로젝트 실행시 외부의 kafka/cassandra를 사용하도록 설정하는 방법 총관리자 2017.10.12 215
375 AIX 7.1에 Hadoop설치(정리중#2) 총관리자 2016.09.20 218
374 우분투 서버에 GUI로 접속하기 file 총관리자 2018.05.27 218
373 /etc/logrotate.d 을 이용한 catalina.out 나누기 file 총관리자 2017.01.19 221
372 프로그래밍 언어별 딥러닝 라이브러리 정리 file 총관리자 2016.10.05 222
371 [sentry]role부여후 테이블명이 변경되어 오류가 발생할때 조치방법 총관리자 2018.10.16 222
370 lagom의 online-auction-java프로젝트 실행시 "Could not find Cassandra contact points, due to: ServiceLocator is not bound" 경고 발생시 조치사항 총관리자 2017.10.12 223
369 Hue impala에서 query결과를 HDFS 파일로 export시 AuthorizationException: User 'gooper1234' does not have privileges to access: db명.query_impala_123456 총관리자 2022.03.17 226
368 [shell script] 파일을 한줄씩 읽어서 파일내용으로 명령문 만들고 실행하는 shell script예제 총관리자 2017.02.21 227
367 [postgresql 9.x] PostgreSQL Replication 구축하기 총관리자 2018.07.17 229
366 Error: java.lang.RuntimeException: java.lang.OutOfMemoryError 오류가 발생하는 경우 총관리자 2018.09.20 229
365 Cloudera설치중에 "Error, CM server guid updated"오류 발생시 조치방법 총관리자 2018.03.29 230
364 impala테이블 쿼리시 max_row_size 관련 오류가 발생할때 조치사항 총관리자 2020.02.12 230
363 hive 0.13.1 설치 + meta정보는 postgresql 9.3에 저장 총관리자 2015.04.30 231
362 [개발] 온라인 IDE - 개발 환경 구축 없어 어디서나 웹브라우저로 개발하기 총관리자 2022.05.02 233

A personal place to organize information learned during the development of such Hadoop, Hive, Hbase, Semantic IoT, etc.
We are open to the required minutes. Please send inquiries to gooper@gooper.com.

위로