Cyrus IMAP외... Cyrus IMAP으로 성공하진 못했다 -_-
SquirrelMail로 로그인까진 되나 그 뒤 mailbox설정에서 막혔다.
CentOS에서 dovecot을 사용하므로 dovecot으로 해보기로 함.
컴파일
여기서 소스를 받고
http://wiki.dovecot.org/CompilingSource
이 컴파일 안내를 본다. 매뉴얼은 그냥 ./configure make make install하라고 하는데...a
$ ./configure --with-pam --with-gssapi
로 configure
문제 없이 configure되었음.
pam이 최고다 :S LDAP도 pam으로 설정 가능하고 기타 시스템도 다 pam으로 가능하니까(?)
mysql로 local user가 존재하지는 않지만 서비스를 제공하는 것은 가능한 모양이더라.
요즘 pam외 mysql인증도 꽤 많이 보이니 해당되는 시스템에서 공부해보는 것도 재미있을 듯;;
(configure옵션을 보면 mysql이 꽤 자주 보인다)
$ make
역시 별 탈 없음. 알아서 gcc로 잘 함.
# make install
별 탈 없음.
컴파일 하기는 dovecot이 가장 낫구나 =_=;;
그동안 WU imap, cyrus imap, courier imap등을 하 컴파일 시도해봤는데.
컴파일 환경이 솔라리스인 탓이 크지만 -ㅠ-;;
설정
이제 설정을 해보자.
http://wiki.dovecot.org/QuickConfiguration
/usr/local/etc/dovecot-example.conf를
/usr/local/etc/dovecot.conf로 이름을 변경한다.
사실 이 파일은 파일 전체가 코멘트 처리되어 있어서 디폴트 값이 무엇인지를 보여주기만 할 뿐이다. 그 중 필자가 변경한 설정은 SSL관련 하나뿐이다. (!)
1. PAM설정
일단은 넘어가자;;
2. 메일 위치 설정
일단은 자동으로 감지한다고 하니 넘어가자. 안 되면 그 때 다시 보고.
3. pop3 서버
pop3는 qpopper를 쓰고 있으니 pass. 앞으로 dovecot으로 통일할 수도 있겠다.
4. SSL
일단은 동작하게 하는 것이 목표니 skip. Squirrel Mail처럼 localhost상에서 작동하는데 SSL이 필요할까 :S ??
dovecot.conf에서
ssl_disable = yes
로 설정하라.
5. NFS
필자의 경우 뭔가를 공유하고 있는 서버가 아니다.;; skip
실행
실행시키는 게 중요하지 -ㅠ-
http://wiki.dovecot.org/RunningDovecot
inetd로 만들 수 있다. 하지만, 그 것은 동작이 됨을 확인하고 하는 것이 좋다.
# dovecot
으로 서비스를 시작해본다 (!)
만약 실행이 안 되면 왜 그런지 에러를 체크해주면 된다.
dovecot이 실행되니, squirrel mail이 잘(!) 작동한다.
이제 inetd화 하면 됨...
http://wiki.dovecot.org/InetdInstall
그런데 매뉴얼에 있는 tcpd 바이너리가 솔라리스에서는 어디 있는고 하니..
/usr/sfw/sbin/tcpd 에 있다.
/etc/inetd.conf에 다음 한 줄을 추가하고
imap stream tcp nowait root /usr/sfw/sbin/tcpd /usr/local/libexec/dovecot/imap-login
# inetconv
를 했다.
inetconv: Notice: Service manifest for imap already generated as /var/svc/manifest/network/imap-tcp.xml, skipped
필자는 예전에 imap서비스를 다른 데몬으로 한 적이 있어서 skipped되었는데
그냥 /var/svc/manifest/network/imap-tcp.xml
이 파일을 제거하고 다시 inetcov했다.
솔라리스 svcadm명령어로
# svcadm enable /network/imap/tcp
# svcadm disable /network/imap/tcp
로 데몬의 on, off를 체크했다.
off시키면 squirrel이 안 되고 on시키면 된다.
끝.