#!/usr/bin/perl my $MAIL_FROM = "kuri\@usupi.org"; # メールの送信元アドレス my $MAIL_TO = "usu\@usupi.org"; # メールの宛先 my $SENDMAIL_CMD = "/usr/sbin/sendmail -oi $MAIL_TO"; # 本文が $message のメールを送信するサブルーチン sub send_mail { my ($message) = @_; if(open(MAIL, "|$SENDMAIL_CMD")) { print MAIL "From: $MAIL_FROM\nTo: $MAIL_TO\n"; print MAIL "Subject: [ssh] notice\n\n"; print MAIL $message; close MAIL; 1; } else { 0; } } # メインはこちら while(<>) { chop; if(/^(\S+).+\[([^\]]+)\].*\/ssh_access_((\d+\.){3}\d+)_(\d+)_((\d+\.){3}\d+)_(\d+)/) { $message = "Source : $3 port $5\n"; $message .= "Destination : $6 port $8\n"; $message .= "Date : $2\n"; $message .= "WWW-Client : $1\n"; if(!&send_mail($message)) { print STDERR "$2 : $3:$5 to $6:$8 : Failed.\n"; } } }