서버 설치 · 3 min read · Jan 16, 2026
완벽한 서버 - CentOS 5.6 x86_64 [ISPConfig 3] - 페이지 4
10 Dovecot 설치
CentOS 저장소에 Dovecot 패키지가 있지만, 불행히도 MySQL을 지원하지 않습니다. 따라서 기존 Dovecot을 제거하고 MySQL 지원이 포함된 다른 Dovecot 패키지(ATrpms에서)를 설치해야 합니다.
yum remove dovecot새 파일 /etc/yum.repos.d/atrpms.repo를 생성합니다…
vi /etc/yum.repos.d/atrpms.repo… 그리고 파일에 다음 줄을 삽입합니다:
| [atrpms] name=Red Hat Enterprise Linux 5 - x86_64 - ATrpms baseurl=http://dl.atrpms.net/el5-x86_64/atrpms/stable failovermethod=priority exclude=dovecot-2* includepkgs=dovecot dovecot-sieve # # requires stable # [atrpms-testing] name=Red Hat Enterprise Linux 5 - x86_64 - ATrpms testing baseurl=http://dl.atrpms.net/el5-x86_64/atrpms/testing failovermethod=priority enabled=1 exclude=dovecot-2* includepkgs=dovecot dovecot-sieve # # requires stable and testing # [atrpms-bleeding] name=Red Hat Enterprise Linux 5 - x86_64 - ATrpms bleeding baseurl=http://dl.atrpms.net/el5-x86_64/atrpms/bleeding failovermethod=priority enabled=0 |
그런 다음 atrpm 저장소의 gpg 키를 가져옵니다…
wget http://ATrpms.net/RPM-GPG-KEY.atrpms
rpm –import RPM-GPG-KEY.atrpms
… 그리고 Dovecot을 설치합니다:
yum install dovecot dovecot-sieve64비트 시스템에서는 다음 작업도 수행합니다(32비트 시스템에서는 수행하지 마십시오!):
ln -s /usr/lib64/dovecot/ /usr/lib/dovecot이제 Dovecot의 시스템 시작 링크를 생성합니다:
chkconfig –levels 235 dovecot on
/etc/init.d/dovecot start
Dovecot이 다음 오류로 시작되지 않는 경우:
Fatal: listen(::, 143) failed: Address already in use… /etc/dovecot.conf를 엽니다…
vi /etc/dovecot.conf … 그리고 listen = *: 줄을 추가합니다:
| [...] #listen = *, [::] listen = * [...] |
그런 다음 Dovecot을 다시 시작해 보십시오:
/etc/init.d/dovecot start 11 MySQL 지원이 포함된 Postfix 설치
CentOS 저장소의 “일반“ Postfix 패키지는 MySQL을 포함하지 않지만, CentOS Plus 저장소의 Postfix 패키지는 포함되어 있습니다. 따라서 Postfix를 제거합니다…
yum remove postfix… 그리고 이번에는 CentOS Plus 저장소에서 다시 설치합니다:
yum install postfix 그런 다음 Sendmail을 끄고 Postfix 및 MySQL을 시작합니다:
chkconfig –levels 235 mysqld on
/etc/init.d/mysqld start
chkconfig –levels 235 sendmail off
chkconfig –levels 235 postfix on
/etc/init.d/sendmail stop
/etc/init.d/postfix start
12 Getmail 설치
Getmail은 다음과 같이 설치할 수 있습니다:
yum install getmail13 MySQL 비밀번호 설정 및 phpMyAdmin 구성
MySQL 루트 계정의 비밀번호를 설정합니다:
mysql_secure_installation[root@server1 tmp]# mysql_secure_installation
NOTE: 이 스크립트의 모든 부분을 실행하는 것이 모든 MySQL 서버에서 권장됩니다! 각 단계를 주의 깊게 읽어 주십시오!
MySQL에 로그인하여 보안을 설정하려면 현재 루트 사용자 비밀번호가 필요합니다. MySQL을 방금 설치했으며 루트 비밀번호를 아직 설정하지 않았다면 비밀번호는 비어 있으므로 여기서 그냥 Enter를 누르십시오.
현재 루트 비밀번호 입력(없으면 Enter):
OK, 비밀번호가 성공적으로 사용되었습니다. 진행 중…
루트 비밀번호를 설정하면 아무도 적절한 권한 없이 MySQL 루트 사용자로 로그인할 수 없게 됩니다.
루트 비밀번호를 설정하시겠습니까? [Y/n] <– ENTER
새 비밀번호: <– yourrootsqlpassword
새 비밀번호를 다시 입력하세요: <– yourrootsqlpassword
비밀번호가 성공적으로 업데이트되었습니다!
권한 테이블을 다시 로드하는 중..
… 성공!
기본적으로 MySQL 설치에는 익명 사용자가 있어 누구나 사용자 계정을 생성하지 않고도 MySQL에 로그인할 수 있습니다. 이는 테스트 용도로만 사용되며 설치를 조금 더 원활하게 진행하기 위한 것입니다. 프로덕션 환경으로 이동하기 전에 이를 제거해야 합니다.
익명 사용자를 제거하시겠습니까? [Y/n] <– ENTER
… 성공!
일반적으로 루트는 ‘localhost’에서만 연결할 수 있어야 합니다. 이는 누군가가 네트워크에서 루트 비밀번호를 추측할 수 없도록 보장합니다.
원격으로 루트 로그인을 금지하시겠습니까? [Y/n] <– ENTER
… 성공!
기본적으로 MySQL에는 누구나 접근할 수 있는 ‘test’라는 데이터베이스가 있습니다. 이는 테스트 용도로만 사용되며 프로덕션 환경으로 이동하기 전에 제거해야 합니다.
테스트 데이터베이스 및 접근을 제거하시겠습니까? [Y/n] <– ENTER
- 테스트 데이터베이스 삭제 중… … 성공!
- 테스트 데이터베이스에 대한 권한 제거 중… … 성공!
권한 테이블을 다시 로드하면 지금까지 수행한 모든 변경 사항이 즉시 적용됩니다.
권한 테이블을 지금 다시 로드하시겠습니까? [Y/n] <– ENTER
… 성공!
정리 중…
모든 작업이 완료되었습니다! 위의 모든 단계를 완료했다면 MySQL 설치가 이제 보안이 강화되었습니다.
MySQL을 사용해 주셔서 감사합니다!
[root@server1 tmp]#
이제 phpMyAdmin을 구성합니다. phpMyAdmin이 localhost에서만 연결을 허용하도록 Apache 구성을 변경합니다(
vi /etc/httpd/conf.d/phpmyadmin.conf| # # MySQL 관리 웹 애플리케이션 # # |
다음으로 phpMyAdmin의 인증을 쿠키에서 http로 변경합니다:
vi /usr/share/phpmyadmin/config.inc.php| [...] /* 인증 유형 */ $cfg['Servers'][$i]['auth_type'] = 'http'; [...] |
그런 다음 Apache의 시스템 시작 링크를 생성하고 시작합니다:
chkconfig –levels 235 httpd on
/etc/init.d/httpd start
이제 브라우저를 http://server1.example.com/phpmyadmin/ 또는 http://192.168.0.100/phpmyadmin/로 이동하여 사용자 이름 root와 새 루트 MySQL 비밀번호로 로그인할 수 있습니다.
14 Amavisd-new, SpamAssassin 및 ClamAV 설치
amavisd-new, spamassassin 및 clamav를 설치하려면 다음 명령을 실행합니다:
yum install amavisd-new spamassassin clamav clamd unzip bzip2 unrar perl-DBD-mysql/etc/sysconfig/amavisd를 엽니다…
vi /etc/sysconfig/amavisd… 그리고 CONFIG_FILE=”/etc/amavisd.conf” 줄의 주석을 제거합니다:
| ### sendmail milter 인터페이스와 함께 amavis를 사용하려면 주석을 제거하십시오. ### 자세한 내용은 README.milter를 참조하십시오. # #MILTER_SOCKET="local:/var/amavis/amavis-milter.sock" #MILTER_SOCKET="[email protected]" ### 기타 기본값입니다. #AMAVIS_ACCOUNT="amavis" CONFIG_FILE="/etc/amavisd.conf" #MILTER_FLAGS="" |
그런 다음 freshclam, amavisd 및 clamd를 시작합니다…
sa-update
chkconfig –levels 235 amavisd on
chkconfig –levels 235 clamd on
/usr/bin/freshclam
/etc/init.d/amavisd start
/etc/init.d/clamd start
… 그리고 필요한 디렉토리를 생성합니다:
mkdir /var/run/amavisd /var/spool/amavisd /var/spool/amavisd/tmp /var/spool/amavisd/db
chown amavis /var/run/amavisd /var/spool/amavisd /var/spool/amavisd/tmp /var/spool/amavisd/db
ln -s /var/run/clamav/clamd.sock /var/spool/amavisd/clamd.sock
새 게시물을 받은 편지함에서 받기
스팸은 없습니다. 언제든지 구독 해지 가능합니다.