Dovecot Trouble Shooting

리눅스 2013.10.27 10:22


1. Imap, pop3 포트 변경 시
vi /etc/dovecot.conf

protocol imap {
listen = *:변경할 포트
}

protocol pop3 {
listen = *:변경할 포트
}

2. 홈디렉토리 없는 사용자의 메일을 받고 싶을 때
vi /etc/dovecot.conf

mail_location = mbox:/var/empty:INBOX=/var/spool/mail/%u:INDEX=MEMORY
로 변경
/etc/init.d/dovecot restart
adduser -M -s /bin/false 계정명

3. Imap 로그인 시 로그인 되지 않고, Plaintext 메시지 출력시
vi /etc/dovecot.conf

#disable_plaintext_auth = no
주석 해제호 dovecot 서비스 재시작

4. Centos 6.x 이슈사항
설정파일 위치 : /etc/dovecot/dovecot.conf
해당 버전에서의 dovecot은 /etc/dovecot/conf.d/ 폴더에 추가 설정파일이 분산 저장됨
A. 포트 변경 참조파일 : 10-master.conf
B. Pop3 미 사용 참조파일 : 10-ssl.conf
C. disable_plaintext 참조파일 : 10-auth.conf
D. 메일경로 변경 참조파일 : 10-mail.conf


출처: http://igoni.kr/?p=105

'리눅스' 카테고리의 다른 글

logwatch 시스템 로그 메일로 받기  (0) 2013.11.08
MySQL INSERT 성능 향상  (0) 2013.11.07
Dovecot Trouble Shooting  (0) 2013.10.27
특정 IP 또는 IP 대역만 SSH 접속 허용  (0) 2013.07.21
centos 트랜스미션 설치  (0) 2013.07.07
CentOS 6.x selinux 해제  (0) 2013.06.07

설정

트랙백

댓글

리눅스 - 아파치 이미지 캐싱 설정

분류없음 2013.10.13 17:44

아파치로 이미지 캐싱을 설정 하기 위한 방법입니다.
대형 포털 사이트와 커뮤니티 사이트는 이미지 파일이 많기 때문에 대부분 이미지 캐싱 처리를 해버립니다.
캐싱을 설정하게 되면 트래픽 감소와, 웹서버 요청건수, 사이트 속도가 개선이 됩니다.

캐싱을 설정 하기 위해서는 mod_expires 모듈이 설치가 되있어야 하며 보통 소스 컴파일시
--enable-expires 옵션을 주었거나 --enable-mods-shared 옵션을 주었을때 자동으로 설치가 됩니다.

설치가 되어 있지 않는 분은 소스디렉토리에서 바로 컴파일 하여 설치를 하시면 됩니다.
mod_expires 소스코드는 아파치 소스디렉토리의 modules/metadata 디렉토리에 있습니다.

[root@ruo91 ~]# ls -al /usr/local/src/httpd-2.2.13/modules/metadata/mod_expires.c
-rw-r--r-- 1 500 500 18285 11월 12  2008 /usr/local/src/httpd-2.2.13/modules/metadata/mod_expires.c


아파치의 apxs 를 사용하여 컴파일을 시작합니다.
편의를 위해 apxs 를 /usr/bin 에 심볼릭 링크를 걸어 바로 사용할수 있도록 설정하고 컴파일을 시작합니다.

[root@ruo91 ~]# ln -s /usr/local/apache2/bin/apxs /usr/bin/apxs
[root@ruo91 ~]# cd /usr/local/src/httpd-2.2.13/modules/metadata/
[root@ruo91 ~]# apxs -cia mod_expires.c
........
chmod 755 /usr/local/apache2/modules/mod_expires.so
[activating module `expires' in /usr/local/apache2/conf/httpd.conf]


해당 모듈이 자동 추가 됨을 볼수 있습니다.

[root@ruo91 ~]# cat /usr/local/apache2/conf/httpd.conf | grep expires
LoadModule expires_module modules/mod_expires.so


캐시 설정을 하기 위해 httpd.conf 에 아래 내용을 추가 해줍니다.

[root@ruo91 ~]# vi /usr/local/apache2/conf/httpd.conf
# 캐시 설정
# 웹 캐시
<IfModule mod_expires.c>
ExpiresActive On
ExpiresByType text/html "access plus 1 years"
ExpiresByType text/php "access plus 1 years"
ExpiresByType application/x-javascript "access plus 1 years"
ExpiresByType text/css "access plus 1 years"
ExpiresByType image/jpeg "access plus 1 years"
ExpiresByType image/gif "access plus 1 years"
ExpiresByType image/png "access plus 1 years"
ExpiresByType image/bmp "access plus 1 years"
ExpiresByType image/cgm "access plus 1 years"
ExpiresByType image/tiff "access plus 1 years"
ExpiresByType video/mpeg "access plus 1 years"
ExpiresByType video/quicktime "access plus 1 years"
ExpiresByType video/x-msvideo "access plus 1 years"
ExpiresByType audio/basic "access plus 1 years"
ExpiresByType audio/midi "access plus 1 years"
ExpiresByType audio/mpeg "access plus 1 years"
ExpiresByType audio/x-aiff "access plus 1 years"
ExpiresByType audio/x-mpegurl "access plus 1 years"
ExpiresByType audio/x-pn-realaudio "access plus 1 years"
ExpiresByType audio/x-wav  "access plus 1 years"
ExpiresByType application/x-shockwave-flash  "access plus 1 years"
</IfModule>

위 내용은 html, javascript, css, jpeg, jpg, gif, png, video, audio, flash 등등을 1년정도 캐싱을 해줍니다.
(어디서 주워들은 봐로는.. 네이트는 4년, 싸이월드는 1년 정도인듯?)

적용을 위해 아파치를 재시작 하면 캐싱이 활성화가 됩니다.
[root@ruo91 ~]# /usr/local/apache2/bin/apachectl restart

phpinfo 에서 mod_expires 모듈이 올라간 모습

 

참고
http://formacion.universia.net/manual/ko/mod/mod_expires.html


출처: http://www.cyworld.com/ruo91/3265473

설정

트랙백

댓글

Apache Proxy, Cache Server 구축 방법

분류없음 2013.10.13 17:39

Apache를 이용하여 proxy(reverse) 및 cache 기능을 구현하는 방법에 대해서 논하고자 한다.
단, 필자가 실제 서비스에 필요한 사항만 기술하니 기타 자세한 사항은 apache 공식 사이트의 내용을 참고하기 바란다

(1) 환경
    - Web Server : Apache 2.2.6
    - modules : mod_proxy, mod_cache (mod_disk_cache, mod_mem_cache)
    - 3개의 도메인 / 내부도메인 (외부도메인 ==> 내부도메인 forwarding)
    - Reverse Proxy
    - Disk Caching (특정 디렉토리만 Caching) - MaxDiskSize 1G

(2) 설치 (설치시 필요한 Library는 정상설치되었다고 가정한다.)
    - Configure option
./configure --prefix=/usr/local/apache --enable-module=so --enable-modules=all --enable-mods-shared=all --enable-proxy --enable-cache --enable-mem-cache --enable-file-cache --enable-disk-cache --with-zlib=/usr/local/lib/ --enable-deflate

   참고) Apache 컴파일 시 아래와 같은 오류가 발생하는 경우
          mod_deflate has been requested but can not be built due to prerequisite failures
           ; 이 오류는 deflate라는 압축관련 모듈을 load 하는 과정에서 zlib library가 상기 configure에서 지정한
             경로에 존재하지 않거나 혹은 zlib의 devel 패키지가 설치되지 않았을 경우에 발생할 수 있다
             따라서, [zlib_devel 다운로드]에서 devel 패키지를 다운받아 설치 후 아파치를 컴파일 하면 정상적으로
             설치된다.

(3) 셋팅
    - Cache를 위한 특정 디렉토리 생성 (예:CacheRoot /usr/local/apache/cache)
    - 아피치 디렉토리/conf/httpd.conf 수정
       # Virtual hosts
       Include conf/extra/httpd-vhosts.conf  <== 주석 제거

    - 가상호스트 수정 (아피치 디렉토리/conf/extra/httpd-vhost.conf)

<VirtualHost 아이피>
    ServerName 외부도메인1
    ProxyPass / http://내부도 메인1/
    ProxyPassReverse / http://내부도 메인1/
    CacheRoot /usr/local/apache/cache
    CacheEnable disk /public_html
    CacheMaxFileSize 1000000000
    CacheDefaultExpire 60
    CacheIgnoreNoLastMod On
    CacheMaxExpire 60
</VirtualHost>

<VirtualHost 아이피>
    ServerName 외부도메인2
    ProxyPass / http://내부 도메인2/
    ProxyPassReverse / http://내부도 메인2/
</VirtualHost>

<VirtualHost 아이피>
    ServerName 외부도메인3
    ProxyPass / http://내부 도메인3/
    ProxyPassReverse / http://내부도 메인3/
</VirtualHost>

(4) 확인
   - 아파치를 재기동 시킨다
   - 외부 도메인의 서버 / 내부 도메인의 서버의 access log를 확인하여 proxy 및 cache가 제대로 되는지 확인한다.

* 참고) 브라우져마다 자체 Caching정책으로 proxy 제대로 되지 않는 것처럼 보일 수 있기 때문에
브라우져의 역할을 대체하는 간단한 코드를 작성하여 테스트 하는 것이 확실하게 proxy 및 cache가 되는지 알 수 있다 (필자는 python을 이용하여 테스트 하였다.)


출처: http://blog.daum.net/ibest007/17430128

설정

트랙백

댓글