
マシンを監視するために、ユーザー (ルートも含む) がマシンに接続したり切断したりするたびに、たとえば電子メールで通知を受け取りたいのですが。
Linux マシンですが、BSD にも一般的な方法があるかどうかも興味があります。
私はマシンの管理者ですが、他にも管理者がいます。
ありがとう!
答え1
とを使用して複雑なものを作成することもできますがtail -F
、awk
最も簡単な方法は を使用することです。これにより、モジュール (適切なシステム ログ ファイルを監視する) と、多くのメール送信モジュール (または など)の 1 つperl
を使用して、ユーザーがログインしたこと、ログアウトしたこと、ログインに失敗したことを検知したとき、または通知を受け取りたいその他のイベントが発生したときにメールを送信できます。File::Tail
Mail::Send
Net::SMTP
このFile::Tail
モジュールには、必要な機能の約 90% をすでに実行しているサンプル スクリプトが含まれており、正確なニーズに合わせて簡単に調整できます。
監視する正確なログ ファイルはディストリビューションによって異なります。たとえば、Debian では を監視しますが/var/log/auth.log
、他のディストリビューションでは または/var/log/syslog
を監視します/var/log/messages
。
freebsd にはデフォルトで perl がインストールされていませんが、たとえば で利用できることに注意してください。これにより、基本的な perl 言語のみがインストールされるため、 prpkg add perl5.22
などのライブラリ モジュールをインストールするには CPAN を使用する必要があります。File::Tail
Mail::Send