PostfixOnGentoo-HOWTO

Gentoo Korea Wiki
둘러보기로 가기 검색하러 가기
Postfix를 젠투에 설치하기


서문

Postfix와 SASL을 젠투 리눅스에서 설치하기 위한 가이드로써 Postfix-SASL-HOWTO 문서를 참고하여, Gentoo Linux 에서 설치하시는 분이 참고하실 수 있도록 하였습니다. Postfix 와 SASL 에 대해서는 다른 문서를 참고하십시오. 본문에서는 경어를 쓰지 않겠습니다.

문서에서 잘못된 부분이나 보완할 점이 있고, 문서를 더 좋게 수정하실 수 있으시면 자유롭게 수정해 주세오. 처음 이 문서의 작성자는 [only2sea]이지만, 문서 수정에 허락을 받거나 할 필요는 전혀 없습니다. 문서 내용과는 따로, 문서의 맨 아래쪽에 토론 섹션에 문서에 관련된 내용을 토론할 수 있습니다. 문제점을 발견하셨지만 딱히 대안이 없는 경우 등 토론 섹션에 글을 쓰는 것이 더 좋을 경우에는 토론 섹션에 적당히 적어주셔도 됩니다.

패키지 설치에 익숙하지 않으신 분들도 많으므로, 초보자가 더 접근하기 쉽게 문서를 발전시킬 수 있다면 발전시켜 주세요. 익숙하신 분들께 필요없어 보이는 설명들도 초보자에게는 필요할 수도 있으므로 익숙하신 분들께서 참아주세요.


postfix 설치하기

USE flag 설정하기

필요한 USE flag들을 켠다. sasl을 플래그를 켜면 SASL을 지원하며 의존성을 걸어서 함께 설치해 준다. vda는 쿼타를 지원할 수 있게 해 준다. 각 USE 플래그의 자세한 설명은 /usr/portage/profiles/use.desc 파일과 /usr/portage/profiles/use.local.desc 파일을 참조한다. 필요한 USE flag들을 /etc/portage/package.use 에 등록한다. 만약에 mailwrapper, postgres, mbox, vda, sasl, ssl에 대한 옵션을 켜려면 다음과 같이 입력한다.

mail-mta/postfix mailwrapper postgres mbox vda sasl ssl


다른 MTA 제거

다른 MTA가 이미 설치되어 있는 경우에는 Blocked가 되어서 설치가 되지 않으므로 다른 MTA를 먼저 제거해 주어야 한다. 이것을 확인하려면 emerge -p 옵션을 이용하면 된다.

# emerge -p postfix

These are the packages that I would merge, in order:

Calculating dependencies ...done!
[blocks B     ] mail-mta/ssmtp (is blocking mail-mta/postfix-2.1.5-r2)
[ebuild  N    ] dev-libs/cyrus-sasl-2.1.20
[ebuild  N    ] dev-libs/libpcre-5.0
[ebuild  N    ] mail-mta/postfix-2.1.5-r2


위에서는 mail-mta/ssmtp가 이미 설치되어 있어서 postfix의 설치를 막고 있다. 그렇다면 ssmtp를 제거해 주어야 한다. 만약에 다른 MTA가 설치를 막고 있으면 ssmtp 대신에 그 패키지를 제거하면 된다.

# emerge --unmerge ssmtp


Postfix emerge하기

이제 postfix를 설치할 수 있다.

# emerge postfix


dev-libs/cyrus-sasl 등의 관련 패키지들이 모두 설치된다.


설정파일 업데이트

이전에 postfix를 사용한 적이 있거나 해서 설정 파일이 바뀌는 경우에는 다음과 같은 메시지가 뜬다. 그럴 때는 etc-update를 해서 설정 파일을 확인하고 합쳐주면 된다.

 * IMPORTANT: 1 config files in /etc need updating.
 * Type emerge --help config to learn how to update config files.

# etc-update


이제 설정을 하면 된다.


postfix 업그레이드하기

설치 메시지에 나타나는 내용이다.

만일 호환성 없는 이전 버전에서 업그레이드를 하는 경우라면 설치 전에 postfix를 중단시켜야 한다. 서비스를 최대한 짧게 중단시켜야 한다면 다음과 같은 순서로 설치하면 최소의 시간만에 서비스를 재개할 수 있다.

# FORCE_UPGRADE=1 emerge --buildpkgonly postfix
# /etc/init.d/postfix stop
# emerge --usepkgonly postfix
# etc-update
# dispatch-conf
# /etc/init.d/postfix start


구동 및 설정하기

설정을 생략하면...

설정의 많은 부분들은 시스템이 제대로 설치되어 있다면 자동으로 해 준다. 예를 들어 호스트 이름을 설정하는 부분을 무시하고 건드리지 않는다면 postfix가 자동으로 gethostname()을 사용해서 호스트 이름을 설정한다.

/etc/postfix/main.cf 파일에 설정이 있고 각 설정에 대하여 주석이 충분히 달려 있으므로, 하나 하나 읽어보고 이 옵션에 대해서 알고 있고, 이것이 분명히 필요하다면 옵션을 수정하면 된다.


기본 설정으로 시도

기본 설정으로 사용하려면 아무 설정을 바꾸지 않고 다음을 시도해 본다.

# /etc/init.d/postfix start


문제없이 수행된다면 성공이다. 기본 설정으로 사용하는데 문제가 없고, 더 이상 설정하고 싶지 않다면 여기서 설치 성공이다. 시스템이 부팅할 때마다 이것이 자동으로 수행되도록 하려면 다음을 입력한다.

# rc-update add postfix default


만약 문제가 있어서 /etc/init.d/postfix start가 되지 않았다면 설정을 바꾸어주어야 한다. 스크립트에서 메시지를 보이지 않게 해 놓았으므로 에러 메시지를 보기 위해서 다음을 수행해 본다.

# postfix start


나타나는 에러메시지에 따라서 설정을 수정하면 된다.


더 설정하기

/etc/postfix/main.cf의 설정에 대한 더 자세한 내용은 [Postfix-SASL-HOWTO#s-4]를 참고한다. 설정을 변경하고 다시 적용시키려면

# /etc/init.d/postfix restart

를 하면 재부팅 하지 않고도 설정을 적용시켜 볼 수 있다. 설정을 변경할 때에는 한꺼번에 많이 변경하지 말고 조금씩 변경해 보면서 postfix를 restart해 보는 것이 요령이다. 아울러 man 5 postconf를 쳐서 매뉴얼을 참조하면 각각의 패러미터들을 설명하고 있으므로 postfix를 설정하는데 많은 도움을 얻을 수 있다.


유용한 문서

참고할 수 있는 유용한 문서가 있으면 추가해 주세요. 혹은 이 문서를 쓰는데 참고한 문서도 써 주세요.


토론

  • 문서를 작성하고 보니 이미 젠투에서 postfix 설치하는 매뉴얼이 올라와 있었네요. 제가 검색을 제대로 안 한 결과네요. 유용한 문서 링크에 추가했습니다. -- [only2sea] DateTime(2007-01-11T09:59:57)
  • 일단 사라진 문서에 대한 Link는 제거하거나 원본 링크로 수정했습니다