各ユーザーの接続と切断についてシステム管理者に通知する適切な方法は何ですか?

各ユーザーの接続と切断についてシステム管理者に通知する適切な方法は何ですか?

マシンを監視するために、ユーザー (ルートも含む) がマシンに接続したり切断したりするたびに、たとえば電子メールで通知を受け取りたいのですが。

Linux マシンですが、BSD にも一般的な方法があるかどうかも興味があります。

私はマシンの管理者ですが、他にも管理者がいます。

ありがとう!

答え1

とを使用して複雑なものを作成することもできますがtail -Fawk最も簡単な方法は を使用することです。これにより、モジュール (適切なシステム ログ ファイルを監視する) と、多くのメール送信モジュール (または など)の 1 つperlを使用して、ユーザーがログインしたこと、ログアウトしたこと、ログインに失敗したことを検知したとき、または通知を受け取りたいその他のイベントが発生したときにメールを送信できます。File::TailMail::SendNet::SMTP

このFile::Tailモジュールには、必要な機能の約 90% をすでに実行しているサンプル スクリプトが含まれており、正確なニーズに合わせて簡単に調整できます。

監視する正確なログ ファイルはディストリビューションによって異なります。たとえば、Debian では を監視しますが/var/log/auth.log、他のディストリビューションでは または/var/log/syslogを監視します/var/log/messages

freebsd にはデフォルトで perl がインストールされていませんが、たとえば で利用できることに注意してください。これにより、基本的な perl 言語のみがインストールされるため、 prpkg add perl5.22などのライブラリ モジュールをインストールするには CPAN を使用する必要があります。File::TailMail::Send

関連情報