« 2006年04月 | メイン | 2006年06月 »

2006年05月28日

Courier-Imapの設定

Courier Authentication Libraryインストールに必要なパッケージをインストール
yum -y install expect ← expectインストール
yum -y install mysql-devel ← mysql-develインストール
yum -y install postgresql-devel ← postgresql-develインストール
yum -y install libtool-ltdl-devel ← libtool-ltdl-develインストール※FC4のみ
wget http://jaist.dl.sourceforge.net/sourceforge/courier/courier-authlib-0.57.tar.bz2
 ← Courier Authentication Libraryダウンロード
rpmbuild -tb courier-authlib-0.57.tar.bz2 ← Courier Authentication LibraryのRPMパッケージ作成
rpm -Uvh /usr/src/redhat/RPMS/i386/courier-authlib-0.57-1.4.i386.rpm
 ← 作成したRPMパッケージ(courier-authlib)インストール
rpm -Uvh /usr/src/redhat/RPMS/i386/courier-authlib-devel-0.57-1.4.i386.rpm
 ← 作成したRPMパッケージ(courier-authlib-devel)インストール
rm -f courier-authlib-0.57.tar.bz2 ← ダウンロードしたCourier Authentication Library削除
(2)Courier-IMAPインストール

Courier-IMAPインストールに必要なパッケージをインストール
[ yum -y install fam-devel ← fam-develインストール

yum -y install openldap-servers ← openldap-serversインストール

ROOT以外のユーザで
su - non-root ← 一般ユーザへ切替
mkdir -p rpm/{SOURCES,SPECS,BUILD,RPMS/i386} ← RPMパッケージ作成作業用ディレクトリ作成

echo "%_topdir $HOME/rpm" >> .rpmmacros ← RPMパッケージ作成作業用ディレクトリ設定

wget http://jaist.dl.sourceforge.net/sourceforge/courier/courier-imap-4.0.6.tar.bz2 ← Courier-IMAPダウンロード

tar jxvf courier-imap-4.0.6.tar.bz2 courier-imap-4.0.6/courier-imap.spec ← specファイル取り出し

sed -i 's/fam/gamin/g' courier-imap-4.0.6/courier-imap.spec ← famをgaminに置き換え

mv courier-imap-4.0.6/courier-imap.spec rpm/SPECS/ ← 修正したspecファイルを所定のディレクトリへ移動

[non-root@l~]$ mv courier-imap-4.0.6.tar.bz2 rpm/SOURCES/ ← ダウンロードしたソースアーカイブを所定のディレクトリへ移動

export PATH=`echo $PATH|sed 's/\/usr\/local\/bin/\/usr\/bin/g'`

rpmbuild -bb --define 'xflags "--enable-unicode=iso-2022-jp,iso-8859-1"' rpm/SPECS/courier-imap.spec
 ← Courier-IMAPのRPMパッケージ作成
rm -rf courier-imap-4.0.6 ← specファイル取り出し時に作成されたディレクトリ削除
rm -f courier-imap-4.0.6.tar.bz2 ← ダウンロードしたCourier-IMAP削除
exit ← rootへ戻る
rpm -Uvh /home/non-root/rpm/RPMS/i386/courier-imap-4.0.6-1.4.i386.rpm ← 作成したRPMパッケージをインストール
rm -f /home/non-root/.rpmmacros ← RPMパッケージ作成作業用ディレクトリ設定ファイル削除
rm -rf /home/non-root/rpm ← RPMパッケージ作成作業用ディレクトリ削除

■Courier-IMAP設定
(1)Courier-IMAP設定
sed -i 's/POP3DSTART=YES/POP3DSTART=NO/g' /usr/lib/courier-imap/etc/pop3d ← POP機能の無効化
sed -i 's/POP3DSSLSTART=YES/POP3DSSLSTART=NO/g' /usr/lib/courier-imap/etc/pop3d-ssl ← POP(SSL)機能の無効化
vi /etc/authlib/authdaemonrc ← courier-IMAP認証設定ファイル編集
authmodulelist="authuserdb authpam authpgsql authldap authmysql authcustom authvchkpw authpipe"

authmodulelist="authpam" ← 認証機能をPAM認証のみにする
※使用できない認証機能を定義したままにしておくと、courier-IMAP起動時のメールログにエラーメッセージが出力される


(2)メールボックスのDovecotからの移行※Dovecotによりメールサーバーを運営済の場合のみ
vi dovecot_to_courier ← 移行スクリプト作成
#!/bin/bash

for user in `ls /home`
do
id -u $user > /dev/null 2>&1
if [ $? -eq 0 ] && [ -d /home/$user/Maildir ]; then
rm -rf /home/$user/Maildir/.INBOX
rm -f /home/$user/Maildir/.customflags
rm -f /home/$user/Maildir/.subscriptions
echo $user
fi
done

[root@~]# sh dovecot_to_courier ← 移行スクリプト実行
user



user

[root@~]# rm -f dovecot_to_courier ← 移行スクリプト削除



■Courier-IMAP起動
(1)Courier-IMAP起動
[root@~]# /etc/rc.d/init.d/courier-authlib start ← courier-authlib起動
Starting Courier authentication services: authdaemond

/etc/rc.d/init.d/courier-imap start ← courier-IMAP起動
Starting Courier-IMAP server: imap generating-SSL-certificate... imap-ssl

chkconfig courier-authlib on ← courier-authlib自動起動設定

chkconfig courier-imap on ← courier-IMAP自動起動設定

chkconfig --list courier-authlib ← courier-authlib自動起動設定確認
courier-authlib 0:off 1:off 2:on 3:on 4:on 5:on 6:off ← ランレベル2~5のonを確認

chkconfig --list courier-imap ← courier-IMAP自動起動設定確認
courier-imap 0:off 1:off 2:on 3:on 4:on 5:on 6:off ← ランレベル2~5のonを確認



メールサーバ構築の過程

今週できた事:
COURIER-IMAPに関するパケージインスドールした。困ったパケージの欠如問題も解決した。
COURIER-IMAPの設定もやった。
今週できなかった事:
1.POPポート
2.POSTFIXの設定の中でメールを保存するdirectoryの設定問題があって、成功的に送信したメールほぞんされてない。
3.COURIER-IMAPの設定をやってサーバも接続したけど何か問題があるので急に切断された。今調べている

以上の問題を解決できるように、今までやった設定、全部纏める。
1.POSTFIXの設定
vi /etc/postfix/main.cf ← Postfix設定ファイル編集
mydomain = *.com ← 追加(自ドメイン名を指定)
myorigin = $mydomain ← 追加(ローカルからのメール送信時の送信元メールアドレス@以降にドメイン名を付加)
inet_interfaces = all ← 変更(外部からのメール受信を許可)
mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain ← 変更(自ドメイン宛メールを受信できるようにする)
home_mailbox = Maildir/ ← 追加(メールボックス形式をMaildir形式にする)
mailbox_command = /usr/bin/procmail (やってない事)← 追加(Procmailと連携するようにする)
smtpd_banner = $myhostname ESMTP unknown ← 追加(メールサーバーソフト名の隠蔽化)
以下を最終行へ追加(SMTP-Auth設定)
smtpd_sasl_auth_enable = yes
smtpd_sasl_local_domain = $myhostname
smtpd_recipient_restrictions = permit_mynetworks, permit_sasl_authenticated, reject_unauth_destination
以下を最終行へ追加(メール不正中継ホストのデータベースに登録されているホストからの接続を拒否する場合)
smtpd_client_restrictions = reject_rbl_client relays.ordb.org
以下を最終行へ追加(SMTP-Auth設定)
message_size_limit = 10485760 ← 追加(受信メールサイズを10MB=10*1024*1024に制限)

alternatives --config mta ← メールサーバー切替え

2 プログラムがあり 'mta'を提供します。

選択 コマンド
-----------------------------------------------
*+ 1 /usr/sbin/sendmail.sendmail
2 /usr/sbin/sendmail.postfix

Enterを押して現在の選択[+]を保持するか、選択番号を入力します:2 ← 2を応答

2006年05月20日

2006.05.15--2006.05.19研究の進捗

月曜:postfix のインストール(前回110ポートアクセスできなかったので今度、インストール時firewallを
     無効にしました)PHP,APCHE,MySqlのインストールである。
火曜:WebMin のインストール(今度、インストールしたWebMin、最新の版本だが、インストールと設定する
ときいろいろな問題出て来た。
   黙認のユーザがルートの変わりにADMINに変更した(前の版本で黙認のユーザがルー ト で した)如何し
ても登録出来ないので、インターネットからいろいろ調べて、パスワードの問題と思 っ て、先生と村本さん
に手伝ってもらって、やっと解決しました.
水、木曜:1.php、mysql、Apacheの運行状態の検測
     2.hostname,domain,mailldirいろいろ設定した、ちなみに一回で成功じゃなくて、3回、四回目      ときやっと完成した。いろいろと勉強になった。
     courierIMAPをYUMコマンドでインストールしたけどまだ設定してない。

まとめ:
出来たこと:(メールサーバ今の状態)
   1.自分自身で送信
できなかったこと:
     自分自身で受信
   今の問題以下が関係あるかも
    1.ルータの設定
    2.MTAのぶつかり

2006年05月12日

一週間もう経ったけど、メールサーバの進展が遅かった

今週したこと;
1.メールサーバは必要なパッケージの組み込んでと設定である。(mysql、apache,postfix,php)
2.sendmailを解除して、実はfirewallも解除したけど、成功できなかった。