web-dev-qa-db-ja.com

管理者はどのようにルートのメールを読むことになっていますか?

システム管理者がシステム通知を受信するUbuntuの方法は何ですか?通常、これはルートアカウントに送信される電子メールの形式を取りますか?

このような通知の例は、cronジョブの出力、または 劣化RAID通知 です。

ほぼデフォルトのUbuntu 10.04インストールでは、/var/mail/rootに保管される以外にルートのメールに何かが起こる方法を見つけることができません。ユーザーはどのようにして1.発見し、2。到着したときに読むのでしょうか?

イボイノシシの場合、インストーラーはroot: myusername/etc/aliasesに追加しました。そのため、システムをインストールしたユーザーは、ローカルメールを読んだ場合(s)。そのため、途中でリグレッションが発生したようです。それでも、Ubuntuユーザーはローカルメールを持っていることに気付くことが期待できないため、メールクライアントを設定して読む必要があるため、これは完全なソリューションではありませんでした。

ADDED:現在の応答が与えられた場合、サーバーユーザーは問題を認識していれば対処できるはずです。けっこうだ。しかし、コマンドラインの使用方法を知らず、メールボックスアイコンをクリックしてメールを読む方法しか知らないJ.ランダムデスクトップユーザーについて考えてみましょう。自分のシステムが何かを彼に伝えたいことを彼にどのように通知できますか? (やむを得ない場合は、より有能なユーザーによる1回限りの介入を許可します。)

61
Gilles

Gilles によるコメントに励まされて、私は別の答えを採用し、拡張しました:

(私はUbuntu 12.04.1 LTSを実行していますが、一般的なセットアッププロセスは以前および将来のUbuntuに適用されるはずです)


最初に行うことは、メール転送エージェント(MTA)をインストールして、Thunderbirdなどのメールユーザーエージェント(MUA)にメールを中継できるようにすることです。これが必要なのは、ローカルメールを処理しており、ローカルメールを送受信できるようにするためです。通常のリモートGmailタイプアカウントでは、Thunderbirdなどのユーザーエージェントのみが必要です。

postfixを使用します。これは、それ自体がsendmailに代わるもので、商用バージョンとオープンソースバージョンがあります。 postfixの機能に関する詳細情報は 公式サイト にあり、ユーザーは メーリングリスト に問題が発生した場合に有用な情報が含まれていることがあります。

したがって、プログラムをインストールするには、次を実行します

Sudo apt-get install postfix

インストール時に構成するか、オファーを拒否して後で実行することができます

Sudo dpkg-reconfigure postfix

重要な設定ファイル(/etc/postfix/main.cfg)を作成します。必ずしも推奨されないこのファイルを手動で編集した場合は、Sudo newaliasesおよびSudo service postfix restartを実行してから変更を適用する必要があります。

Postfixはセットアップが非常に簡単ですが、適用したい特定の設定がある場合があります。以下に表示される最初の画面で、メールのローカルオプションを選択する必要があります。

enter image description here

次に、次の画面で「メール名」を選択します。通常、/etc/hostnameと同じです。次のほとんどの画面でデフォルトを受け入れることができます。

enter image description here

/etc/aliasesRootおよびPostmaster受信者(上記のように)に言及している場合、ユーザー名を入力できますが、エイリアスファイルがそのままであることを確認してくださいこのチュートリアルの次のセクションを読んでください。

まず、推奨されるように この説明で 、正しくセットアップされている場合、/etc/aliasesは次のようになります。

postmaster:    root
root:   mike 

そうでない場合は、Sudo nano /etc/aliasesを使用して編集し、Sudo newaliasesおよびSudo service postfix restartを実行して、構成を更新します。 Postfix'sエイリアス機能により、メールをリダイレクトできるため、このチュートリアルの残りの部分ではセットアップは非常にimportantです。

上記のリンク にも記載されているように、ユーザー名とローカルホストを含​​む.forwardファイルを作成する必要があります。ルートのメールがあなたに転送されるようにmike@localhost。これを行うには、次のコマンドを入力します。

Sudo touch /root/.forward

そして、実行します

Sudo nano /root/.forward

ユーザーを配置するには:例mike@localhostをファイルに保存して保存します。

さらに、Thunderbirdがメールファイルにアクセスできるように、ユーザーをメールグループに追加する必要があることがわかりました。

Sudo adduser $USER mail

その後、ログアウトしてログインし、変更を有効にします。一部の記事で示唆されているように、ファイルをchownまたはchmodする必要はありません。ユーザーをメールグループに追加することをお勧めします。


Thunderbird構成になりました。編集>アカウント設定>アカウントアクション>他のアカウントを追加> Unixスプールメールを選択し、次の画面で最初のボックスにユーザー名を入力し、2番目のボックスにyourusername@localhostと入力します。

enter image description hereenter image description here

次のスクリーンショットのように、アカウント設定で新しいアカウントに移動し、サーバー設定を選択し、ローカルディレクトリを/var/mailまたは/var/mail/username(セットアップの場合)として選択します。

enter image description here

指示に従って この記事root@localhostにメールを送信し、Thunderbirdで[メールを取得]をクリックしてアカウントをテストする場合は、smtpサーバーを設定する必要があります。ルートのメールがyouruser@localhostにリダイレクトされるため。

[アカウント設定]> [送信サーバー]に移動し、新しいサーバーの追加を選択します。以下のスクリーンショットのように設定する必要があります。

enter image description here

最後に、root@localhostにメールを作成してアカウントをテストし、数秒後にアカウントのメールを取得をクリックします。次のようなメールが表示されるはずです。

enter image description here

一部のプログラムまたはログは、ルートにメールを送信するように構成する必要がありますが、必要に応じて決定できます。ローカルメールを受信するためにThunderbirdを設定することは必ずしも簡単ではないので、この記事が役に立つことを願っています。

33
user76204

これがサーバーの場合、管理者にメールを配信するために、実際のメールアドレスにルートをエイリアスすることを強くお勧めします。追加するのと同じくらい簡単です

# Person who should get root's mail
root:   [email protected]

/ etc/aliasesの最後まで

または、ローカルユーザー名にエイリアスされるようにメールを設定し、ログインすると「You have mail」というメッセージが表示されます。これは、mailコマンドを使用するか、pine/mutt/Alpineをインストールするか、そのサーバーで似たようなもの..

21

Nullmailerと呼ばれるメーラーエージェントを個人的に使用しています。メールプロキシとして機能し、ルートに送信されたすべてのメールを選択したメールアドレスに転送します。

/ etc/nullmailerの下のconfファイルに設定を設定する必要があります。基本的には、メールプロバイダーのアドレスと認証情報、およびルートメールを受信するアドレスを指定します。

でインストールできます

Sudo apt-get install nullmailer

セットアップの詳細については、こちらをご覧ください: http://jviz.research.iat.sfu.ca/wiki/index.php?title=HOWTO_Setup_Nullmailer

11
Little Jawa

別の方法-すべてのルートメールをいくつかのファイルにアーカイブしてから、元のメールを削除します。

私はスクリプトをcronします(ここが重要な部分です)-

#!/bin/bash
if `/usr/bin/mail -e`; then
   /usr/bin/mail --print 2>&1 > /tmp/email_${date +"%Y-%m-%d_%H.%M").log
   echo ‘d *’ | /usr/bin/mail -N > /dev/null
fi
exit 0

これは物事を整頓し、私はそれに目を光らせることができます。毎日のメールファイルを外部のメールIDなどに送信できます。

1
Ian D