2009 Rugpjūtis 28, 2009
saugo įrašus paštu išsiųstą į PHP mail funkcija
PHP mail () funkcija, apibrėžta pagal nutylėjimą siunčiamų el laiškų, siunčiamų per sendmail programinės įrangos. Žurnalo parametrai, kurie taip pat gerina Sendmail lygį buvo išsiųstas, pagal kurią vartotojas negali rasti nurodyto failo arba. Ypač jei turite mašiną, kuri tarnauja kaip interneto išteklių teikėjo vartotojo, kuriam siunčiate junk e-mail yra sunku aptikti naudojant. Naudoti metodai php sendmail pašto serverio, kuris ateina į galvą, kaip tilto tarp įmonės ir taip pat pridėti programinę įrangą, kuri registruoja. Taip;
vi /usr/sbin/sendmail.spamkontrol
į sakydamas:
#! / Usr / bin / perl
# Naudokite griežta;
naudoti env;
my $ data = `data`;
chomp $ data;
atviras (INFORMACIJA, ">> / var / log / spam_log") | | die "Failas negali paleisti :: $!";
my $ uid = $>;
my @ info = getpwuid ($ uid);
if ($ REMOTE_ADDR), {
spausdinti INFO "$ Date $ REMOTE_ADDR vyko $ SCRIPT_NAME, $ SERVER_NAME n \ n";
print "\ n";}
else {Spausdinti "$ data - $ PWD - @ informacija \ n";
print "\ n";}
my $ mailprog = "/ usr / sbin / sendmail";
if (@ argv) {
$ ARG = "$ arg". "$ _";
}atidaryti (PAŠTAS "| $ mailprog $ arg") | | die "Negaliu atidaryti $ mailprog: $ n";
o () {
print mail;
}
uždaryti (INFO);
uždaryti (MAIL);
Įrašę failą;
chmod +x /usr/sbin/sendmail.spamkontrol
touch /var/log/spam_log
chmod 0777 /var/log/spam_log
Po suteikti būtinus įgaliojimus php.ini failą naują receptą: sendmail / usr / sbin / sendmail.spamkontrol galite įvesti šiuos virtualaus serverio Apache apibrėžimą, arba galite įvesti aprašymą.
php_admin_value sendmail_path '/usr/sbin/sendmail.spamkontrol'
Jūs taip pat galite įvesti šį kiekvienam VirtualHost apibrėžimą vertę. Po perkrauti Apache / var / log / spam_log failą išduos išvesties failą, pavyzdžiui, atrankinius įrašų.
[root@immortal ~]# tail /var/log/spam_log
Fri Aug 28 15:37:20 EEST 2009 - /home/testuser1 -
Fri Aug 28 15:45:01 EEST 2009 - /home/testuser2 -
Fri Aug 28 15:53:30 EEST 2009 - /home/testuser1 -
Fri Aug 28 15:57:43 EEST 2009 - /home/testuser1 -
Fri Aug 28 15:58:47 EEST 2009 - /home/testuser2 -
Fri Aug 28 16:21:21 EEST 2009 - /home/testuser2 -
Jei žurnalo failo dydis auga, prisijunkite rotaciją, kad / etc / logrotate.conf failą, pridėkite šiuos.
# SPAM LOG rotation
/var/log/spam_log {
monthly
create 0777 root root
rotate 1
}
[Mattf ir ramprage'e ačiū]
