Red Hat Linux 9 Sendmail 8.12.8 rpm

   デフォルトの rpm パッケージをインストール   

     ここをチェック http://www.jp.redhat.com/support/errata/rh9/ ここで最新のものにアップデートする

     sendmail はセキュリティーホールがよく発見されます。 頻繁にチェックしたほうがよいです  

      設定ファイルの場所  /etc/mail/ 以下に主なファイルがあります

      メールの保管場所 /var/spool/mail/ ユーザー名

      rpm の場合にとりあえず必要なもの 

       m4-1.4.1.13.i386.rpm, sendmail-cf-8.12.8-4.i386.rpm, imap-2001a-18.i386.rpm

  1. インストール

  2. 設定

  3. いろいろな設定

    複数のドメインに対応させる ( @ 以下を短縮する場合もこれ )

    転送する ( root あてメールをクライアントに引き出せるようにする )

    メールを複数のアドレスに転送する 

    1つのアドレスでまとめて受信できるようにする ( 指定のアドレスだけ処理する )



  インストール

     CD-ROM から rpm パッケージインストール

     m4 cf imap を インストールします

   CD1Install

     # mount /mnt/cdrom

     # cd /mnt/cdrom/RedHat/RPMS

     # rpm -ivh m4-1.4.1-13.i386.rpm

            ################################ [ 100% ]   // インストールされるとこんな感じ

     # cd                                       // 戻らないと CD-ROM は抜けません

     # umount /mnt/cdrom                        // 抜いてください

   CD3Install

     # mount /mnt/cdrom

     # cd /mnt/cdrom/RedHat/RPMS

     # rpm -ivh sendmail-cf-8.12.8-4.i386.rpm

            ################################ [ 100% ]   // インストールされるとこんな感じ

     # cd                                     // 戻らないと CD-ROM は抜けません

     # umount /mnt/cdrom                       // 抜いてください

   CD2Install

     # mount /mnt/cdrom

     # cd /mnt/cdrom/RedHat/RPMS

     # rpm -ivh imap-2001a-18.i386.rpm

             ################################ [ 100% ]   // インストールされるとこんな感じ

     # cd                                     // 戻らないと CD-ROM は抜けません

     # umount /mnt/cdrom                         // 抜いてください

     # chkconfig ipop3 on                          // 自動起動の設定

     # chkconfig imap on                           // 自動起動の設定

 

  インストールされているか確認する 

     # rpm -qa | grep sendmail

     sendmail-8.12.8-4     // インストールされているとこのように表示される

     他は 

     # rpm -qa | grep pop

     popt-1.8-0.69         // こちらはデフォルトでインストールされているようです

     # rpm -qa | grep imap

     imap-2001a-18           // インストールされているとこのように表示される


  設定

   外部から受け付けなくする 

     # vi /etc/mail/sendmail.mc を編集

     下記の行を探す 

     DAEMON_OPTIONS('Port=smtp,Addr=127.0.0.1, Name=MTA')dnl の先頭に dnl を入れ

     dnl DAEMON_OPTIONS('Port=smtp,Addr=127.0.0.1, Name=MTA')dnl     に変更する

 

   sendmail.cf ファイルを作成する

     1 行で記述する 画面上は 2 行になるが 画面の端まで行っても途中で Enter は押さない

     # m4 /usr/share/sendmail-cf/m4/cf.m4 /etc/mail/sendmail.mc > /etc/mail/sendmail.cf

     変更したら sendmail をリロードする

     #/etc/rc.d/init.d/sendmail reload

 

   サーバー外からの接続許可

     # vi /etc/host.allow

     sendmail : ALL     // この行を追加

 

   メール専用ユーザー作成

     # useradd -s /sbin/nologin ck     // このコマンドで作成する

     パスワード 2 回入力

 

   メールを送信できるようにする リレーの許可

     # vi /etc/mail/access

     192.168.0      RELAY             // 環境に合わせて

     IP アドレス      RELAY             // リレーを許可するパソコン指定

     # makemap hash /etc/mail/access.db < /etc/mail/access   // これで反映させる


 

   複数のドメインに対応させる ( @ 以下を短縮する場合も同じ )

     この状態のままでは @ 以下は ホスト名 + ドメイン名 の受信になるので変更

     例: webmaster@' ホスト名 '.shoukun.com になる

     local-host-names にメール受信を受け付けるドメインを書く。

     # vi /etc/mail/local-host-names

     ' ホスト名 '.shoukun.com

     shoukun.com                 // 行をかえて記述

     これで webmaster@shoukun.com が送受信できる

     いくつかのドメインを所有しているのでしたら 行を変え複数記述すれば いろいろなドメインが送受信できます。

     変更したら sendmail をリロードする

     # /etc/rc.d/init.d/sendmail reload

  

   転送する  ( root あてメールをクライアントに引き出せるようにする )

     受け取るユーザーを作る  リモートでは作れないので  コンソールの作業です 

     # vi /etc/aliases

     # Person who should get root's mail を見つけ すぐ下の

     # root                       // コメントアウトにして 下記のように変更

     送りたいアドレス(ユーザー名)を記述

     例: 

     root : admin                  // root あてメールが admin に転送になる

     # newaliases                 // このコマンドで反映になる

 

   メールを複数のアドレスに転送する

     # vi /etc/aliases

     末尾に記述

     webmaster : admin@shoukun.com shoukun****@docomo.ne.jp

     # newaliases        // このコマンドで反映になる

     このように設定すれば 複数のアドレスに転送できます 転送後は、メールは残らない

 

   1 つのアドレスでまとめて受信できるようにする ( 指定のアドレスだけ処理する )

     # vi /etc/mail/sendmail.mc を開き sendmail.mc の次の行の先頭に「 dnl 」が付いてないことを確認する

     デフォルトでは「 dnl 」 は ついていないと思いますが とりあえずチェック

     FEATURE(virtusertable, `hash /etc/mail/virtusertable')dnl

     次に 下記のファイルに実際のユーザー名とメールアドレスの対応を記述する

     # vi /etc/mail/virtusertable

     webmaster@shoukun.com webmaster

     webmaster@yws.jp webmaster

     @shoukun.com error : 550 User unknown

     @yws.jp error : 550 User unknown

      上から 4 行 説明すると

      webmaster@shoukun.com 宛に届いたメールを webmaster というアカウント宛のメールとして受信する

      webmaster@yws.jp 宛に届いたメールを webmaster というアカウント宛のメールとして受信する

      webmaster@shoukun.com 以外のアドレスはエラーになり受け取らない 

      DNSMX 設定で別のサーバーが受け取るようになる

      webmaster@yws.jp 以外のアドレスはエラーになり受け取らない DNSMX 設定で別のサーバーが受け取るようになる

      上から順番に読み込まれるので、注意。最後のエラー行以降にいくらアドレスを書いても、それは無効になる。

     # makemap hash virtusertable.db < virtusertable // このコマンドで反映になる

 


Copyright(C) 2000-2004, 初心者のServer構築法とWindowsネットワーク All Rights Reserved
webmaster@shoukun.com