Sendmail またはその他の標準 SMTP サーバーを設定する場合、これが Linux ホストと他のメール サーバー間で情報を転送する唯一の手段であることを覚えておくことが重要です。ユーザーが自分の情報を取得できるようにするには、POP3 または IMAP サービスをセットアップする必要があります。 Qpopper は、サービスを迅速かつ簡単にインストールおよび設定できる多用途の POP3 実装です。以下の簡単な手順に従ってください。
Sendmail を使用して Qpopper をインストールする
Qpopper のインストール手順を説明するこの記事では、Sendmail がすでにインストールされていることを前提とします。ただし、Qpopper は他の標準 SMTP サーバーと互換性があります。
まず、最新のリソース パッケージ qpopper4.0.3.tar.gz を Qpopper Web サイトからダウンロードします。このサイトには、広範なドキュメントやソフトウェア ドキュメントもあります。このバージョンをダウンロードした後、tar xpfz コマンドを使用して解凍する必要があります。新しいディレクトリ qpopper4.0.3 を作成し、./configure を実行すると、インストールを開始できます。
以前に使用したことがあり、デフォルトのインストール以外のニーズがある場合は、ドキュメントを必ず読んで編集可能なオプションをすべて見つけてください。たとえば、inetd や xinetd 内からではなく、スタンドアロンのバックグラウンド メーラーとして Qpopper を実行したい場合があります。これを行うには、オプション --enable-standalone を指定して ./configure を実行する必要があります。
Qpopper をスタンドアロン デーモンとして使用する場合、インポート時に正しいサービスを開始するためにスクリプトを作成する必要があります。 RPM や DEB などの特定のバージョンのアーカイブからインストールしない限り、Qpopper はデフォルトで /usr/local/lib にインストールされます。ソースからインストールする場合は、/etc/inetd.conf ファイルに次の行を追加する必要もあります。
Pop3 ストリーム tcp nowait root /usr/local/lib/popper qpopper -s
あるいは、最近の Red Hat 7.x のデフォルトのインストールである xinetd.conf を使用している場合は、次の内容を含む Pop3 という名前のファイルを /etc/xinetd.d/ ディレクトリに作成してください。
サービスポップ3
{
ソケットタイプ = ストリーム
プロトコル=tcp
待つ=いいえ
ユーザー=ルート
サーバー = /usr/local/lib/popper
サーバー引数 = qpopper -s
ポート=110
}
新しいサービスを追加するときは、まずファイアウォールのフィルタリング ルールと /etc/hosts.allow ファイルを確認してください。ファイアウォールでは、TCP リクエストが POP3 サービスのポートであるポート 110 で直接受け入れられるようにする必要があり、hosts.allow ファイルには ALL 行が含まれている必要があります。同様に、Red Hat を使用している場合は、/etc/xinetd.d/ をチェックして、既存の POP3 サーバーが存在しないことを確認してください。事前設定は標準のインストール オプションで実行できるため、後で Qpopper を追加する場合は、xinetd デーモンから /etc/xinetd.d/ipop3 などのすべてのディレクティブを必ず削除してください。
著者: postnew 発売日: 2007-10-18
Qポッパーを構築する
Qpopper をインストールしたら、サービスを開始する必要があります。 inetd または xinetd を使用している場合は、kill –HUP を実行するだけで inetd または xinetd デーモンを再起動できます。 ps aux | grep inet を実行すると、プロセス ID (PID) を確認できます。
Qpopper をスタンドアロン モードでインストールした場合は、/etc/init.d/pop3 ファイルにパラメーター -S を配置して、作成したスクリプトを実行する必要があります。たとえば、-S フラグは Qpopper にサーバー モードで実行するように指示します。これはサーバーの入出力パフォーマンスの向上に役立ちます。サーバー モードでない場合、Qpopper は優先アクセスに基づいてメール ファイルをコピーし、電子メールの削除などの適切な調整を行った後にコピーバックします。サーバー モードでは、Qpopper はキューをコピーする代わりにスキャンし、ユーザーのタスクで直接処理します。これは、多数のユーザーをサポートする必要がある POP3 サーバーにとって特に重要です。
表 1 に、POP3 サーバーの実行時に使用できるすべてのコマンド オプションを示します。たとえば、ポート 110 からサーバーにリモートでログインし、大きな情報を手動で削除できます。これらのオプションを十分に理解すると、ユーザーの電子メールの問題を迅速に解決するのに役立ちます。
USER このコマンドの後にユーザー ID を入力します (例: USER webmaster)。
PASS このアカウントのパスワードを PASS パスワードの形式で入力します。
QUIT このコマンドは現在のタスクを終了し、マークされたメッセージを削除します。
LIST このコマンドを使用して、情報とサイズをリストします。
RETR メッセージ番号を使用して特定のメッセージを回復します。
DELE このコマンドは、メッセージ番号を持つ特定のメッセージを削除します。
TOP は、特定の電子メールの最初の N 行を表示します (TOP <# 行>)。
Qpopper は、/etc/passwd および /etc/shadow 経由で適用される標準のシステム認証メカニズムに依存します。したがって、ユーザーが POP3 サービスを使用するには、ローカル システムに POP3 サービスを追加する必要があります。おそらく Sendmail などのメール エージェントをすでに実行していると思われるので、これは実際に行われています。
Qpopper の障害を検出して解決する
インストールしたサービスを初めて実行するときは、常に問題が発生する可能性があります。良い方法は、サーバーがポート 110 に到達する POP3 要求に応答することです。ローカル サイトとリモート サイトからログインを試すことができます。これらのラボではコマンド ラインの例が表示されます。
多数のユーザーが電子メールを取得するためにサーバーに接続している場合は、最大待機値を変更して inetd タイムアウト値を増やす必要がある場合があります。これを行うことができます。
Pop3 ストリーム tcp nowait.400 root /usr/local/lib/popper qpopper -s
これにより、多数のタスクが同時に実行されているときに Qpopper が無限ループに入るのを防ぐことができます。ログインが開始されると、ログ ファイルにサービスの記録が開始され、その時点で、上で説明したタイムアウト値を変更できます。
もう 1 つの問題は、大規模なサイトではメールのロックアップが頻繁に発生することです。メール ロック ファイルは、クライアントがサーバーに対して POP3 セッションを開くときに作成されます。これにより、他の結合がメールボックスを変更するのを防ぎます。場合によっては、ユーザーが異常に切断し、Qpopper がタスクの開始時に作成された一時ファイル キューを削除できないことがあります。これは通常、/var/spool ディレクトリに .user.pop として表示されます。通常、サーバーは古いメール ロックを検出して削除しますが、まれに、POP3 サーバーへのアクセスを再度許可するために管理者がこれらのファイルを手動で削除する必要がある場合があります。
要約する
ユーザーに完全な電子メール機能を提供したい場合は、Sendmail サーバーに POP3 サービスを追加することが重要な手順です。 Qpopper を使用すると、このタスクが非常に簡単になります。すばやくダウンロード、インストールし、バックアップして実行します。他の標準 SMTP サーバーでも実行できます。