<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>perlとMysqlでCGI &#38; サーバ管理 漏れ的メモ &#187; CentOS5.x</title>
	<atom:link href="http://perl.no-tubo.net/category/linux/centos5-x/feed/" rel="self" type="application/rss+xml" />
	<link>http://perl.no-tubo.net</link>
	<description>perl＆MySQLでCGIプログラミング。ウェブ運営の小技。鯖管メモもちょっとだけ。</description>
	<lastBuildDate>Mon, 23 Aug 2010 04:41:59 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.6</generator>
	<language>ja</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Perl の環境変数 $ENV{PATH} の初期値はどこを参照しているのか？</title>
		<link>http://perl.no-tubo.net/2010/06/30/perl-%e3%81%ae%e7%92%b0%e5%a2%83%e5%a4%89%e6%95%b0-envpath-%e3%81%ae%e5%88%9d%e6%9c%9f%e5%80%a4%e3%81%af%e3%81%a9%e3%81%93%e3%82%92%e5%8f%82%e7%85%a7%e3%81%97%e3%81%a6%e3%81%84%e3%82%8b%e3%81%ae/</link>
		<comments>http://perl.no-tubo.net/2010/06/30/perl-%e3%81%ae%e7%92%b0%e5%a2%83%e5%a4%89%e6%95%b0-envpath-%e3%81%ae%e5%88%9d%e6%9c%9f%e5%80%a4%e3%81%af%e3%81%a9%e3%81%93%e3%82%92%e5%8f%82%e7%85%a7%e3%81%97%e3%81%a6%e3%81%84%e3%82%8b%e3%81%ae/#comments</comments>
		<pubDate>Wed, 30 Jun 2010 04:08:37 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Apache]]></category>
		<category><![CDATA[CentOS4.x]]></category>
		<category><![CDATA[CentOS5.x]]></category>
		<category><![CDATA[perl]]></category>

		<guid isPermaLink="false">http://perl.no-tubo.net/?p=628</guid>
		<description><![CDATA[Perl の $ENV{PATH} は何処を参照しているのか？
例えば bayon を perl から使うのに Text::Bayon モジュールを利用したら
sh: bayon: command not found
と [...]]]></description>
			<content:encoded><![CDATA[<h3>Perl の $ENV{PATH} は何処を参照しているのか？</h3>
<p>例えば bayon を perl から使うのに Text::Bayon モジュールを利用したら<br />
sh: bayon: command not found<br />
と言うエラーログが残る。</p>
<p>コマンドが見つからない = パスが通っていない、と言う事なんだろうけど、apache を2.2 にしたらパスが変わったのか apache2.0 の時に使えた Lingua::JA::Summarize を使用するスクリプトも</p>
<p>sh: mecab: command not found</p>
<p>となる。</p>
<p>mecab も bayon も /usr/local/bin にインストールしてあるのだけれど、$ENV{PATH} を調べてみると、<br />
$ENV{PATH} = /sbin:/usr/sbin:/bin:/usr/bin<br />
となっており、/usr/local/bin にはパスが通っていない。</p>
<p>この 環境変数はどこを参照しているのかまさに以下のページのような迷い方をした。</p>
<blockquote><p>apacheの起動ユーザーにPATH通しときゃいいのか？とか、httpd.confにそういう設定が？とか、もしかしてPHP.iniにそんな設定が？とか思ってたんですが、全部ハズレ。</p></blockquote>
<p><a href="http://d.hatena.ne.jp/masahi6/20090720/1248081907">Apache2の環境変数PATHを設定する &#8211; masahilog</a></p>
<p>SetEnvやPassEnvディレクティブを追加してみたり、. bash_profile を変更したり、散々いろいろ試してみたけど、上記ページのおかげでヒントが得られたのでメモ。</p>
<blockquote><p>CentOS系（というかRedhat系、だろうか）は/etc/sysconfig/httpdがそれに該当するような。探しても調べてもenvvarsの影も形も無かったけど、/etc/init.d/httpdの冒頭箇所で/etc/sysconfig/httpdがあったらそれを評価してからhttpdが起動するようになってる。なんでこんな仕様なんだろうか。</p></blockquote>
<p>追記でこのように書かれていたのだけれど、/etc/rc.d/init.d/httpd を見てみると、 /etc/sysconfig/httpd のみではなく、 /etc/rc.d/init.d/functions も参照している。</p>
<p>/etc/rc.d/init.d/functions を見ると、ビンゴでした。</p>
<pre># Set up a default search path.
PATH="/sbin:/usr/sbin:/bin:/usr/bin"
export PATH</pre>
<p>ここのパスを変更して、保存。</p>
<p>注意点としては、apache を再起動ではなく 停止してから起動する事。<br />
再起動では反映されませんでした。</p>
<p>ちなみに CentOS （4.x 5.x） での話ですので他のディストリビューションでは違うかもしれません。</p>
]]></content:encoded>
			<wfw:commentRss>http://perl.no-tubo.net/2010/06/30/perl-%e3%81%ae%e7%92%b0%e5%a2%83%e5%a4%89%e6%95%b0-envpath-%e3%81%ae%e5%88%9d%e6%9c%9f%e5%80%a4%e3%81%af%e3%81%a9%e3%81%93%e3%82%92%e5%8f%82%e7%85%a7%e3%81%97%e3%81%a6%e3%81%84%e3%82%8b%e3%81%ae/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>postfixadmin +procmailな環境でメールディレクトリの自動作成・削除</title>
		<link>http://perl.no-tubo.net/2009/10/15/postfixadmin-procmail%e3%81%aa%e7%92%b0%e5%a2%83%e3%81%a7%e3%83%a1%e3%83%bc%e3%83%ab%e3%83%87%e3%82%a3%e3%83%ac%e3%82%af%e3%83%88%e3%83%aa%e3%81%ae%e4%bd%9c%e6%88%90%e3%83%bb%e5%89%8a%e9%99%a4/</link>
		<comments>http://perl.no-tubo.net/2009/10/15/postfixadmin-procmail%e3%81%aa%e7%92%b0%e5%a2%83%e3%81%a7%e3%83%a1%e3%83%bc%e3%83%ab%e3%83%87%e3%82%a3%e3%83%ac%e3%82%af%e3%83%88%e3%83%aa%e3%81%ae%e4%bd%9c%e6%88%90%e3%83%bb%e5%89%8a%e9%99%a4/#comments</comments>
		<pubDate>Thu, 15 Oct 2009 02:03:16 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[CentOS5.x]]></category>
		<category><![CDATA[postfix]]></category>
		<category><![CDATA[postfixadmin]]></category>
		<category><![CDATA[メールサーバ]]></category>
		<category><![CDATA[procmail]]></category>

		<guid isPermaLink="false">http://perl.no-tubo.net/?p=223</guid>
		<description><![CDATA[構築環境

CentOS5.3
Postfix +MySQL
Dovecot
postfixadmin
procmail (spamassassin、Clam AntiVirus でスパムメールとウィルス対策)

pos [...]]]></description>
			<content:encoded><![CDATA[<h3>構築環境</h3>
<ul>
<li>CentOS5.3</li>
<li>Postfix +MySQL</li>
<li>Dovecot</li>
<li>postfixadmin</li>
<li>procmail (spamassassin、Clam AntiVirus でスパムメールとウィルス対策)</li>
</ul>
<p>postfixadminを使ってバーチャルドメインでメールサーバを構築するまではうまくいったのだけど、procmailを使うと自動でメールボックスが作成されない。</p>
<p>もともとメールアカウント削除してもメールボックスが自動で削除されないので付属のシェルスクリプト改で行ってみるテスト。</p>
<p>postfixadminは /var/www/postfixadmin に設置してあるとし、</p>
<p>メールは/mail 以下に保存される設定で。<br />
/mail/hoge.com/user@hoge.com な感じ。</p>
<p>メールディレクトリ作成・削除スクリプトは/usr/local/bin/postfixadmin へ保存。</p>
<blockquote><p>メールボックス作成用スクリプト<br />
/usr/local/bin/postfixadmin/postfixadmin-mailbox-postcreation.sh</p>
<p>メールボックス削除用スクリプト<br />
/usr/local/bin/postfixadmin/postfixadmin-mailbox-postdeletion.sh</p>
<p>ドメイン削除用スクリプト？<br />
/usr/local/bin/postfixadmin/postfixadmin-domain-postdeletion.sh</p></blockquote>
<h3>１）sudo を使用するので/etc/sudoers を編集する。</h3>
<p>どうやら最近のマシンではエラーが出るらしいので併せて対処。<br />
参考：<a href="http://blog.cles.jp/item/2919">sudoが「sudo: sorry, you must have a tty to run sudo」と文句を言うときは<br />
</a></p>
<p>webサーバ(apache)のhttpd.conf設定は<br />
User apache<br />
Group apache<br />
としています。</p>
<pre>visudo

#
# Disable "ssh hostname sudo ", because it will show the password in clear.
#         You have to run "ssh -t hostname sudo ".
#
<span style="color: #ff9900;">#Defaults    requiretty ←コメントアウト
</span>
## The COMMANDS section may have other options added to it.
##
## Allow root to run any commands anywhere
root    ALL=(ALL)       ALL
<span style="color: #33cccc;">apache ALL=(ALL) NOPASSWD: /usr/local/bin/postfixadmin/postfixadmin-mailbox-postcreation.sh ←追記
apache ALL=(ALL) NOPASSWD: /usr/local/bin/postfixadmin/postfixadmin-mailbox-postdeletion.sh ←追記
apache ALL=(ALL) NOPASSWD: /usr/local/bin/postfixadmin/postfixadmin-domain-postdeletion.sh ←追記</span></pre>
<h3>２）メールボックス作成・削除スクリプト準備</h3>
<p>保存用ディレクトリを作成し、postfixadmin/ADDITIONS 内にある、</p>
<p>postfixadmin-domain-postdeletion.sh<br />
postfixadmin-mailbox-postcreation.sh<br />
postfixadmin-mailbox-postdeletion.sh</p>
<p>を/usr/local/bin/postfixadmin 以下にコピーする。</p>
<pre>mkdir /usr/local/bin/postfixadmin
cp /var/www/postfixadmin/ADDITIONS/postfixadmin-domain-postdeletion.sh /usr/local/bin/postfixadmin
cp /var/www/postfixadmin/ADDITIONS/postfixadmin-mailbox-postcreation.sh /usr/local/bin/postfixadmin
cp /var/www/postfixadmin/ADDITIONS/postfixadmin-mailbox-postdeletion.sh /usr/local/bin/postfixadmin</pre>
<h3>３）削除メールボックスの保存先</h3>
<p>削除したメールボックスは/mail/.deleted-maildirs 以下に保存されるようにする。</p>
<p>削除したメールボックスを保存するディレクトリ作成</p>
<pre>mkdir /mail/.deleted-maildirs
chmod 771 /mail/.deleted-maildirs
chown vuser:vuser /mail/.deleted-maildirs</pre>
<h3>４）スクリプトの編集</h3>
<h5>ユーザーメールボックス作成用スクリプトの編集</h5>
<pre>#!/bin/sh

# Example script for adding a Maildir to a Courier-IMAP virtual mail
# hierarchy.

# The script only looks at argument 3, assuming that it
# indicates the relative name of a maildir, such as
# "somedomain.com/peter/".

# This script should be run as the user which owns the maildirs. If
# the script is actually run by the apache user (e.g. through PHP),
# then you could use "sudo" to grant apache the rights to run
# this script as the relevant user.
# Assume this script has been saved as
# /usr/local/bin/postfixadmin-mailbox-postcreation.sh and has been
# made executable. Now, an example /etc/sudoers line:
# apache ALL=(courier) NOPASSWD: /usr/local/bin/postfixadmin-mailbox-postcreation.sh
# The line states that the apache user may run the script as the
# user "courier" without providing a password.

# Change this to where you keep your virtual mail users' maildirs.
<span style="color: #ff9900;">#basedir=/var/spool/maildirs ←コメントアウト
<span style="color: #33cccc;">basedir=/mail ←追記
</span></span><span style="color: #ccffff;">
</span><span style="color: #ccffff;">i</span>f [ ! -e "$basedir" ]; then
    echo "$0: basedir '$basedir' does not exist; bailing out."
    exit 1
fi

if [ `echo $3 | fgrep '..'` ]; then
    echo "$0: An argument contained a double-dot sequence; bailing out."
    exit 1
fi

maildir="${basedir}/$3"
parent=`dirname "$maildir"`
if [ ! -d "$parent" ]; then
    if [ -e "$parent" ]; then
        echo "$0: strange - directory '$parent' exists, but is not a directory; bailing out."
        exit 1
    else
        mkdir -p "${parent}"
        if [ $? -ne 0 ]; then
            echo "$0: mkdir -p '$parent' returned non-zero; bailing out."
            exit 1
        fi
    fi
fi

if [ -e "$maildir" ]; then
    echo "$0: Directory '$maildir' already exists! bailing out"
    exit 1
fi
<span style="color: #ff9900;">
#maildirmake "$maildir" ←コメントアウト
#if [ ! -d "$maildir" ]; then
#    echo "$0: maildirmake didn't produce a directory; bailing out."
#    exit 1
#fi</span>

<span style="color: #33cccc;">
# 以下を追記
mkdir "$maildir"
if [ ! -d "$maildir" ]; then
    echo "$0: mkdir didn't produce a directory; bailing out."
    exit 1
fi

mkdir "${maildir}cur"
if [ ! -d "${maildir}cur" ]; then
    echo "$0: mkdir didn't produce a directory; bailing out."
    exit 1
fi

mkdir "${maildir}new"
if [ ! -d "${maildir}new" ]; then
    echo "$0: mkdir didn't produce a directory; bailing out."
    exit 1
fi

mkdir "${maildir}tmp"
if [ ! -d "${maildir}tmp" ]; then
    echo "$0: mkdir didn't produce a directory; bailing out."
    exit 1
fi

chown -R vuser:vuser "$maildir"
chmod -R 700 "$maildir"</span>

exit 0</pre>
<h5>ユーザーメールボックス削除スクリプトの編集</h5>
<p>ユーザーメールボックスは、/mail/hoge.com/user@hoge.com の形式としています。</p>
<pre>#!/bin/sh

# Example script for removing a Maildir from a Courier-IMAP virtual mail
# hierarchy.

# The script looks at arguments 1 and 2, assuming that they
# indicate username and domain, respectively.

# The script will not actually delete the maildir. I moves it
# to a special directory which may once in a while be cleaned up
# by the system administrator.

# This script should be run as the user which owns the maildirs. If
# the script is actually run by the apache user (e.g. through PHP),
# then you could use "sudo" to grant apache the rights to run
# this script as the relevant user.
# Assume this script has been saved as
# /usr/local/bin/postfixadmin-mailbox-postdeletion.sh and has been
# made executable. Now, an example /etc/sudoers line:
# apache ALL=(courier) NOPASSWD: /usr/local/bin/postfixadmin-mailbox-postdeletion.sh
# The line states that the apache user may run the script as the
# user "courier" without providing a password.

# Change this to where you keep your virtual mail users' maildirs.
<span style="color: #ff9900;">#basedir=/var/spool/maildirs ←コメントアウト
</span><span style="color: #33cccc;">basedir=/mail ←追記
</span>
# Change this to where you would like deleted maildirs to reside.
<span style="color: #ff9900;">#trashbase=/var/spool/deleted-maildirs ←コメントアウト
</span><span style="color: #33cccc;">trashbase=/mail/.deleted-maildirs ← 追記
</span>
if [ ! -e "$trashbase" ]; then
    echo "trashbase '$trashbase' does not exist; bailing out."
    exit 1
fi

if [ `echo $1 | fgrep '..'` ]; then
    echo "First argument contained a double-dot sequence; bailing out."
    exit 1
fi
if [ `echo $2 | fgrep '..'` ]; then
    echo "First argument contained a double-dot sequence; bailing out."
    exit 1
fi

<span style="color: #ff9900;">#subdir=`echo "$1" | sed 's/@.*//'` ←コメントアウト
</span><span style="color: #33cccc;">subdir=$1 ← 追記
</span>
maildir="${basedir}/$2/${subdir}"
trashdir="${trashbase}/$2/`date +%F_%T`_${subdir}"

parent=`dirname "$trashdir"`
if [ ! -d "$parent" ]; then
    if [ -e "$parent" ]; then
        echo "Strainge - directory '$parent' exists, but is not a directory."
        echo "Bailing out."
        exit 1
    else
        mkdir -p "$parent"
        if [ $? -ne 0 ]; then
            echo "mkdir -p '$parent' returned non-zero; bailing out."
            exit 1
        fi
    fi
fi

if [ ! -e "$maildir" ]; then
    echo "maildir '$maildir' does not exist; nothing to do."
    exit 1
fi
if [ -e "$trashdir" ]; then
    echo "trashdir '$trashdir' already exists; bailing out."
    exit 1
fi

mv $maildir $trashdir

exit $?</pre>
<p>ドメイン削除用スクリプトの編集</p>
<pre>#!/bin/sh

# Example script for removing a Maildir domain top-level folder
# from a Courier-IMAP virtual mail hierarchy.

# The script only looks at argument 1, assuming that it
# indicates the relative name of a domain, such as
# "somedomain.com". If $basedir/somedomain.com exists, it will
# be removed.

# The script will not actually delete the directory. I moves it
# to a special directory which may once in a while be cleaned up
# by the system administrator.

# This script should be run as the user which owns the maildirs. If
# the script is actually run by the apache user (e.g. through PHP),
# then you could use "sudo" to grant apache the rights to run
# this script as the relevant user.
# Assume this script has been saved as
# /usr/local/bin/postfixadmin-domain-postdeletion.sh and has been
# made executable. Now, an example /etc/sudoers line:
# apache ALL=(courier) NOPASSWD: /usr/local/bin/postfixadmin-domain-postdeletion.sh
# The line states that the apache user may run the script as the
# user "courier" without providing a password.

# Change this to where you keep your virtual mail users' maildirs.
<span style="color: #ff9900;">#basedir=/var/spool/maildirs ←コメントアウト
</span><span style="color: #33cccc;">basedir=/mail ←追記
</span>
# Change this to where you would like deleted maildirs to reside.
<span style="color: #ff9900;">trashbase=/var/spool/deleted-maildirs ←コメントアウト
</span><span style="color: #33cccc;">trashbase=/mail/.deleted-maildirs ←追記
</span>
if [ `echo $1 | fgrep '..'` ]; then
    echo "First argument contained a double-dot sequence; bailing out."
    exit 1
fi

if [ ! -e "$trashbase" ]; then
    echo "trashbase '$trashbase' does not exist; bailing out."
    exit 1
fi

trashdir="${trashbase}/`date +%F_%T`_$1"
domaindir="${basedir}/$1"

if [ ! -e "$domaindir" ]; then
    echo "Directory '$domaindir' does not exits; nothing to do."
    exit 0;
fi
if [ ! -d "$domaindir" ]; then
    echo "'$domaindir' is not a directory; bailing out."
    exit 1
fi
if [ -e "$trashdir" ]; then
    echo "Directory '$trashdir' already exits; bailing out."
    exit 1;
fi

mv $domaindir $trashdir

exit $?</pre>
<p>実行権を与える</p>
<pre>chmod 700 /usr/local/bin/postfixadmin/postfixadmin*</pre>
<h3>５）phpadminの設定ファイルを修正</h3>
<pre>vi /var/www/postfixadmin/config.inc.php

// Optional:
// Script to run after creation of mailboxes.
// Note that this may fail if PHP is run in "safe mode", or if
// operating system features (such as SELinux) or limitations
// prevent the web-server from executing external scripts.
// $CONF['mailbox_postcreation_script']='sudo -u courier /usr/local/bin/postfixadmin-mailbox-postcreation.sh';
<span style="color: #33cccc;">$CONF['mailbox_postcreation_script']='sudo /usr/local/bin/postfixadmin/postfixadmin-mailbox-postcreation.sh'; ←追記
</span>
// Optional:
// Script to run after deletion of mailboxes.
// Note that this may fail if PHP is run in "safe mode", or if
// operating system features (such as SELinux) or limitations
// prevent the web-server from executing external scripts.
// $CONF['mailbox_postdeletion_script']='sudo -u courier /usr/local/bin/postfixadmin-mailbox-postdeletion.sh';
<span style="color: #33cccc;">$CONF['mailbox_postdeletion_script']='sudo /usr/local/bin/postfixadmin/postfixadmin-mailbox-postdeletion.sh'; ←追記
</span>
// Optional:
// Script to run after deletion of domains.
// Note that this may fail if PHP is run in "safe mode", or if
// operating system features (such as SELinux) or limitations
// prevent the web-server from executing external scripts.
// $CONF['domain_postdeletion_script']='sudo -u courier /usr/local/bin/postfixadmin-domain-postdeletion.sh';
<span style="color: #33cccc;">$CONF['domain_postdeletion_script']='sudo /usr/local/bin/postfixadmin/postfixadmin-domain-postdeletion.sh';</span></pre>
<h3>テスト</h3>
<p>postfixadminでメールアカウントの作成・削除を行って、該当のメールボックスの状況を確認する。</p>
<p>ドメイン追加・削除を行う場合は、ドメインの追加後メールユーザーを１つ以上追加する必要がある。（ドメイン追加のみだとディレクトリが作成されない為）</p>
<p><span style="text-decoration: line-through;"><br />
</span></p>
<h3>気になる事</h3>
<p>visudo でコメントアウトした</p>
<p>#Defaults    requiretty ←コメントアウト</p>
<p>が、セキュリティー面でどうなのか、と。</p>
]]></content:encoded>
			<wfw:commentRss>http://perl.no-tubo.net/2009/10/15/postfixadmin-procmail%e3%81%aa%e7%92%b0%e5%a2%83%e3%81%a7%e3%83%a1%e3%83%bc%e3%83%ab%e3%83%87%e3%82%a3%e3%83%ac%e3%82%af%e3%83%88%e3%83%aa%e3%81%ae%e4%bd%9c%e6%88%90%e3%83%bb%e5%89%8a%e9%99%a4/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>メールサーバ構築（Postfix +MySQL +Dovecot +postfixadmin）</title>
		<link>http://perl.no-tubo.net/2009/10/14/%e3%83%a1%e3%83%bc%e3%83%ab%e3%82%b5%e3%83%bc%e3%83%90%e6%a7%8b%e7%af%89%ef%bc%88postfix-mysql-dovecot-postfixadmin%ef%bc%89-2/</link>
		<comments>http://perl.no-tubo.net/2009/10/14/%e3%83%a1%e3%83%bc%e3%83%ab%e3%82%b5%e3%83%bc%e3%83%90%e6%a7%8b%e7%af%89%ef%bc%88postfix-mysql-dovecot-postfixadmin%ef%bc%89-2/#comments</comments>
		<pubDate>Wed, 14 Oct 2009 09:56:34 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[CentOS5.x]]></category>
		<category><![CDATA[postfix]]></category>
		<category><![CDATA[postfixadmin]]></category>

		<guid isPermaLink="false">http://pet.no-tubo.net/?p=187</guid>
		<description><![CDATA[CentOS5.3
いろいろ構築した結果、メールサーバは Postfix +MySQL +Dovecot +postfixadmin で構成する事に決めた。
postfixadminを使う利点は、

複数のバーチャルドメ [...]]]></description>
			<content:encoded><![CDATA[<p>CentOS5.3</p>
<p>いろいろ構築した結果、メールサーバは Postfix +MySQL +Dovecot +postfixadmin で構成する事に決めた。<br />
postfixadminを使う利点は、</p>
<ul>
<li>複数のバーチャルドメインでの運用が可能＆管理が楽</li>
<li>ドメインの追加やメールアドレスの追加がブラウザからGUIで出来る</li>
</ul>
<p>さらに、procmailとspamassassin、Clam AntiVirusを使って、スパムメール対策とウィルス対策も行う。</p>
<p>バーチャルドメイン環境でprocmailとspamassassinを使うにコツがいる（らしい）</p>
<p>ネットでの情報が少ない（ヒットしない）のでメモ。</p>
<h3>メールサーバの構築</h3>
<p>メールサーバの構築は <a href="http://centossrv.com/postfix.shtml" target="_blank">メールサーバー構築（Postfix）</a> を参考に行った。</p>
<h3>ウィルス対策</h3>
<p>ウィルス対策は <a href="http://centossrv.com/clamav.shtml" target="_blank">アンチウィルス(Clam AntiVirus)</a> を参考に行った。</p>
<h3>スパムメール対策</h3>
<p>スパムメール対策は <a href="http://centossrv.com/postfix-clamav-spamassassin.shtml" target="_blank">spamassassinの導入や設定</a> を参考に行った。</p>
<h3>postfixのMySQL対応化とpostfixadminの導入</h3>
<p><a href="http://centos.bungu-do.jp/2008/11/postfix_postfixmysqldovecotpos.html">Postfixによるメールサーバ構築 (Postfix+MySQL+Dovecot+postfixadmin)</a> を参考に行った。</p>
<p>MySQL対応は<a href="http://perl.no-tubo.net/2009/10/02/centos5-3-postfix%e3%82%92mysql%e5%af%be%e5%bf%9c%e3%81%ab%e3%81%99%e3%82%8b/"> CentOS5.3 PostfixをMySQL対応にする</a>で行った。</p>
<p>リンク先で作成した（cat となっているが vi 等で新規作成する事）</p>
<blockquote><p>/etc/postfix/mysql_virtual_alias_maps.cf<br />
/etc/postfix/mysql_virtual_domains_maps.cf<br />
/etc/postfix/mysql_virtual_mailbox_maps.cf<br />
/etc/postfix/mysql_virtual_mailbox_limit_maps.cf</p></blockquote>
<p>のファイルにはMySQLのパスワードが含まれているのでパーミッションの変更を行う事。</p>
<pre>chmod 640 /etc/postfix/mysql_*
chown root.postfix /etc/postfix/mysql_*</pre>
<p>メールの保存は/mail 以下となる。</p>
<p>だいたいうまくいくのだが、多少の変更が必要。</p>
<p>spamassassinを有効にするにはprocmailでメールボックスに配送しなければならない。</p>
<p>バーチャルドメインの場合procmailが使えないという記事が多かったので心配だったが、</p>
<p><a href="http://oshiete1.watch.impress.co.jp/qa3819766.html">postfixのバーチャルドメイン管理でのspamフィルタについて</a></p>
<p>を読むとどうやら使えるらしい。</p>
<h3>Postfixの設定</h3>
<h4>main.cfの設定。</h4>
<p><a href="http://centos.bungu-do.jp/2008/11/postfix_3_postfix.html"> http://centos.bungu-do.jp/2008/11/postfix_3_postfix.html</a> のmain.cf 設定を少々変更。</p>
<pre>cp /etc/postfix/main.cf /etc/postfix/main.cf.org
vi /etc/postfix/main.cf
-------------------------------------------------------------------------------
myhostname = <span style="color: #ff9900;">mail.example.com ←自メールサーバFQDN</span>
mydomain = <span style="color: #ff9900;">example.com ←自サーバドメイン</span>
#myorigin = $mydomain
myorigin = $myhostname

#inet_interfaces = localhost
inet_interfaces = all

#mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain
mydestination =

#relay_domains = $mydestination
relay_domains = $mydestination

home_mailbox = Maildir/

# IF YOU USE THIS TO DELIVER MAIL SYSTEM-WIDE, YOU MUST SET UP AN
# ALIAS THAT FORWARDS MAIL FOR ROOT TO A REAL USER.
#
#mailbox_command = /some/where/procmail
#mailbox_command = /some/where/procmail -a "$EXTENSION"
<span style="color: #ff9900;"> mailbox_command = /usr/bin/procmail ←追記
</span>
smtpd_banner = $myhostname ESMTP unknown

local_transport = virtual
<span style="color: #ff9900;"># virtual_transport = virtual ←コメントアウト
virtual_transport = procmail ←追記</span>
virtual_mailbox_base = /mail
virtual_alias_maps = mysql:/etc/postfix/mysql_virtual_alias_maps.cf
virtual_alias_domains = $virtual_alias_maps
virtual_mailbox_domains = mysql:/etc/postfix/mysql_virtual_domains_maps.cf
virtual_mailbox_maps = mysql:/etc/postfix/mysql_virtual_mailbox_maps.cf
virtual_minimum_uid = 10000
virtual_uid_maps = static:10000
virtual_gid_maps = static:10000

maximal_backoff_time = 800s
minimal_backoff_time = 100s
bounce_queue_lifetime = 60m
maximal_queue_lifetime = 60m

#mailbox_size_limit = 1024000000
message_size_limit = 20480000

#virtual_mailbox_limit = 51200000
virtual_mailbox_limit_maps = mysql:/etc/postfix/mysql_virtual_mailbox_limit_maps.cf
virtual_mailbox_limit_override = yes
virtual_overquota_bounce = yes
virtual_mailbox_limit_inbox = yes

smtpd_sasl_auth_enable = yes
smtpd_sasl_type = dovecot
smtpd_sasl_path = private/auth
smtpd_sasl_local_domain = $myhostname
smtpd_client_restrictions = reject_rbl_client bl.spamcop.net
smtpd_recipient_restrictions = permit_mynetworks, permit_sasl_authenticated, reject_unauth_destination
-------------------------------------------------------------------------------</pre>
<h4>master.cfの設定。</h4>
<pre>vi /etc/postfix/master.cf

<span style="color: #ff9900;">最終行に追記
procmail unix - n n - - pipe
  flags=R user=vuser argv=/usr/bin/procmail -t -m USER=${user} DOMAIN=${nexthop} /etc/procmailrc</span></pre>
<h4>procmailのルール、/etc/procmailrcを新規作成する。</h4>
<pre>vi /etc/procmailrc

SHELL=/bin/bash
PATH=/usr/bin:/bin
DEFAULT=/mail/$DOMAIN/$USER\@$DOMAIN/
#LOGFILE=/mail/procmail.log
LOGFILE=${DEFAULT}.procmail.log
#LOCKFILE=/mail/procmail.lock
LOCKFILE=/mail/$USER\@$DOMAIN.procmail.lock
VERBOSE=ON

:0fw
|/usr/bin/spamc</pre>
<p>LOGFILEはテスト段階では/mail/procmail.logにしておくと楽。</p>
<p>VERBOSE=ON は詳細ログを記録する設定なので本格運用する際にはコメントアウトする。</p>
<p>また、LOCKFILEはユーザー数が増えた時の為に各ユーザーごとにロックファイルを使うようにしてみた。</p>
<h4>ログの肥大化を防ぐため、ログローテーション設定ファイル新規作成する。</h4>
<pre>vi /etc/logrotate.d/procmail

/mail/*/*/.procmail.log {
    missingok
    nocreate
    notifempty
}</pre>
<p>注意点として、バーチャルドメインでの運用の場合ローカルユーザーのメールボックスにメールが配信されない。root宛のメールも然り。</p>
<p>root宛のメールが普段使っているメールアドレス宛に配信されるようにしておく。</p>
<pre>vi /etc/aliases

# Person who should get root's mail
#root:          marc
<span style="color: #33cccc;">root:           myname@domain.com ←最終行に追加</span>

newaliases</pre>
<p>myname@domain.comにroot宛のメールが届くようになる。</p>
<h4>テスト</h4>
<p>メールを配信してみてヘッダ情報を見る。</p>
<p>spamasassinが適用されていれば</p>
<blockquote><p>X-Spam-Checker-Version: SpamAssassin 3.2.5 (2008-06-10) on xxx.xxxx.jp<br />
X-Spam-Level:<br />
X-Spam-Status: No, score=-0.1 required=13.0 tests=AWL,CONTENT_TYPE_PRESENT, ISO2022JP_BODY,ISO2022JP_CHARSET,X_MAILER_PRESENT autolearn=ham version=3.2.5</p></blockquote>
<p>Clam AntiVirusが適用されていれば</p>
<blockquote><p>X-Virus-Scanned: amavisd-new at xxxx.jp</p></blockquote>
<p>がヘッダ情報に挿入されているはず。</p>
<p>その他のテスト方法は各リンクに掲載されていた通り。</p>
<h4>ユーザーメールディレクトリが作成されない</h4>
<p>・・・なぜかメールディレクトリが作成されない。</p>
<p>spamチェックのためメール配送をprocmailにするとディレクトリ作成されない事が判明。</p>
<p>メール用ディレクトリは /mail 以下で、ユーザーが vuser 、グループが vuser 、パーミッションは0771。</p>
<p>とりあえずユーザー postfix にセカンダリグループ vuserを追加してみたら既存のドメインには作成される。</p>
<p>新規にドメイン追加＞メールアドレス追加の場合は作成されない。</p>
<h4>この後したい事</h4>
<p>postfixadminでドメイン、メールユーザー等を削除した場合は各ディレクトリが削除されない。</p>
<p>postfixadminのconfig.inc.phpにオプション設定があるが、シェルスクリプトで各動作が行えるようだ。</p>
<p>シェルスクリプト・・・書けねぇ。。。</p>
<p><a href="http://local.lipwood.com/content/view/69/129/">postfixadminでメールボックスを削除する<br />
</a><a href="http://www.yanbe.net/blog/archives/000242.html"> PostfixAdminのイケてないところ</a></p>
<p>この辺に該当の対処が書かれている。</p>
<p>cronを使って削除する方法のようだ。</p>
<p>postfixadmin/ADDITIONS 内にある、</p>
<blockquote><p>postfixadmin-domain-postdeletion.sh<br />
postfixadmin-mailbox-postcreation.sh<br />
postfixadmin-mailbox-postdeletion.sh</p></blockquote>
<p>こいつらを使えば出来るかな？</p>
<p>以下は分かりにくいのでまとめてみた</p>
<h4><a href="http://perl.no-tubo.net/2009/10/15/postfixadmin-procmail%e3%81%aa%e7%92%b0%e5%a2%83%e3%81%a7%e3%83%a1%e3%83%bc%e3%83%ab%e3%83%87%e3%82%a3%e3%83%ac%e3%82%af%e3%83%88%e3%83%aa%e3%81%ae%e4%bd%9c%e6%88%90%e3%83%bb%e5%89%8a%e9%99%a4/"> postfixadmin +procmailな環境でメールディレクトリの作成・削除</a></h4>
<h3>自動メールボックス作成に挑戦</h3>
<p><span id="more-187"></span>/usr/local/bin/postfixadmin あたりにコピーする。</p>
<pre>mkdir /usr/local/bin/postfixadmin <span style="color: #ff9900;">←保存用ディレクトリ作成</span>
cd /var/www/postfixadmin/ADDITIONS
cp postfixadmin-domain-postdeletion.sh /usr/local/bin/postfixadmin
cp postfixadmin-mailbox-postcreation.sh /usr/local/bin/postfixadmin
cp postfixadmin-mailbox-postdeletion.sh /usr/local/bin/postfixadmin</pre>
<pre>cd /usr/local/bin/postfixadmin
vi postfixadmin-domain-postdeletion.sh

# Change this to where you keep your virtual mail users' maildirs.
<span style="color: #ff9900;">#basedir=/var/spool/maildirs ←コメントアウト
</span><span style="color: #ff9900;">basedir=/mail ←追記</span></pre>
<pre>vi postfixadmin-mailbox-postcreation.sh

# Change this to where you keep your virtual mail users' maildirs.
<span style="color: #ff9900;">#basedir=/var/spool/maildirs ←コメントアウト
</span><span style="color: #ff9900;">basedir=/mail ←追記
</span><span style="color: #ff9900;">
</span><span style="color: #ff9900;">コメントアウト
#maildirmake "$maildir"
#if [ ! -d "$maildir" ]; then
#    echo "$0: maildirmake didn't produce a directory; bailing out."
#    exit 1
#fi</span><span style="color: #ff9900;">

</span><span style="color: #ff9900;">追記
mkdir "$maildir"
if [ ! -d "$maildir" ]; then
echo "$0: mkdir didn't produce a directory; bailing out."
exit 1
fi

mkdir "${maildir}cur"
if [ ! -d "${maildir}cur" ]; then
echo "$0: mkdir didn't produce a directory; bailing out."
exit 1
fi

mkdir "${maildir}new"
if [ ! -d "${maildir}new" ]; then
echo "$0: mkdir didn't produce a directory; bailing out."
exit 1
fi

mkdir "${maildir}tmp"
if [ ! -d "${maildir}tmp" ]; then
echo "$0: mkdir didn't produce a directory; bailing out."
exit 1
fi

chown -R vuser:vuser "$maildir"
chmod -R 700 "$maildir"</span></pre>
<pre>vi postfixadmin-mailbox-postdeletion.sh

# Change this to where you keep your virtual mail users' maildirs.
<span style="color: #ff9900;">#basedir=/var/spool/maildirs ←コメントアウト
basedir=/mail ←追記</span></pre>
<p>実行権を与える</p>
<pre>chmod 700 /usr/local/bin/postfixadmin/postfixadmin*</pre>
<p>postfixadmin 設定ファイル修正</p>
<pre>vi /var/www/postfixadmin/config.inc.php

// Optional:
// Script to run after creation of mailboxes.
// Note that this may fail if PHP is run in "safe mode", or if
// operating system features (such as SELinux) or limitations
// prevent the web-server from executing external scripts.
<span style="color: #ff9900;">// $CONF['mailbox_postcreation_script']='sudo -u courier /usr/local/bin/postfixadmin-mailbox-postcreation.sh'; ←コメントアウト
$CONF['mailbox_postcreation_script']='sudo /usr/local/bin/postfixadmin/postfixadmin-mailbox-postcreation.sh'; ←追記</span></pre>
<p>sudo変更<br />
※ 終了するには esc の後に、大文字で ZZ</p>
<pre>visudo

#
# Disable "ssh hostname sudo ", because it will show the password in clear.
#         You have to run "ssh -t hostname sudo ".
#
<span style="color: #ff9900;">#Defaults    requiretty ←コメントアウト
</span>
## The COMMANDS section may have other options added to it.
##
## Allow root to run any commands anywhere
root    ALL=(ALL)       ALL
<span style="color: #ff9900;">apache ALL=(ALL) NOPASSWD: /usr/local/bin/postfixadmin/postfixadmin-mailbox-postcreation.sh ←追記</span></pre>
]]></content:encoded>
			<wfw:commentRss>http://perl.no-tubo.net/2009/10/14/%e3%83%a1%e3%83%bc%e3%83%ab%e3%82%b5%e3%83%bc%e3%83%90%e6%a7%8b%e7%af%89%ef%bc%88postfix-mysql-dovecot-postfixadmin%ef%bc%89-2/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>CentOS5.3 PostfixをMySQL対応にする</title>
		<link>http://perl.no-tubo.net/2009/10/02/centos5-3-postfix%e3%82%92mysql%e5%af%be%e5%bf%9c%e3%81%ab%e3%81%99%e3%82%8b/</link>
		<comments>http://perl.no-tubo.net/2009/10/02/centos5-3-postfix%e3%82%92mysql%e5%af%be%e5%bf%9c%e3%81%ab%e3%81%99%e3%82%8b/#comments</comments>
		<pubDate>Fri, 02 Oct 2009 09:40:04 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[CentOS5.x]]></category>
		<category><![CDATA[MySQL]]></category>
		<category><![CDATA[メールサーバ]]></category>

		<guid isPermaLink="false">http://pet.no-tubo.net/?p=182</guid>
		<description><![CDATA[yumでインストールされていたらアンインストール
yum erase postfix
ダウンロード
最新版の確認（/5.x/centosplus/SRPMS/より）
rpm -ivh http://ftp.riken.j [...]]]></description>
			<content:encoded><![CDATA[<p>yumでインストールされていたらアンインストール</p>
<pre>yum erase postfix</pre>
<h4>ダウンロード</h4>
<p><a href="http://ftp.riken.jp/Linux/centos/">最新版の確認</a>（/5.x/centosplus/SRPMS/より）</p>
<pre>rpm -ivh http://ftp.riken.jp/Linux/centos/5.4/centosplus/SRPMS/postfix-2.3.3-2.1.centos.mysql_pgsql.src.rpm</pre>
<h4>コンパイル前の下準備</h4>
<p>Postfix をMySQL対応にするためpostfix.specを編集。</p>
<pre>cd /usr/src/redhat/SPECS/
vi postfix.spec
..
%define MYSQL 1　←確認（0なら1に修正）
..</pre>
<h4>コンパイル</h4>
<p>srpmからrpmを作成する。</p>
<pre>rpmbuild -bb postfix.spec</pre>
<h4>インストール</h4>
<p>出来上がったRPMをインストールする。</p>
<pre>cd /usr/src/redhat/RPMS/i386/
rpm -Uvh postfix-2.3.3-2.1.centos.mysql_pgsql.i386.rpm</pre>
<h4>yumの自動アップデートから外す</h4>
<p>yum update で postfix* なパッケージがアップデートされなくなる。</p>
<p>これをしないとyumの自動アップデート時にMySQL非対応に戻ってしまう。</p>
<pre>vi /etc/yum.conf
<span style="color: #ff0000;"> exclude=postfix*　←最終業に追記</span></pre>
<p>↑手動でもやりましたけど<br />
<a href="http://perl.no-tubo.net/2010/03/08/postfixをyumでアップデートしてしまった-orz/">Postfixをyumでアップデートしてしまった orz&#8230;</a></p>
]]></content:encoded>
			<wfw:commentRss>http://perl.no-tubo.net/2009/10/02/centos5-3-postfix%e3%82%92mysql%e5%af%be%e5%bf%9c%e3%81%ab%e3%81%99%e3%82%8b/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>CentOS5.3 メールサーバ構築（Postfix +qmail +vpopmail +Dovecot）</title>
		<link>http://perl.no-tubo.net/2009/09/30/centos5-3-%e3%83%a1%e3%83%bc%e3%83%ab%e3%82%b5%e3%83%bc%e3%83%90%e6%a7%8b%e7%af%89%ef%bc%88postfix-qmail-vpopmail-dovecot%ef%bc%89/</link>
		<comments>http://perl.no-tubo.net/2009/09/30/centos5-3-%e3%83%a1%e3%83%bc%e3%83%ab%e3%82%b5%e3%83%bc%e3%83%90%e6%a7%8b%e7%af%89%ef%bc%88postfix-qmail-vpopmail-dovecot%ef%bc%89/#comments</comments>
		<pubDate>Wed, 30 Sep 2009 09:34:01 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[CentOS5.x]]></category>
		<category><![CDATA[メールサーバ]]></category>

		<guid isPermaLink="false">http://pet.no-tubo.net/?p=179</guid>
		<description><![CDATA[CentOSで自宅サーバー構築を参考に構築したが、途中でエラーが出たのでメモ。
19.独自のメールアドレスをつくる(Postfix編)メールサーバー構築(Postfix+Dovecot)CentOS4/CentOS5ht [...]]]></description>
			<content:encoded><![CDATA[<p style="margin-top: 10px; margin-right: 12px; margin-bottom: 10px; margin-left: 12px; font-size: 13px; font-weight: normal; font-style: normal; font-family: Verdana, 'ヒラギノ角ゴ Pro W3', 'ＭＳ ゴシック', Osaka‐等幅; text-align: left; color: #444444; line-height: 1.4; padding: 0px;">CentOSで自宅サーバー構築を参考に構築したが、途中でエラーが出たのでメモ。</p>
<p style="margin-top: 10px; margin-right: 12px; margin-bottom: 10px; margin-left: 12px; font-size: 13px; font-weight: normal; font-style: normal; font-family: Verdana, 'ヒラギノ角ゴ Pro W3', 'ＭＳ ゴシック', Osaka‐等幅; text-align: left; color: #444444; line-height: 1.4; padding: 0px;">19.独自のメールアドレスをつくる(Postfix編)<br style="font-size: 13px; font-weight: normal; font-style: normal; font-family: Verdana, 'ヒラギノ角ゴ Pro W3', 'ＭＳ ゴシック', Osaka‐等幅; text-align: left; color: #111111; padding: 0px; margin: 0px;" />メールサーバー構築(Postfix+Dovecot)CentOS4/CentOS5<br style="font-size: 13px; font-weight: normal; font-style: normal; font-family: Verdana, 'ヒラギノ角ゴ Pro W3', 'ＭＳ ゴシック', Osaka‐等幅; text-align: left; color: #111111; padding: 0px; margin: 0px;" /><a style="font-size: 13px; font-weight: normal; font-style: normal; font-family: Verdana, 'ヒラギノ角ゴ Pro W3', 'ＭＳ ゴシック', Osaka‐等幅; text-align: left; color: #333333; text-decoration: underline; padding: 0px; margin: 0px;" href="http://centossrv.com/postfix.shtml" target="_blank">http://centossrv.com/postfix.shtml</a><br style="font-size: 13px; font-weight: normal; font-style: normal; font-family: Verdana, 'ヒラギノ角ゴ Pro W3', 'ＭＳ ゴシック', Osaka‐等幅; text-align: left; color: #111111; padding: 0px; margin: 0px;" />バーチャルドメイン設定(Postfix&amp;Dovecot+qmail&amp;vpopmail)CentOS5<br style="font-size: 13px; font-weight: normal; font-style: normal; font-family: Verdana, 'ヒラギノ角ゴ Pro W3', 'ＭＳ ゴシック', Osaka‐等幅; text-align: left; color: #111111; padding: 0px; margin: 0px;" /><a style="font-size: 13px; font-weight: normal; font-style: normal; font-family: Verdana, 'ヒラギノ角ゴ Pro W3', 'ＭＳ ゴシック', Osaka‐等幅; text-align: left; color: #333333; text-decoration: underline; padding: 0px; margin: 0px;" href="http://centossrv.com/postfix-vpopmail.shtml" target="_blank">http://centossrv.com/postfix-vpopmail.shtml</a><br style="font-size: 13px; font-weight: normal; font-style: normal; font-family: Verdana, 'ヒラギノ角ゴ Pro W3', 'ＭＳ ゴシック', Osaka‐等幅; text-align: left; color: #111111; padding: 0px; margin: 0px;" />vpopmail用メールアカウント&amp;メーリングリスト管理システム導入(Postfix+qmailadmin)CentOS5<br style="font-size: 13px; font-weight: normal; font-style: normal; font-family: Verdana, 'ヒラギノ角ゴ Pro W3', 'ＭＳ ゴシック', Osaka‐等幅; text-align: left; color: #111111; padding: 0px; margin: 0px;" /><a style="font-size: 13px; font-weight: normal; font-style: normal; font-family: Verdana, 'ヒラギノ角ゴ Pro W3', 'ＭＳ ゴシック', Osaka‐等幅; text-align: left; color: #333333; text-decoration: underline; padding: 0px; margin: 0px;" href="http://centossrv.com/postfix-qmailadmin.shtml" target="_blank">http://centossrv.com/postfix-qmailadmin.shtml</a></p>
<p style="margin-top: 10px; margin-right: 12px; margin-bottom: 10px; margin-left: 12px; font-size: 13px; font-weight: normal; font-style: normal; font-family: Verdana, 'ヒラギノ角ゴ Pro W3', 'ＭＳ ゴシック', Osaka‐等幅; text-align: left; color: #444444; line-height: 1.4; padding: 0px;"><br style="font-size: 13px; font-weight: normal; font-style: normal; font-family: Verdana, 'ヒラギノ角ゴ Pro W3', 'ＭＳ ゴシック', Osaka‐等幅; text-align: left; color: #111111; padding: 0px; margin: 0px;" />エラーが出たのは、バーチャルドメイン設定（<a style="font-size: 13px; font-weight: normal; font-style: normal; font-family: Verdana, 'ヒラギノ角ゴ Pro W3', 'ＭＳ ゴシック', Osaka‐等幅; text-align: left; color: #333333; text-decoration: underline; padding: 0px; margin: 0px;" href="http://centossrv.com/postfix-vpopmail.shtml" target="_blank">http://centossrv.com/postfix-vpopmail.shtml</a>）のDovecotのRPM作成時。<br style="font-size: 13px; font-weight: normal; font-style: normal; font-family: Verdana, 'ヒラギノ角ゴ Pro W3', 'ＭＳ ゴシック', Osaka‐等幅; text-align: left; color: #111111; padding: 0px; margin: 0px;" />使用したsrpmは dovecot-1.0.7-7.el5.src.rpm</p>
<blockquote>
<p style="margin-top: 10px; margin-right: 12px; margin-bottom: 10px; margin-left: 12px; font-size: 13px; font-weight: normal; font-style: normal; font-family: Verdana, 'ヒラギノ角ゴ Pro W3', 'ＭＳ ゴシック', Osaka‐等幅; text-align: left; color: #444444; line-height: 1.4; padding: 0px;">rpmbuild -bb &#8211;clean /usr/src/redhat/SPECS/dovecot.spec<br style="font-size: 13px; font-weight: normal; font-style: normal; font-family: Verdana, 'ヒラギノ角ゴ Pro W3', 'ＭＳ ゴシック', Osaka‐等幅; text-align: left; color: #111111; padding: 0px; margin: 0px;" /></p>
</blockquote>
<p style="margin-top: 10px; margin-right: 12px; margin-bottom: 10px; margin-left: 12px; font-size: 13px; font-weight: normal; font-style: normal; font-family: Verdana, 'ヒラギノ角ゴ Pro W3', 'ＭＳ ゴシック', Osaka‐等幅; text-align: left; color: #444444; line-height: 1.4; padding: 0px;">で、どうしても途中でこける。</p>
<p style="margin-top: 10px; margin-right: 12px; margin-bottom: 10px; margin-left: 12px; font-size: 13px; font-weight: normal; font-style: normal; font-family: Verdana, 'ヒラギノ角ゴ Pro W3', 'ＭＳ ゴシック', Osaka‐等幅; text-align: left; color: #444444; line-height: 1.4; padding: 0px;">
<blockquote><p>Install prefix &#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;. : /usr<br />
File offsets &#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230; : 64bit<br />
I/O loop method &#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230; : poll<br />
File change notification method &#8230;.. : inotify<br />
Building with SSL support &#8230;&#8230;&#8230;.. : yes (OpenSSL)<br />
Building with IPv6 support &#8230;&#8230;&#8230;. : yes<br />
Building with pop3 server &#8230;&#8230;&#8230;.. : yes<br />
Building with mail delivery agent  .. : yes<br />
Building with GSSAPI support &#8230;&#8230;.. : no<br />
Building with user database modules . : static prefetch passwd passwd-file checkpassword vpopmail (modules)<br />
Building with password lookup modules : passwd passwd-file shadow pam checkpassword vpopmail (modules)<br />
Building with SQL drivers &#8230;&#8230;&#8230;&#8230;:<br />
+ &#8211;with-pgsql &#8211;with-mysql &#8211;with-ssl=openssl &#8211;with-ssldir=/etc/pki/dovecot &#8211;with-ldap &#8211;with-inotify &#8211;with-gssapi<br />
/var/tmp/rpm-tmp.53261: line 61: &#8211;with-pgsql: command not found<br />
エラー: /var/tmp/rpm-tmp.53261 の不正な終了ステータス (%build)</p>
<p>RPM ビルドエラー:<br />
/var/tmp/rpm-tmp.53261 の不正な終了ステータス (%build)</p></blockquote>
<p style="margin-top: 10px; margin-right: 12px; margin-bottom: 10px; margin-left: 12px; font-size: 13px; font-weight: normal; font-style: normal; font-family: Verdana, 'ヒラギノ角ゴ Pro W3', 'ＭＳ ゴシック', Osaka‐等幅; text-align: left; color: #444444; line-height: 1.4; padding: 0px;">ググっていたら<br style="font-size: 13px; font-weight: normal; font-style: normal; font-family: Verdana, 'ヒラギノ角ゴ Pro W3', 'ＭＳ ゴシック', Osaka‐等幅; text-align: left; color: #111111; padding: 0px; margin: 0px;" /><a style="font-size: 13px; font-weight: normal; font-style: normal; font-family: Verdana, 'ヒラギノ角ゴ Pro W3', 'ＭＳ ゴシック', Osaka‐等幅; text-align: left; color: #333333; text-decoration: underline; padding: 0px; margin: 0px;" href="http://tkoshima.net/mt/2007/08/15/200708151413.php" target="_blank">http://tkoshima.net/mt/2007/08/15/200708151413.php</a><br style="font-size: 13px; font-weight: normal; font-style: normal; font-family: Verdana, 'ヒラギノ角ゴ Pro W3', 'ＭＳ ゴシック', Osaka‐等幅; text-align: left; color: #111111; padding: 0px; margin: 0px;" />を発見。<br style="font-size: 13px; font-weight: normal; font-style: normal; font-family: Verdana, 'ヒラギノ角ゴ Pro W3', 'ＭＳ ゴシック', Osaka‐等幅; text-align: left; color: #111111; padding: 0px; margin: 0px;" />とりあえずこちらの方法でRPMを作成したらうまくいった。<br style="font-size: 13px; font-weight: normal; font-style: normal; font-family: Verdana, 'ヒラギノ角ゴ Pro W3', 'ＭＳ ゴシック', Osaka‐等幅; text-align: left; color: #111111; padding: 0px; margin: 0px;" />作成したRPMはそのまま使い、後の手順を引き続き行った。</p>
<p style="margin-top: 10px; margin-right: 12px; margin-bottom: 10px; margin-left: 12px; font-size: 13px; font-weight: normal; font-style: normal; font-family: Verdana, 'ヒラギノ角ゴ Pro W3', 'ＭＳ ゴシック', Osaka‐等幅; text-align: left; color: #444444; line-height: 1.4; padding: 0px;">・・・ただし、うまくメールが配送されない。</p>
<p style="margin-top: 10px; margin-right: 12px; margin-bottom: 10px; margin-left: 12px; font-size: 13px; font-weight: normal; font-style: normal; font-family: Verdana, 'ヒラギノ角ゴ Pro W3', 'ＭＳ ゴシック', Osaka‐等幅; text-align: left; color: #444444; line-height: 1.4; padding: 0px;">とりあえずqmailadminだとドメインの管理が面倒だという事に気がつく。</p>
<p style="margin-top: 10px; margin-right: 12px; margin-bottom: 10px; margin-left: 12px; font-size: 13px; font-weight: normal; font-style: normal; font-family: Verdana, 'ヒラギノ角ゴ Pro W3', 'ＭＳ ゴシック', Osaka‐等幅; text-align: left; color: #444444; line-height: 1.4; padding: 0px;">ということで、Qmail+ vpopmailはやめる事に。</p>
<p style="margin-top: 10px; margin-right: 12px; margin-bottom: 10px; margin-left: 12px; font-size: 13px; font-weight: normal; font-style: normal; font-family: Verdana, 'ヒラギノ角ゴ Pro W3', 'ＭＳ ゴシック', Osaka‐等幅; text-align: left; color: #444444; line-height: 1.4; padding: 0px;">Postfix+MySQL+Dovecot+postfixadminで管理する事に決定。</p>
]]></content:encoded>
			<wfw:commentRss>http://perl.no-tubo.net/2009/09/30/centos5-3-%e3%83%a1%e3%83%bc%e3%83%ab%e3%82%b5%e3%83%bc%e3%83%90%e6%a7%8b%e7%af%89%ef%bc%88postfix-qmail-vpopmail-dovecot%ef%bc%89/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>CentOS 5.3 へPHP5.30をyumでインストール</title>
		<link>http://perl.no-tubo.net/2009/09/19/centos-5-3-%e3%81%b8php5-30%e3%82%92yum%e3%81%a7%e3%82%a4%e3%83%b3%e3%82%b9%e3%83%88%e3%83%bc%e3%83%ab/</link>
		<comments>http://perl.no-tubo.net/2009/09/19/centos-5-3-%e3%81%b8php5-30%e3%82%92yum%e3%81%a7%e3%82%a4%e3%83%b3%e3%82%b9%e3%83%88%e3%83%bc%e3%83%ab/#comments</comments>
		<pubDate>Sat, 19 Sep 2009 09:05:31 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[CentOS5.x]]></category>
		<category><![CDATA[phpmyadmin]]></category>
		<category><![CDATA[サーバ管理]]></category>

		<guid isPermaLink="false">http://pet.no-tubo.net/?p=167</guid>
		<description><![CDATA[phpmyadmin3.2xxでphp5.2以上が必要なのでインストール。CentOS5.3のデフォルトだとphp5.16がインストールされる。
こちらの手順にてhttp://centoshome.seesaa.net/ [...]]]></description>
			<content:encoded><![CDATA[<p style="margin-top: 10px; margin-right: 12px; margin-bottom: 10px; margin-left: 12px; font-size: 13px; font-weight: normal; font-style: normal; font-family: Verdana, 'ヒラギノ角ゴ Pro W3', 'ＭＳ ゴシック', Osaka‐等幅; text-align: left; color: #444444; line-height: 1.4; padding: 0px;">phpmyadmin3.2xxでphp5.2以上が必要なのでインストール。<br style="font-size: 13px; font-weight: normal; font-style: normal; font-family: Verdana, 'ヒラギノ角ゴ Pro W3', 'ＭＳ ゴシック', Osaka‐等幅; text-align: left; color: #111111; padding: 0px; margin: 0px;" />CentOS5.3のデフォルトだとphp5.16がインストールされる。</p>
<p style="margin-top: 10px; margin-right: 12px; margin-bottom: 10px; margin-left: 12px; font-size: 13px; font-weight: normal; font-style: normal; font-family: Verdana, 'ヒラギノ角ゴ Pro W3', 'ＭＳ ゴシック', Osaka‐等幅; text-align: left; color: #444444; line-height: 1.4; padding: 0px;">こちらの手順にて<br style="font-size: 13px; font-weight: normal; font-style: normal; font-family: Verdana, 'ヒラギノ角ゴ Pro W3', 'ＭＳ ゴシック', Osaka‐等幅; text-align: left; color: #111111; padding: 0px; margin: 0px;" /><a style="font-size: 13px; font-weight: normal; font-style: normal; font-family: Verdana, 'ヒラギノ角ゴ Pro W3', 'ＭＳ ゴシック', Osaka‐等幅; text-align: left; color: #333333; text-decoration: underline; padding: 0px; margin: 0px;" href="http://centoshome.seesaa.net/article/117329591.html" target="_blank">http://centoshome.seesaa.net/article/117329591.html</a></p>
<p style="margin-top: 10px; margin-right: 12px; margin-bottom: 10px; margin-left: 12px; font-size: 13px; font-weight: normal; font-style: normal; font-family: Verdana, 'ヒラギノ角ゴ Pro W3', 'ＭＳ ゴシック', Osaka‐等幅; text-align: left; color: #444444; line-height: 1.4; padding: 0px;">
<p style="margin-top: 10px; margin-right: 12px; margin-bottom: 10px; margin-left: 12px; font-size: 13px; font-weight: normal; font-style: normal; font-family: Verdana, 'ヒラギノ角ゴ Pro W3', 'ＭＳ ゴシック', Osaka‐等幅; text-align: left; color: #444444; line-height: 1.4; padding: 0px;">確認<br style="font-size: 13px; font-weight: normal; font-style: normal; font-family: Verdana, 'ヒラギノ角ゴ Pro W3', 'ＭＳ ゴシック', Osaka‐等幅; text-align: left; color: #111111; padding: 0px; margin: 0px;" /></p>
<blockquote>
<p style="margin-top: 10px; margin-right: 12px; margin-bottom: 10px; margin-left: 12px; font-size: 13px; font-weight: normal; font-style: normal; font-family: Verdana, 'ヒラギノ角ゴ Pro W3', 'ＭＳ ゴシック', Osaka‐等幅; text-align: left; color: #444444; line-height: 1.4; padding: 0px;"># php -v<br style="font-size: 13px; font-weight: normal; font-style: normal; font-family: Verdana, 'ヒラギノ角ゴ Pro W3', 'ＭＳ ゴシック', Osaka‐等幅; text-align: left; color: #111111; padding: 0px; margin: 0px;" />PHP 5.3.0 (cli) (built: Jul 19 2009 17:55:08) <br style="font-size: 13px; font-weight: normal; font-style: normal; font-family: Verdana, 'ヒラギノ角ゴ Pro W3', 'ＭＳ ゴシック', Osaka‐等幅; text-align: left; color: #111111; padding: 0px; margin: 0px;" />Copyright (c) 1997-2009 The PHP Group<br style="font-size: 13px; font-weight: normal; font-style: normal; font-family: Verdana, 'ヒラギノ角ゴ Pro W3', 'ＭＳ ゴシック', Osaka‐等幅; text-align: left; color: #111111; padding: 0px; margin: 0px;" />Zend Engine v2.3.0, Copyright (c) 1998-2009 Zend Technologies</p>
</blockquote>
]]></content:encoded>
			<wfw:commentRss>http://perl.no-tubo.net/2009/09/19/centos-5-3-%e3%81%b8php5-30%e3%82%92yum%e3%81%a7%e3%82%a4%e3%83%b3%e3%82%b9%e3%83%88%e3%83%bc%e3%83%ab/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
