The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  вход/выход  слежка  RSS
"Squid+ldap проверка и логирование через redirect"
Вариант для распечатки  
Пред. тема | След. тема 
Форум Настройка Squid и других прокси серверов (Подключение фильтров)
Изначальное сообщение [ Отслеживать ]

"Squid+ldap проверка и логирование через redirect"  +/
Сообщение от Mimik email(??) on 22-Июн-10, 12:36 
Доброго времени суток.... есть проблема написал свой редиректор на Perl дал нужные права на выполнение... но есть странность скрипт выполняется указанное количество раз в настройках сквида, выполняет все как положенно и зависает.. не возвращаясь в начало...

пример скрипта

ladp_connect.pl :
[::code::]
#!/usr/bin/perl
system("echo run_script >> /home/http/redir.log");
use strict;
use Net::LDAP;
$0='redirect';
$|=1;
while(<>)
{
my @al_data = split;
my $url=$al_data[0];
my $ipaddr = $al_data[1];
my $clr_ipaddr = substr($ipaddr,0,length($ipaddr)-2);
my $cmd = "nslookup ".$clr_ipaddr." 10.32.12.1";
my @result_cmd = `$cmd`;
my $out_res = $result_cmd[3];
my $ind_1 = index($out_res,"name =",0)+7;
my $str_1 = substr($out_res,$ind_1,255);
my $ind_2 = index($str_1,".hostappr",0);
my $sub_2 = substr($str_1,0,$ind_2);

my $cn_host = $sub_2;

system("echo ipaddr : $clr_ipaddr  url : $url address $sub_2 >> /home/http/redir.log");

if(length($cn_host) > 0)
{
my $ldap_server="10.32.12.1";
my $base='ou=WS_restricted,ou=mufldr,dc=myfrm,dc=mydomname,dc=com';
my $pwd="password";
my $ldap = Net::LDAP->new($ldap_server) or die "$@";
my $mesg = $ldap->bind("cn=Mimik,OU=Users,OU=myfldr,DC=myfrm,DC=mydomname,DC=com",password =>$pwd) ;
die "Error: ",$mesg->error if ($mesg->is_error);
$mesg = $ldap->search ( filter=>"(cn=$cn_host)",base   => $base  );
$mesg->code && die $mesg->error;
($mesg->count != 1) && die "More than one user with uid ?!?!?";

my $max = $mesg->count;
my $entry = ();
for( my $index = 0; $index < $max; $index++)
{
$entry = $mesg->entry($index);
}

my $entr = $entry->get_value('description');

if($entr != "")
{
system("echo $entr $cn_host $url >> /home/http/redir.log");
print;
}
else
{
system("echo not logged to ldap   ".$entr." $url >> /home/http/redir.log");
}
$ldap->unbind;
}
}
[::code::]

в настройках сквида редиректор запускается 10 раз

скажите что я делаю не так о_О

Высказать мнение | Ответить | Правка | Cообщить модератору

Оглавление

Сообщения по теме [Сортировка по времени | RSS]


1. "Squid+ldap проверка и логирование через redirect"  +/
Сообщение от zerot email(ok) on 22-Июн-10, 13:12 
насколько я помню, в настройках сквида редиректор запускается указанным количеством экземпляров, и для обработки используется очередной свободный экземпляр ...
.
а сам редиректор должен в цикле принимать запрос, обрабатывать и выкатывать результат, не завершаясь, но ожидая очередного запроса
.
удачи
Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

2. "Squid+ldap проверка и логирование через redirect"  +/
Сообщение от Mimik email(??) on 22-Июн-10, 13:15 
>насколько я помню, в настройках сквида редиректор запускается указанным количеством экземпляров, и
>для обработки используется очередной свободный экземпляр ...
>.
>а сам редиректор должен в цикле принимать запрос, обрабатывать и выкатывать результат,
>не завершаясь, но ожидая очередного запроса
>.
>удачи

Дак так и есть вроде, свой скрипт то я выложил


Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

3. "Squid+ldap проверка и логирование через redirect"  +/
Сообщение от zerot email(ok) on 22-Июн-10, 13:35 
в скрипт ваш я как раз не полезу, ибо верю, что подсказать ключевые моменты можно, а делать дело за человека нельзя
.
я писал редиректоры для сквида несколько лет назад, вот помню ключевые моменты, которые нужно обеспечить
.
если ваш скрипт это всё реализует, просто нужно отлаживать ... как вариант, для начала написать редиректор попроще и добиться, чтобы он работал. Ещё посмотрите примеры кода редиректоров в поставке сквида
.
удачи
Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

4. "Squid+ldap проверка и логирование через redirect"  +/
Сообщение от Mimik email(??) on 22-Июн-10, 13:37 
>в скрипт ваш я как раз не полезу, ибо верю, что подсказать
>ключевые моменты можно, а делать дело за человека нельзя
>.
>я писал редиректоры для сквида несколько лет назад, вот помню ключевые моменты,
>которые нужно обеспечить
>.
>если ваш скрипт это всё реализует, просто нужно отлаживать ...
>.
>удачи

мды... жаль я думал хоть подскажете в каком месте скрипт зависает....

Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

5. "Squid+ldap проверка и логирование через redirect"  +/
Сообщение от Mimik email(??) on 22-Июн-10, 14:04 
>[оверквотинг удален]
>>ключевые моменты можно, а делать дело за человека нельзя
>>.
>>я писал редиректоры для сквида несколько лет назад, вот помню ключевые моменты,
>>которые нужно обеспечить
>>.
>>если ваш скрипт это всё реализует, просто нужно отлаживать ...
>>.
>>удачи
>
>мды... жаль я думал хоть подскажете в каком месте скрипт зависает....

проблему решил всем спасибо =))) дело было ну в очень простом "\n";

Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

6. "Squid+ldap проверка и логирование через redirect"  +/
Сообщение от Mimik email(??) on 22-Июн-10, 14:04 
>[оверквотинг удален]
>>ключевые моменты можно, а делать дело за человека нельзя
>>.
>>я писал редиректоры для сквида несколько лет назад, вот помню ключевые моменты,
>>которые нужно обеспечить
>>.
>>если ваш скрипт это всё реализует, просто нужно отлаживать ...
>>.
>>удачи
>
>мды... жаль я думал хоть подскажете в каком месте скрипт зависает....

проблему решил всем спасибо =))) дело было ну в очень простом "\\n";

Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру