Видео смотреть бесплатно

Смотреть вк видео

Официальный сайт graffitistudio 24/7/365

Смотреть видео бесплатно

oldbay 09.03.2011 17:41

Есть вопрос!ntlm аутентификация при прозрачном проксировании

Добрый день

Что касается темы поста: сразу скажу - что знаю о фактической невозможности сего процесса, причем сам об этом неоднократно говорил людям ...
но недавно рыская в сети, по совсем другому вопросу, случайно обнаружил весьма интересную статью из журнала хакер за 2004 год

http://samag.ru/archive/article/262


там автор исходя из описания протокола HTTP по документу RFC2616 - предположил теоретическую возможность ntlm авторизации на прозрачном прокси и проводил весьма любопытный эксперимент ,создав на перл тестовый прокси-сервер с реализацией выше описанного функционала.

Суть вопроса в следующем:
там же в статье есть ссылка на патч для Squid-2.5.STABLE3 (с реализацией всего багачества) - но вот незадача - ссылка, куда патчик был выложен ,увы мертва: http://www.comprice.ru/cmapuk/squid_patch.tgz , других ссылок не нашел ... (((

добры люди - может у кого этот патч в закромах остался ? дайте посмотреть ?

пытался сам конструировать но в squid 3.1.11:
в /src/auth/Acl.cc в строке 26 убирал отмену авторизации при прозрачном проксировании

 1
2
3
4
5
6
7
8
9
10
11
12
--- squid-3.1.11-orig/src/auth/Acl.cc   2011-02-08 07:05:51.000000000 +0300
+++ squid-3.1.11/src/auth/Acl.cc 2011-03-02 12:59:52.000000000 +0300
@@ -23,8 +23,7 @@
/* WWW authorization on accelerated requests */
headertype = HDR_AUTHORIZATION;
} else if (request->flags.intercepted || request->flags.spoof_client_ip) {
- debugs(28, DBG_IMPORTANT, HERE << " authentication not applicable on intercepted requests.");
- return -1;
+ headertype = HDR_AUTHORIZATION;
} else {
/* Proxy authorization on proxy requests */
headertype = HDR_PROXY_AUTHORIZATION;



но видать делаю что то не так, либо браузеры перестали фичу поддерживать, при включении intercept режима в squid и заворачивании http 80 порта на прокси порт 3128 в браузере получаю буквально следующее:


ERROR
Cache Доступ запрещён.

При получении URL http://www.mail.ru/ произошла следующая ошибка

Доступ к кэшу запрещён.

Извините, Вы не можете запросить http://www.mail.ru/ из этого кэша до тех пор, пока не пройдёте аутентификацию.

Если у Вас возникли проблемы с аутентификацией, пожалуйста, свяжитесь с администратором кэша или смените Ваш пароль по умолчанию.

Создано Wed, 09 Mar 2011 17:29:57 GMT на arouter (squid/3.1.11)



ну и в /var/log/squid/access.log


1299691740.667 1 192.168.10.4 TCP_DENIED/407 4954 GET http://www.mail.ru/ - NONE/- text/html
1299691740.696 1 192.168.10.4 TCP_DENIED/407 4489 GET http://www.squid-cache.org/Artwork/SN.png - NONE/- text/html
1299691740.994 1 192.168.10.4 TCP_DENIED/407 4954 GET http://www.mail.ru/ - NONE/- text/html
1299691741.019 1 192.168.10.4 TCP_DENIED/407 4489 GET http://www.squid-cache.org/Artwork/SN.png - NONE/- text/html
1299691741.239 1 192.168.10.4 TCP_DENIED/407 4954 GET http://www.mail.ru/ - NONE/- text/html
1299691741.260 1 192.168.10.4 TCP_DENIED/407 4489 GET http://www.squid-cache.org/Artwork/SN.png - NONE/- text/html
1299691741.474 1 192.168.10.4 TCP_DENIED/407 4954 GET http://www.mail.ru/ - NONE/- text/html
1299691741.496 1 192.168.10.4 TCP_DENIED/407 4489 GET http://www.squid-cache.org/Artwork/SN.png - NONE/- text/html
1299691741.743 1 192.168.10.4 TCP_DENIED/407 4954 GET http://www.mail.ru/ - NONE/- text/html
1299691741.764 1 192.168.10.4 TCP_DENIED/407 4489 GET http://www.squid-cache.org/Artwork/SN.png - NONE/- text/html


соответсвенно


п.с:

пытался проверить теоретическую возможность самой авторизации через прокси сервер на perl - из статьи (вдруг современные браузеры действительно фичу не поддерживают), но и тут наткнулся на грабли - при старте скрипта получаю ошибку

Quantifier follows nothing in regex; marked by <-- HERE in m/? <-- HERE 12Authorization/ at ./proxy_perl_server line 75.


пробовал на версиях:
perl-5.8.8-32 в centos
и
perl 5.10.1-5 в archlinux

результат - один и тот же .....
не спорю, возможно в перле недоставлен какой модуль.
пардоньте в perl я не силен - а проверить хочется :(
навсякий - то что установлено из перл в арче:


pacman -Qs perl

local/pcre 8.10-1
A library that implements Perl 5-style regular expressions
local/perl 5.10.1-5 (base)
Practical Extraction and Report Language
local/perl-error 0.17016-1
Perl/CPAN Error module - Error/exception handling in an OO-ish way
local/perl-io-socket-ssl 1.33-1
Nearly transparent SSL encapsulation for IO::Socket::INET
local/perl-lockfile-simple 0.207-1
Perl/CPAN Module Crypt::Simple
local/perl-net-ssleay 1.36-2
Perl extension for using OpenSSL
local/perl-xml-parser 2.36-6
Expat-based XML parser module for perl
local/perl-xml-simple 2.18-2
Simple XML parser for perl


UPDATE

Вобщем:
сылку на статью лучше использовать другую:

http://av5.com/journals-magazines-online/1/40/357

в первой ссылке съедены в коде обратные слеши - потому и не пускался тестовый сервер, игры с которым выявили один факт:
во всех тестированных мною современных браузерах (firefox 3.6.6 , ie 8 , opera 11) - аутентификация на прозрачном проксе не срабатывает - лог с тестового сервера выглядит так:


Thu Mar 10 20:36:47 2011
GET / HTTP/1.1
Host: www.sex.ru
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.2.6) Gecko/20100627 Firefox/3.6.6
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: ru,en-us;q=0.7,en;q=0.3
Accept-Encoding: gzip,deflate
Accept-Charset: windows-1251,utf-8;q=0.7,*;q=0.7
Keep-Alive: 115
Connection: keep-alive

//====//

Thu Mar 10 20:36:47 2011
HTTP/1.1 407 Proxy Authentication Required
Server: squid/2.5.STABLE3
Mime-Version: 1.0
Content-Type: text/html
Content-Length: 20
Expires: Wed, 26 Nov 2001 10:01:53 GMT
Proxy-Authenticate: NTLM
Proxy-Authenticate: Basic realm="<-- 407 Protected Proxy-->"
Connection: close

407 Unauth

//====//



и дальше процесс не идет - видимо по соображениям безопасности

для чистоты эксперимента скачал MozillaFirebird 0.6.1 - вот на нем то как раз все и работает.... лог:


Thu Mar 10 20:34:11 2011
GET / HTTP/1.1
Host: www.sex.ru
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.5a) Gecko/20030728 Mozilla Firebird/0.6.1
Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,video/x-mng,image/png,image/jpeg,image/gif;q=0.2,*/*;q=0.1
Accept-Language: en-us,en;q=0.5
Accept-Encoding: gzip,deflate
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
Keep-Alive: 300
Connection: keep-alive
Cache-Control: max-age=0

//====//

Thu Mar 10 20:34:11 2011
HTTP/1.1 407 Proxy Authentication Required
Server: squid/2.5.STABLE3
Mime-Version: 1.0
Content-Type: text/html
Content-Length: 20
Expires: Wed, 26 Nov 2001 10:01:53 GMT
Proxy-Authenticate: NTLM
Proxy-Authenticate: Basic realm="<-- 407 Protected Proxy-->"
Connection: close

407 Unauth

//====//

Thu Mar 10 20:34:11 2011
GET / HTTP/1.1
Host: www.sex.ru
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.5a) Gecko/20030728 Mozilla Firebird/0.6.1
Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,video/x-mng,image/png,image/jpeg,image/gif;q=0.2,*/*;q=0.1
Accept-Language: en-us,en;q=0.5
Accept-Encoding: gzip,deflate
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
Keep-Alive: 300
Connection: keep-alive
Cache-Control: max-age=0, max-age=0
Proxy-Authorization: Basic cm9vdDpxYXp3c3g=

//====//

Thu Mar 10 20:34:11 2011
HTTP/1.1 401 Unauthorized
Server: squid/2.5.STABLE3
Mime-Version: 1.0
Content-Type: text/html
Content-Length: 20
Expires: Wed, 26 Nov 2001 10:01:53 GMT
WWW-Authenticate: Basic realm=" --== Protected web-Area ==--"
Connection: close

401 Unauth

//====//

Thu Mar 10 20:34:11 2011
GET / HTTP/1.1
Host: www.sex.ru
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.5a) Gecko/20030728 Mozilla Firebird/0.6.1
Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,video/x-mng,image/png,image/jpeg,image/gif;q=0.2,*/*;q=0.1
Accept-Language: en-us,en;q=0.5
Accept-Encoding: gzip,deflate
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
Keep-Alive: 300
Connection: keep-alive
Cache-Control: max-age=0, max-age=0, max-age=0
Proxy-Authorization: Basic cm9vdDpxYXp3c3g=
Authorization: Basic cm9vdDpxYXp3c3g=

//====//

Thu Mar 10 20:34:11 2011
HTTP/1.1 200 OK
Server: squid/2.5.STABLE3
Mime-Version: 1.0
Content-Type: text/html
Content-Length: 19
Expires: Wed, 26 Nov 2001 10:01:53 GMT
Connection: close

200 OK!!!

//====//


причем пытался пройти авторизацию и на своём патче для сквида - но тут дальше вызыва basic авторизации в браузере дело не идет


Тэги:
+ 1 -
Похожие Поделиться

LordBayonet 09.03.2011 17:49 #
+ 1 -
добавь cut чтобы не по всей главной странице размазывало
oldbay 09.03.2011 18:10 #
+ 0 -
спасибо, поправил
kstep 09.03.2011 19:28 #
+ 2 -
пытался проверить теоретическую возможность самой авторизации через прокси сервер на perl - из статьи (вдруг современные браузеры действительно фичу не поддерживают), но и тут наткнулся на грабли - при старте скрипта получаю ошибку

Quantifier follows nothing in regex; marked by <-- HERE in m/? <-- HERE 12Authorization/ at ./proxy_perl_server line 75.


В скрипте ошибко. Поставь бекслеш перед вопросительным знаком в указанной строке (75).
oldbay 10.03.2011 15:16 #
+ 0 -
Спасибо комрад!!!
да действительно небыло "\" - причем по тексту выяснилось ,что когда статью копипастили везде по коду бекслеши потеряли .... парсер кривой видать
навсякий нашел ту же статью, но с сохраненными "знаками препинания" :)

http://av5.com/journals-magazines-online/1/40/357
kstep 12.03.2011 08:26 #
+ 0 -
Они ещё и теги в скриптах не заескейпили нормально. Убивать за такое надо вообще.
aurdino 10.03.2011 10:32 #
+ 0 -
тебе не проще поставить squid3 с kerberos авторизацией?
aurdino 10.03.2011 10:36 #
+ 0 -
извини, за неправильный ответ на вопрос. Но как совет посмотри.
oldbay 10.03.2011 18:01 #
+ 0 -
без обид :)
Я для авторизации использую хелпер из самбы ntlm_auth - проксисервер введен через самбу и винбинд в win 2008 домен
зы:
если б не "всенародно любимый" 2008 домен - использовал бы msauth - но ,увы, он работает нормально только на 2000 и 2003 AD, а ldap мне наш "АДешный повелитель" не открывает "из соображений безопасности"
зызы: я как раз и использую squid3 в связке с sams2 - собранного с svn ,так как то что лежит у них с пометкой бэта sams 2.0.0 - не совсем нормально работает с пользователями из adld, а мне надо и в svn многие косяки уже поправили
dront78 10.03.2011 12:56 #
+ 1 -
попробуйте автору написать. cmapuk вроде как раз он ;)
oldbay 10.03.2011 15:17 #
+ 0 -
Спасибо, попробую связаться
dront78 10.03.2011 17:09 #
+ 0 -
залейте на github, если будет все путем - может еще кому пригодится

В хорошем качестве hd видео

Онлайн видео бесплатно


Смотреть русское с разговорами видео

Online video HD

Видео скачать на телефон

Русские фильмы бесплатно

Full HD video online

Смотреть видео онлайн

Смотреть HD видео бесплатно

School смотреть онлайн