서버 설치 · 4 min read · Nov 12, 2025
완벽한 서버 - CentOS 6.1 x86_64와 nginx [ISPConfig 3] - 페이지 4
11 Courier-IMAP, Courier-Authlib 및 Maildrop 설치
불행히도 Courier-IMAP, Courier-Authlib 및 Maildrop에 대한 rpm 패키지가 없으므로 직접 빌드해야 합니다.
먼저 Dovecot을 제거합니다 (CentOS 6.1에는 Dovecot 2.x가 포함되어 있습니다; 불행히도 ISPConfig 3는 Dovecot 1.2.x만 지원하며 2.x는 지원하지 않습니다):
yum remove dovecot dovecot-mysql그런 다음 Courier rpm 패키지를 빌드하는 데 필요한 필수 패키지를 설치합니다:
yum install rpm-build gcc mysql-devel openssl-devel cyrus-sasl-devel pkgconfig zlib-devel pcre-devel openldap-devel postgresql-devel expect libtool-ltdl-devel openldap-servers libtool gdbm-devel pam-devel gamin-devel libidn-develRPM 패키지는 root로 빌드하면 안 됩니다; courier-imap은 컴파일이 root 사용자로 실행되는 것을 감지하면 컴파일을 거부합니다. 따라서 이제 일반 사용자 계정을 생성합니다 (이 예제에서는 falko) 그리고 비밀번호를 설정합니다:
useradd -m -s /bin/bash falko
passwd falko나중에 falko 사용자가 rpm 패키지를 컴파일하고 설치할 수 있도록 sudo 명령이 필요합니다. 하지만 먼저 falko가 sudo를 사용하여 모든 명령을 실행할 수 있도록 허용해야 합니다:
실행
visudo열리는 파일에는 root ALL=(ALL) ALL이라는 줄이 있습니다. 그 줄 바로 아래에 falko에 대한 유사한 줄을 추가합니다:
| [...] ## Allow root to run any commands anywhere root ALL=(ALL) ALL falko ALL=(ALL) ALL [...] |
이제 rpm 패키지를 빌드할 준비가 되었습니다. 먼저 falko 사용자로 전환합니다:
su falko다음으로 빌드 환경을 생성합니다:
mkdir $HOME/rpm
mkdir $HOME/rpm/SOURCES
mkdir $HOME/rpm/SPECS
mkdir $HOME/rpm/BUILD
mkdir $HOME/rpm/BUILDROOT
mkdir $HOME/rpm/SRPMS
mkdir $HOME/rpm/RPMS
mkdir $HOME/rpm/RPMS/i386
mkdir $HOME/rpm/RPMS/x86_64echo "%_topdir $HOME/rpm" >> $HOME/.rpmmacros이제 다운로드 디렉토리를 생성하고 http://www.courier-mta.org/download.php에서 소스 파일을 다운로드합니다:
mkdir $HOME/downloads
cd $HOME/downloadswget https://sourceforge.net/projects/courier/files/authlib/0.63.0/courier-authlib-0.63.0.tar.bz2/download
wget https://sourceforge.net/projects/courier/files/imap/4.9.3/courier-imap-4.9.3.tar.bz2/download
wget https://sourceforge.net/projects/courier/files/maildrop/2.5.5/maildrop-2.5.5.tar.bz2/download(여기서 저는 최신 4.10.0 대신 Courier-IMAP 4.9.3을 사용합니다. 4.10.0은 Fedora에 존재하지만 CentOS에는 존재하지 않는 systemctl에 의존합니다.)
이제 (여전히 $HOME/downloads에 있는 상태에서) courier-authlib를 빌드할 수 있습니다:
sudo rpmbuild -ta courier-authlib-0.63.0.tar.bz2빌드 프로세스 후, rpm 패키지는 /root/rpmbuild/RPMS/x86_64에 위치합니다 (/root/rpmbuild/RPMS/i686는 i686 시스템인 경우). 명령
sudo ls -l /root/rpmbuild/RPMS/x86_64은 사용 가능한 rpm 패키지를 보여줍니다:
[falko@server1 downloads]$ sudo ls -l /root/rpmbuild/RPMS/x86_64
total 528
-rw-r–r– 1 root root 124008 Dec 16 01:10 courier-authlib-0.63.0-1.el6.x86_64.rpm
-rw-r–r– 1 root root 270860 Dec 16 01:10 courier-authlib-debuginfo-0.63.0-1.el6.x86_64.rpm
-rw-r–r– 1 root root 35072 Dec 16 01:10 courier-authlib-devel-0.63.0-1.el6.x86_64.rpm
-rw-r–r– 1 root root 17368 Dec 16 01:10 courier-authlib-ldap-0.63.0-1.el6.x86_64.rpm
-rw-r–r– 1 root root 13928 Dec 16 01:10 courier-authlib-mysql-0.63.0-1.el6.x86_64.rpm
-rw-r–r– 1 root root 13076 Dec 16 01:10 courier-authlib-pgsql-0.63.0-1.el6.x86_64.rpm
-rw-r–r– 1 root root 8312 Dec 16 01:10 courier-authlib-pipe-0.63.0-1.el6.x86_64.rpm
-rw-r–r– 1 root root 34064 Dec 16 01:10 courier-authlib-userdb-0.63.0-1.el6.x86_64.rpm
[falko@server1 downloads]$
설치할 패키지를 선택하고 다음과 같이 설치합니다:
sudo rpm -ivh /root/rpmbuild/RPMS/x86_64/courier-authlib-0.63.0-1.el6.x86_64.rpm /root/rpmbuild/RPMS/x86_64/courier-authlib-mysql-0.63.0-1.el6.x86_64.rpm /root/rpmbuild/RPMS/x86_64/courier-authlib-devel-0.63.0-1.el6.x86_64.rpm이제 다운로드 디렉토리로 돌아갑니다:
cd $HOME/downloads다음 명령을 실행하여 필요한 디렉토리를 생성하고 디렉토리 권한을 변경합니다 (그렇지 않으면 Courier-Imap의 빌드 프로세스가 실패합니다):
sudo mkdir -p /var/cache/ccache/tmp
sudo chmod o+rwx /var/cache/ccache/
sudo chmod 777 /var/cache/ccache/tmp이제 sudo 없이 rpmbuild를 다시 실행합니다. 그렇지 않으면 컴파일이 root로 실행되었기 때문에 실패합니다:
rpmbuild -ta courier-imap-4.9.3.tar.bz2빌드 프로세스 후, rpm 패키지는 $HOME/rpm/RPMS/x86_64에 위치합니다 ($HOME/rpm/RPMS/i686는 i686 시스템인 경우):
cd $HOME/rpm/RPMS/x86_64명령
ls -l은 사용 가능한 rpm 패키지를 보여줍니다:
[falko@server1 x86_64]$ ls -l
total 1116
-rw-rw-r– 1 falko falko 331908 Dec 16 01:33 courier-imap-4.9.3-1.x86_64.rpm
-rw-rw-r– 1 falko falko 800864 Dec 16 01:33 courier-imap-debuginfo-4.9.3-1.x86_64.rpm
[falko@server1 x86_64]$
다음과 같이 courier-imap을 설치할 수 있습니다:
sudo rpm -ivh courier-imap-4.9.3-1.x86_64.rpm이제 다운로드 디렉토리로 돌아갑니다:
cd $HOME/downloads그리고 이번에는 maildrop 패키지를 빌드하기 위해 rpmbuild를 다시 실행합니다:
sudo rpmbuild -ta maildrop-2.5.5.tar.bz2빌드 프로세스 후, rpm 패키지는 /root/rpmbuild/RPMS/x86_64에 위치합니다 (/root/rpmbuild/RPMS/i686는 i686 시스템인 경우). 명령
sudo ls -l /root/rpmbuild/RPMS/x86_64은 사용 가능한 rpm 패키지를 보여줍니다:
[falko@server1 downloads]$ sudo ls -l /root/rpmbuild/RPMS/x86_64
total 1712
-rw-r–r– 1 root root 124008 Dec 16 01:10 courier-authlib-0.63.0-1.el6.x86_64.rpm
-rw-r–r– 1 root root 270860 Dec 16 01:10 courier-authlib-debuginfo-0.63.0-1.el6.x86_64.rpm
-rw-r–r– 1 root root 35072 Dec 16 01:10 courier-authlib-devel-0.63.0-1.el6.x86_64.rpm
-rw-r–r– 1 root root 17368 Dec 16 01:10 courier-authlib-ldap-0.63.0-1.el6.x86_64.rpm
-rw-r–r– 1 root root 13928 Dec 16 01:10 courier-authlib-mysql-0.63.0-1.el6.x86_64.rpm
-rw-r–r– 1 root root 13076 Dec 16 01:10 courier-authlib-pgsql-0.63.0-1.el6.x86_64.rpm
-rw-r–r– 1 root root 8312 Dec 16 01:10 courier-authlib-pipe-0.63.0-1.el6.x86_64.rpm
-rw-r–r– 1 root root 34064 Dec 16 01:10 courier-authlib-userdb-0.63.0-1.el6.x86_64.rpm
-rw-r–r– 1 root root 286480 Dec 16 01:40 maildrop-2.5.5-1.x86_64.rpm
-rw-r–r– 1 root root 751376 Dec 16 01:40 maildrop-debuginfo-2.5.5-1.x86_64.rpm
-rw-r–r– 1 root root 102104 Dec 16 01:40 maildrop-devel-2.5.5-1.x86_64.rpm
-rw-r–r– 1 root root 65940 Dec 16 01:40 maildrop-man-2.5.5-1.x86_64.rpm
[falko@server1 downloads]$
이제 다음과 같이 maildrop을 설치할 수 있습니다:
sudo rpm -ivh /root/rpmbuild/RPMS/x86_64/maildrop-2.5.5-1.x86_64.rpm필요한 모든 패키지를 컴파일하고 설치한 후, 다음을 입력하여 root로 돌아갈 수 있습니다:
exit이제 다음과 같이 Courier-IMAP/-POP3를 시작합니다:
/etc/init.d/courier-imap start 12 Postfix 설치
Postfix는 다음과 같이 설치할 수 있습니다:
yum install postfix그런 다음 Sendmail을 끄고 Postfix를 시작합니다:
chkconfig --levels 235 sendmail off
chkconfig --levels 235 postfix on
/etc/init.d/sendmail stop
/etc/init.d/postfix restart13 Getmail 설치
Getmail은 다음과 같이 설치할 수 있습니다:
yum install getmail14 Amavisd-new, SpamAssassin 및 ClamAV 설치
amavisd-new, spamassassin 및 clamav를 설치하려면 다음 명령을 실행합니다:
yum install amavisd-new spamassassin clamav clamd unzip bzip2 unrar perl-DBD-mysql그런 다음 freshclam, amavisd 및 clamd.amavisd를 시작합니다:
sa-update
chkconfig --levels 235 amavisd on
chkconfig --del clamd
chkconfig --levels 235 clamd.amavisd on
/usr/bin/freshclam
/etc/init.d/amavisd start
/etc/init.d/clamd.amavisd start새 게시물을 받은 편지함에서 받기
스팸은 없습니다. 언제든지 구독 해지 가능합니다.