커피닉스, 시스템 엔지니어의 쉼터 커피향이 나는 *NIX
커피닉스
시스템/네트웍/보안을 다루는 곳
* HanIRC의 #coffeenix 방
[ 장비 및 회선 후원 ]
HOME > 네트워크(network) > 메일 서버(mail) 도움말
검색 : 사이트 WHOIS 웹서버 종류

메일 필터링(스팸메일) / procmail (14, 글 18, 자료 8)

  큐메일 서버 구축 #8 - courier-imap 설치 작성일 : 2007/03/20 13:36
 
  • 글쓴이 : 티니 ( http://linux.tini4u.net/ )
  • 조회수 : 13930
          [ 이전화면 / 수정 ]   비밀번호 :     인쇄용 화면
      큐메일 서버 구축 #1 - 프롤로그
    큐메일 서버 구축 #2 - ucspi-tcp, daemontools 설치
    큐메일 서버 구축 #3 - qmail 설치
    큐메일 서버 구축 #4 - qmail 부트 스크립트
    큐메일 서버 구축 #5-1 - vpopmail + cdb 설치
    큐메일 서버 구축 #5-2 - vpopmail + mysql 설치
    큐메일 서버 구축 #6 - qmail과 vpopmail 시작
    큐메일 서버 구축 #7 - ezmlm과 qmailadmin 설치
    큐메일 서버 구축 #8 - courier-imap 설치
    큐메일 서버 구축 #9 - 다람쥐메일(SquirrelMail) 설치


    --------------------------------------------------------------------------------------
    - 작성자 : 김혁중(티니) [sky(golbangi or at)tini4u.net]
    - 작성일 : 2006-07-01
    - 사이트 : http://linux.tini4u.net/
    - 원제목 : 큐메일 서버 구축 #8 - courier-imap 설치
    - 환 경 : CentOS 4.3
    - 키워드 : qmail install
    --------------------------------------------------------------------------------------

    외부에서 급하게 메일을 확인할 일이 있을 경우 메일 클라이언트 프로그램 설정하기 귀찮을때가 있습니다.
    그럴 경우를 위해 보통 웹메일을 많이 이용하게 됩니다.
    웹메일을 설치하기에 앞서 웹메일을 구축하는데 필요한 imap를 설치하도록 하겠습니다.
    imap의 종류는 여러가지가 있는데 큐메일은 imap2002보다는 courier-imap와 연동이 잘 됩니다.
    따라서 필자는 courier-imap를 설치하도록 하겠습니다.

    1. Tcl 패키지 설치
    Tcl은 다른 응용 프로그램에 내장되도록 디자인된 단순한 스크립트 언어 입니다.
    Tcl은 Tk 패키지에 포함된 위젯 모음인 Tk와 함께 사용되도록 만들어진 패키지 입니다.
    이 패키지는 yum mirror에서 지원을 하므로 추후 업데이트를 위해 yum으로 설치 합니다.
    ※ 보통 레드헷 시스템에서는 기본적으로 설치가 되어 있습니다.
     [root@localhost]# yum -y install tcl 



    2. expect 패키지 설치
    Expect는 telnet, ftp, passwd, fsck, rlogin, tip 등과 같은 상호 대화식 응용 프로그램을
    자동화 하는 Tcl 확장 프로그램 입니다.
    또한 Expect는 응용 프로그램을 테스트 하는데 유용하게 사용되는 프로그램이기도 합니다.
    최근의 레드헷 시스템에서는 yum mirror에서 지원하므로 추후 업데이트를 위해 yum으로 설치 합니다.
     [root@localhost]# yum -y install expect 


    ※ 만약 OS의 버전이 낮아 yum에서 지원하지 않는다면 rpm.pbone.net 에서 검색하여 설치하면 됩니다.

    3. 퍼미션 조정
    courier-imap는 보안을 위하여 일반유저의 권한으로 컴파일 한뒤에 root유저로 설치합니다.
    따라서 필자처럼 만약 보안을 위해 퍼미션을 조정해놨다면 임시적으로 조정해주셔야 됩니다.
    또한 courier-imap를 컴파일할때 vpopmail의 library를 필요로 하기 때문에 같이 조정합니다.
     [root@localhost]# chmod 755 /usr/bin/gcc
    [root@localhost]# chmod 755 /usr/bin/g++
    [root@localhost]# chmod 755 /usr/bin/find
    [root@localhost]# chmod 755 /usr/bin/which
    [root@localhost]# chmod 755 /usr/bin/make
    [root@localhost]# chmod 755 /usr/bin/install
    [root@localhost]# chmod 777 /home/vpopmail/lib/
    [root@localhost]# chmod 777 /home/vpopmail/lib/libvpopmail.a
     



    4. 임시계정 생성
    앞서 말했듯이 보안을 위해 일반유저(uid 500이상) 권한으로 컴파일 해야 됩니다.
    따라서 일반 사용자 계정을 생성해주도록 합니다. 필자는 편하게 webmail 이라고 하겠습니다.
     [root@localhost]# useradd webmail 



    5. courier-imap 설치 (최신버전 : http://sourceforge.net/projects/courier/)
    현재 강좌를 쓰는 시점(2006.07.01)에서 courier-imap의 최신버전은 4.1.1 입니다.
    그러나 courier-imap 4.x 버전은 이것저것 설치해줄것이 너무 많아 귀찮은점이 많이 있습니다.
    따라서 필자는 courier-imap 3.x 버전을 사용해 설치를 하도록 하겠습니다.
    courier-imap 3.x 버전은 필자의 개인 패키지 미러에 있습니다. (http://pkg.tini4u.net/mta/qmail/)
    또한 일반유저 권한으로 컴파일 해야 되기 때문에 임시 디렉토리인 /var/tmp/에서 하도록 하겠습니다.

    - 일반 유저로 변환후 컴파일
     [root@localhost]# su - webmail
    [webmail@localhost]$ cd /var/tmp
    [webmail@localhost]$ wget http://pkg.tini4u.net/mta/qmail/src/courier-imap-3.0.8.tar.bz2
    [webmail@localhost]$ tar xfj courier-imap-3.0.8.tar.bz2
    [webmail@localhost]$ cd courier-imap-3.0.8
    [webmail@localhost]$ CFLAGS="-DHAVE_OPEN_SMTP_RELAY"; export CFLAGS
    [webmail@localhost]$ ./configure \
    --prefix=/usr \
    --datadir=/usr/share/courier-imap \
    --sysconfdir=/etc/courier-imap \
    --libexecdir=/usr/libexec/courier-imap \
    --localstatedir=/var \
    --mandir=/usr/share/man \
    --without-ipv6 \
    --enable-unicode \
    --with-authvchkpw \
    --with-redhat \
    --without-authdaemon \
    --without-authmysql \
    --without-authldap \
    --without-authdaemon \
    --without-authpgsql
    [webmail@localhost]$ make
    [webmail@localhost]$ make check
    [webmail@localhost]$ exit
     



    - root로 설치
     [root@localhost]# cd /var/tmp/courier-imap-3.0.8
    [root@localhost]# make install
    [root@localhost]# make install-configure
     



    - courier-imap 데몬 스크립트 복사
     [root@localhost]# cp -f courier-imap.sysvinit /etc/rc.d/init.d/courier-imap
    [root@localhost]# chown root.root /etc/rc.d/init.d/courier-imap
    [root@localhost]# chmod 755 /etc/rc.d/init.d/courier-imap
    [root@localhost]# chkconfig --add courier-imap
    [root@localhost]# chkconfig --level 345 courier-imap on
     



    - 임시계정 삭제 및 퍼미션 복구
    컴파일과 설치가 모두 정상적으로 되었으므로 임시계정을 삭제하고 퍼미션도 복원합니다.
     [root@localhost]# userdel -r webmail
    [root@localhost]# chmod 700 /usr/bin/gcc
    [root@localhost]# chmod 700 /usr/bin/g++
    [root@localhost]# chmod 700 /usr/bin/find
    [root@localhost]# chmod 700 /usr/bin/which
    [root@localhost]# chmod 700 /usr/bin/make
    [root@localhost]# chmod 700 /usr/bin/install
    [root@localhost]# chmod 755 /home/vpopmail/lib/
    [root@localhost]# chmod 644 /home/vpopmail/lib/libvpopmail.a
     



    - 스크립트 수정
    courier-imap가 root가 아닌 vpopmail 유저와 vchkpw 그룹으로 실행되도록 수정합니다.
    ※ imapd.rc 파일은 58라인을, pop3d.rc 파일은 51라인을 수정하시면 됩니다.
     [root@localhost]# vi /usr/libexec/courier-imap/imapd.rc
    원본 : -stderrlogger=${exec_prefix}/sbin/courierlogger \
    수정 : -stderrlogger=${exec_prefix}/sbin/courierlogger -user=vpopmail -group=vchkpw \
    [root@localhost]# vi /usr/libexec/courier-imap/pop3d.rc
    원본 : -stderrlogger=${exec_prefix}/sbin/courierlogger \
    수정 : -stderrlogger=${exec_prefix}/sbin/courierlogger -user=vpopmail -group=vchkpw \
    [root@localhost]# chmod 755 /usr/libexec/courier-imap/imapd.rc
    [root@localhost]# chmod 755 /usr/libexec/courier-imap/pop3d.rc
     



    - imap 설정
    기본적으로 courier-imap를 설치하고 시작하게 되면 아무런 데몬도 시작되지 않습니다.
    그렇기 때문에 imap 스크립트를 수정해서 데몬을 실행하겠다고 수정해줘야 됩니다.
    ※ imapd 파일의 373 라인을 수정하시면 됩니다.
     [root@localhost]# vi /etc/courier-imap/imapd
    원본 : IMAPDSTART=NO
    수정 : IMAPDSTART=YES
     



    - courier-imap 시작
     [root@localhost]# /etc/rc.d/init.d/courier-imap start
    Starting Courier-IMAP server: imap
     

      커피닉스 카페 최근 글
    [08/25] #gpt_question_subje
    [08/20] From what I've seen
    [08/14] сайт
    [06/16] [질문]SAN 스위치 브로드케이드 dcx8510-4 장비관련입니다.
    [04/22] Re: 영화속에 컴퓨터 이야기 ~스워드피쉬(2001)
    [10/20] Cross Compiler 깔
    [07/14] SSL АО
    [04/26] Re: 도스화면 원격조종 여부
    [04/25] 도스화면 원격조종 여부
    [10/30] Cshell에서 난수 설정
    [10/23] 공항철도주식회사 SE 구인 件
    [01/26] Re: wget으로 다른서버에있는 디렉토리를 가져오려고합니다.
    [01/25] wget으로 다른서버에있는 디렉토리를 가져오려고합니다.
    [01/11] 특정 안드로이드 WebView 버전에서 SSL 문제 (WebView 버그)
    [08/01] DNS forwarder (전달자) 서버를 통해서 쿼리하면 역방향을 받아오질 못합니다.
      New!   최근에 등록한 페이지
      KiCad EDA Suite project (Free/Libre/Open-Source EDA Suite) (CAD)
      오픈캐스케이드 캐드 (OpenCASCADE CAD)
      QCad for Windows --- GNU GPL (Free Software)
      The Hello World Collection
      IPMI를 활용한 리눅스 서버관리
      DNS 설정 검사
      nagiosgraph 설치 방법
      Slony-I 설치 방법 (postgresql replication tool)
      Qmail기반의 Anti spam 시스템 구축하기
      clusterssh

    [ 함께하는 사이트 ]




    운영진 : 좋은진호(truefeel), 야수(yasu), 범냉이, sCag
    2003년 8월 4일~