RE: [sendmail-conf] Прблема с хаками .

acesspost accesspost на mail.ru
Вт Дек 14 15:20:25 EET 2004


>заглянуть в /var/log/mailog
>там может быть что-то типа такого:
>Dec 14 14:06:20 corvax sendmail[17060]: iBEC6KiD017058: Warning: 
>prog_open: program /usr/local/scripts/check_mail_address.pl unsafe: No 
>such file or directory

> Как он скрипты на перле подсасывает?

>sendmail ничего не подсасывает, у него подсос отсутствует в конструкции

> Sendmail его сам запускает?

>для интерпретации любого скрипта будет запущен интерпретатор, указанный 
>в первой строке скрипта, в данном случае /usr/bin/perl

Извините за тупость, понял свою ошибку у меня
/usr/local/scripts/check_mail_address.pl не был исполняемым файлом, каюсь.
Скрипт запускается и работает через Sendmail, но теперь почему-то возникла
ошибка syslog?

echo 'verify_sender fdgdfv<@yandex.ru.>' | sendmail -bt -d21.12
WARNING: Ruleset Local_check_dialup_relay has multiple definitions
WARNING: Ruleset Local_check_relay has multiple definitions
WARNING: Ruleset Local_check_dialup_relay has multiple definitions
WARNING: Ruleset Local_check_mail has multiple definitions
WARNING: Ruleset Local_check_rcpt has multiple definitions
WARNING: Ruleset Local_check_relay has multiple definitions
WARNING: Ruleset Local_check_mail has multiple definitions
ADDRESS TEST MODE (ruleset 3 NOT automatically invoked)
Enter <ruleset> <address>
> verify_sender      input: fdgdfv < @ yandex . ru . >
-----trying rule: $*
-----rule matches: $: $1 $| $> verify_sender_check_host $&{client_name} $|
$&{client_addr}
rewrite: RHS $&{client_name} => "(NULL)"
rewrite: RHS $&{client_addr} => "(NULL)"
-----skip subr verify_sender_check_host (151)
rewritten as: fdgdfv < @ yandex . ru . > $| $|
-----trying rule: $* $| SKIP
----- rule fails
-----trying rule: $* $| $# $*
----- rule fails
-----trying rule: $* $| $*
-----rule matches: $: $1
rewritten as: fdgdfv < @ yandex . ru . >
-----trying rule: $+ < @ $+ > $*
-----rule matches: $: $1 @ $2
rewritten as: fdgdfv @ yandex . ru .
-----trying rule: $+ .
-----rule matches: $: $1
rewritten as: fdgdfv @ yandex . ru
-----trying rule: $+ @ $+
-----rule matches: $: < $( mail_from_check $1 @ $2 $) >
Cannot get host name of local machine at
/usr/libdata/perl/5.00503/Sys/Syslog.pm line 248    
rewritten as: < fdgdfv @ yandex . ru >
verify_sender    returns: < fdgdfv @ yandex . ru > 


в этой строке в Syslog.pm: my($host_uniq) = Sys::Hostname::hostname();
целиком:
sub connect {
    unless ($host) {
        require Sys::Hostname;
        my($host_uniq) = Sys::Hostname::hostname();
        ($host) = $host_uniq =~ /([A-Za-z0-9_.-]+)/; # allow FQDN (inc _)

Странно, имя моей машины определяется правильно!





Подробная информация о списке рассылки sendmail-conf