Форумы Форум www.proxomitron.ru
Все о программе Proxomitron
Главная  • FAQ для форума  •  Поиск  •  Пользователи  •  Группы   •  Регистрация  •  Профиль  •  Личные сообщения  •  Вход
 Мучения с httpS:// или Доступ к сайту ИССА МТС.
 Сайт -> Форумы » Общие вопросы
Следующая тема
Предыдущая тема

Новая тема  Ответить
Автор Сообщение
SK
Advanced Member
Advanced Member


Зарегистрирован: 05.06.2004
Сообщения: 114

СообщениеДобавлено: Сб, Апр 05 2008 20:39 Цитировать |  |  | 

Приветствую!

С недавнего времени на соседней машине (пусть она будет «Клиент»), получающей Интернет через мой Проксомитрон, нарушился доступ к «интернет-сервису абонента» сотовой сети МТС https://www.issa.rekom.ru/issa. Ранее все работало по http, но МТС что-то изменило на своем сайте и теперь без https никак.

Прописал в качестве https прокси тот же что для http ip:порт Проксомитрона. Создал [make-proxcert] Проксомитрону свежий сертификат. Импортировал его в Доверенные Корневые Сертификаты. Библиотеки - последние, из Prox_RE v.0.96. После включения в Проксомитроне опции “Use SSLeay/OpenSSL to filter secure pages…” доступ по https на соседней машине появился.

Но при любом дефекте сертификата открываемого Клиентом сайта на моей машине Проксомитрон открывает окно с уведомлением об ошибке и настоятельно требует Alow, Deny или Allow to Session.

Image

И до получения разрешения доступ по https Клиенту закрывает. Sad Количество нажатий на Allow для открытия сайта ИССА – порядка 20.
А если меня на месте нет - финита ля комедия...

Открывая тот же сайт на моей машине IE один раз уведомляет о несоответствии части сведений сертификата и после ОДНОКРАТНОГО нажатия «Продолжить» корректно работает с сайтом.

Прошу подсказать/поделиться опытом, как задать Проксомитрону разрешение по умолчанию на продолжение работы Клиента при дефектах сертификата сайта без бесконечного уведомления на моей машине.

Или еще какое-либо работащее решение. Ибо сайтов с кривыми сертификатами немало, но жить-то надо...

Image

;)

_________________
Сергей.
К началу Профиль Сообщение
Newfilter
Junior Member
Junior Member


Зарегистрирован: 29.01.2007
Сообщения: 24

СообщениеДобавлено: Вс, Апр 06 2008 09:27 Цитировать |  |  | 

Попробуй proxcert.pem переименовать во что-нибудь ещё. И живи без него Smile !
К началу Профиль Сообщение
SK
Advanced Member
Advanced Member


Зарегистрирован: 05.06.2004
Сообщения: 114

СообщениеДобавлено: Вс, Апр 06 2008 16:34 Цитировать |  |  | 

Newfilter писал(а):
Попробуй proxcert.pem переименовать во что-нибудь ещё. И живи без него Smile !


Зачем нам такая хирургия ? Отключить режим фильтрации https Проксомитроном можно одной галкой.

Решение найдено, вот оно - может кому пригодится.

После некоторых стараний удалось выяснить, что Проксомитрон 4.5 поддерживает два режима обработки https: фильтрация (экспериментальный режим, включается той самой галкой) и "pass-thru" (ничего не трогать в трафике https).

Лучше всего говорит об этом ... сам Scott R. Lemon (эх, ПЯТЬ ЛЕТ прошло - а мы только-только доходим до вопросов, заложенных им в давнем 2003г.! Если бы не он ушел безвременно - каким продуктом сейчас бы мы все располагали...) http://www.proxomitron.info/45/docs/readme.txt.
Там же - предупредение Скотта, что режим фильтрации является не вполне полноценной реализацией SSL (""half-SSL" technique").

Кстати, все необходимое для фильтрации SSL (актуальные dll, сертификаты и наборчик для обновления сертификата Проксомитрона) можно взять здесь: http://www.geocities.com/sidki3003/prox-ssl.html. И - маленькая статья для интересующихся технологией: "Что такое "SSL" http://www.northnet.ru/texts/whatssl.html.

Для режима Pass-thru, включенного по умолчанию, ни корневые доверенные сертификаты, ни ssl-библиотеки, ни сертификат Проксомитрона не нужны:

-Scott- писал(а):
Pass-Thru mode
--------------

This is similar to the support offered by many other proxies. In this mode
SSL data is simply passed to the server without any alteration. This mode
requires no special cytological support as the data is never decoded.
However this method also gives little benefit except to allow proxy
switching. Proxomitron will always use pass-thru mode when bypassed, and
when the "Use SSLeay" mode is not enabled (or the SSLeay dll files are not
present). This is also the safest mode to use from a security standpoint,
and is the default mode used by Proxomitron.


Вот и будем сейчас реализовывать доступ через Проксомитрон в режиме passs-thru или "Не трожь https!".

Подразумевается, что настройки локальной сети и разрешенного диапазона доступа к Проксомитрону уже выполнены и доступ по http на Клиенте исправно работает.

Итак, наши действия по настройке доступа по https к "Интернет-помощнику МТС:

1. Прописать в поле Security IE Клиента Ip:порт Проксомитрона, тот же, что и для доступа к http сайтам.

Image

2. Убрать в Проксомитроне галку "Use SSLeay/OpenSSL to filter secure pages (requires ssleay32 and libeay32 DLL files)"

Image

3. Выйти из Проксомитрона, сохранив его конфигурацию.
4. Вновь запустить Проксомитрон. Проверить доступ по https (например, прогуляться на https://uslugi.beeline.ru).
Должен работать. А вот заработает ли ИССА МТС - пока вопрос.

5. Войти в IE Клиента в меню Справка-О программе. Проверяем, поддерживается ли 128-битная стойкость шифра.

Image

Если нет, сайт МТС доступа в ИССА на даст. Впрочем, это явно не проблема Проксомитрона ;)

6. Если 128 бит браузер Клиента не поддерживает, движемся на сайт Microsoft и ищем для своей OS "High Encryption Pack (128-bit)". Если пакета с русским языком там не наблюдается, берем английский - проверено, работает. После установки полученного пакета перезагружаемся.

7. Идем на сайт МТС. Если просто нажать на сайте МТС кнопку Интернет помощник, нас ждет разочарование, т.к. сайт https://ihelper.mts.ru/selfcare/ поддерживает не все регионы. Сначала выбираем свой регион переключателем:

Image

8. Наслаждаемся.

Для удобства управления и контроля остатка, расходов и проч. через интернет рекомендую познакомиться с бесплатной для личного использования программой MobileBalance http://www.mtsoft.ru/mobilebalance/ (мне нравится):

Image

Удачи!

_________________
Сергей.
К началу Профиль Сообщение
PF4Public
Junior Member
Junior Member


Зарегистрирован: 01.05.2008
Сообщения: 26

СообщениеДобавлено: Пт, Май 16 2008 00:00 Цитировать |  |  | 

One way around this is to use a sort of "half-SSL" technique.
Proxomitron lets you specify in a normal non-secure "http://" URL that
you want to make a SSL connection to the actual web server - just write
the URL like so...

Original: https://some.secure.site.com/
New : http://https..some.secure.site.com/

Change the protocol back to "http://" then add "https.." to the front of the
hostname. This make it so the connection between your browser and
Proxomitron is not encrypted but the connection from Proxomitron to the
final server is! Since the local connection to Proxomitron is usually
confined to your PC alone, this is really no less secure. However your
browser thinks it's got a normal insecure connection and won't do any
certificate checks. This can also be used to access secure pages from
browsers that may not have https support at all.
К началу Профиль Сообщение
kutu
Newbee
Newbee


Зарегистрирован: 22.05.2008
Сообщения: 8

СообщениеДобавлено: Чт, Май 22 2008 20:04 Цитировать |  |  | 

помогите понять в чем проблема

структура работы Browser->Proxomitron->PHP Script->Internet

Вариант 1
пробую законектится к почте
Код:
+++GET 134+++
Using Proxy - www.*******.ru:80
CONNECT https://mail.google.com:443/ HTTP/1.0
User-Agent: Opera/9.10 (Windows NT 5.1; U; ru)
Host: mail.google.com:443

+++SSL 134:+++
SSL Pass-Thru: CONNECT https://mail.google.com:443/
+++CLOSE 134+++

на этих словах все и зависает и не двигается, до php скрипта запрос не доходит

Вариант 2
пробую через ssl dll'ки скаченные специльно для Naoko-4.5 (впринципе другие тоже не работают, но все же)
Код:
+++GET 142+++
Using Proxy - www.*******.ru:80
CONNECT https://mail.google.com:443/ HTTP/1.0
User-Agent: Opera/9.10 (Windows NT 5.1; U; ru)
Host: mail.google.com:443

+++SSL:GET 142+++
Using Proxy - www.*******.ru:80
SSL cipher TLSv1 AES256-SHA (256 bits)
GET https://mail.google.com:443/ HTTP/1.1
User-Agent: Opera/9.10 (Windows NT 5.1; U; ru)
Host: mail.google.com
бла бла бла
Connection: keep-alive

тоже самое, висит и ничего не делает, до php скрипта запрос не доходит, по истечению времени выдает ошибку
Код:
Exception [C0000005] raised in...
SslStart::...


Вариант 3
пробую законектится как предложил предыдущий оратор, то есть в браузере набираю https..mail.google.com/
Код:
+++GET 169+++
Using Proxy - www.*******.ru:80
GET https://mail.google.com/ HTTP/1.0
User-Agent: Opera/9.10 (Windows NT 5.1; U; ru)
Host: mail.google.com
бла бла бла
Connection: keep-alive

тоже самое висит, до php ничего не доходит, по истчению времени выдает ошбику как выше


PS
  • Если напрямую постучать в php script и обратиться к https сайту, то все работает прекрасно
  • Пробовал генераторы сертификатов
  • Пробовал в разных браузерах Opera, Safari, FireFox, IE
все безрезультатно

Куда копать?
К началу Профиль Сообщение
chAlx
Moderator
Moderator


Зарегистрирован: 30.06.2004
Сообщения: 2627
Откуда: SPb

СообщениеДобавлено: Пт, Май 23 2008 08:36 Цитировать |  |  | 

kutu:

Что за скрипт-то? Если это используемый ***.ru:80, то надо смотреть, умеет ли он работать как HTTPS-прокси (и сумеер ли веб-сервер передать в php такой коннект).

И вообще, надо выбрать одно место, которое будет "встречать" и обрабатывать SSL-соединение сайта, а остальные пустить обычным HTTP (если это до места) или в режиме SSL Pass-Thru (если после).

Кроме того, рекомендую отключить Оперные извращения, не соответствующие ни одному стандарту, такие как Connection: keep-alive по HTTP/1.0.
К началу Профиль Сообщение
kutu
Newbee
Newbee


Зарегистрирован: 22.05.2008
Сообщения: 8

СообщениеДобавлено: Пт, Май 23 2008 10:02 Цитировать |  |  | 

kutu писал(а):
Если напрямую постучать в php script и обратиться к https сайту, то все работает прекрасно

то есть я пишу в браузере http://****.ru/index.php?q=https://mail.google.com/ и все работает

1. Как узнать, может ли веб-сервер передать https коннект в php скрипт?
2. Я так и не могу понять причину, почему соединение встает на месте, те которые я описывал выше, почему не выдается ошибка сертификата или ещё какая-нибудь нормально описанная ошибка, чтоб можно было понять что не так?
К началу Профиль Сообщение
chAlx
Moderator
Moderator


Зарегистрирован: 30.06.2004
Сообщения: 2627
Откуда: SPb

СообщениеДобавлено: Пт, Май 23 2008 13:36 Цитировать |  |  | 

kutu:

Описанный сервис -- это т.н. CGI-прокси, он не умеет работать как HTTP-прокси (то, что указывается как прокси в браузере и в конфиге Прокса). Для использования такого сервиса нужен редирект (вместо вставки его в конфиг), который можно автоматически делать фильтром:

Код:
In = FALSE
Out = TRUE
Key = "URL-Filter: Prefixer (out) [ALX]"
Match = "$STOP() $URL((http(s|)://)\0 (^somewhere.net/\?q) \1)"
Replace = "$JUMP(\0somewhere.net/?q=\1)"
К началу Профиль Сообщение
kutu
Newbee
Newbee


Зарегистрирован: 22.05.2008
Сообщения: 8

СообщениеДобавлено: Пт, Май 23 2008 19:10 Цитировать |  |  | 

chAlx:

прокс все равно просится на https://*****.ru/index.php?q=mail.google.com
после чего успешно зависает (всмысле SSL Pass-Thru)

мне же необходимо чтобы при запросе https://mail.google.com прокс редиректил на
Код:
GET /index.php?q=https://mail.google.com
Host: ****.ru

написал такой фильтр
Код:
Match = "https://\2"
Replace = "$JUMP(http://****.ru/index.php?urlx=\2)"

при тесте на https://mail.google.com выдает
Код:
JumpTo: http://*****.ru/index.php?urlx=mail.google.com

а когда через браузер запрашиваю то
Код:
JumpTo: https://http://*****.ru/index.php?urlx=webmail.udmvt.ru:443//

логично что прокс включет CONNECT

необходимо как то заставить прокс не включать CONNECT, а использовать только GET и POST
К началу Профиль Сообщение
chAlx
Moderator
Moderator


Зарегистрирован: 30.06.2004
Сообщения: 2627
Откуда: SPb

СообщениеДобавлено: Вс, Май 25 2008 09:42 Цитировать |  |  | 

kutu:

Если использовать синтаксис http://https..ya.ru, то редирект работает:
Цитата:
RedirectTo: http://somewhere.net/?q=https://ya.ru/

+++GET 1+++

GET /?q=https://ya.ru/ HTTP/1.1
Host: somewhere.net


Тестовый фильтр:
Код:
In = FALSE
Out = TRUE
Key = "URL-Filter: Prefixer (out) [ALX]"
Match = "$STOP() $URL((http(s|)://)\0 (^somewhere.net/\?q) \1)"
Replace = "$JUMP(http://somewhere.net/?q=\0\1)"
К началу Профиль Сообщение
kutu
Newbee
Newbee


Зарегистрирован: 22.05.2008
Сообщения: 8

СообщениеДобавлено: Вс, Май 25 2008 10:25 Цитировать |  |  | 

chAlx:

использую ваш фильтр (перенастроенный под мои пути) и пишу в браузере https://mail.google.com
Код:
RedirectTo: http://*****.ru/index.php?q=https://mail.google.com:443//

+++GET 996+++
CONNECT /index.php?q=https://mail.google.com:443// HTTP/1.0
User-Agent: Opera/9.10 (Windows NT 5.1; U; ru)
Host: *****.ru
URL-Filter:

+++SSL 996:+++
SSL Pass-Thru: CONNECT http://*****.ru/index.php?q=https://mail.google.com:443//
+++CLOSE 996+++

вроде пишет что GET, а зтаем включает CONNECT, и слешь дополнительный появляется в конце
К началу Профиль Сообщение
chAlx
Moderator
Moderator


Зарегистрирован: 30.06.2004
Сообщения: 2627
Откуда: SPb

СообщениеДобавлено: Вс, Май 25 2008 18:12 Цитировать |  |  | 

kutu:

Если в браузере писать https://, то браузер и будет посылать CONNECT, как положено. Я писал про вриант с использованием префикса http://https..

Сгенерённый браузером слеш можно подавить в фильтре.
К началу Профиль Сообщение
kutu
Newbee
Newbee


Зарегистрирован: 22.05.2008
Сообщения: 8

СообщениеДобавлено: Вт, Авг 12 2008 12:25 Цитировать |  |  | 

chAlx:

настроил фильтры входящие чтоб правили Location и Refresh на http://https..
настроил фильтры страниц чтоб правили ссылки на http://https..

но все равно есть неудобства, программе не скажешь чтоб она шла не на https, а на http://https.. отсюда вопрос:

а есть ли возможность настроить proxomitron, чтобы при получении запроса на https он автоматом переводил на http://https.. ?

я попробовал jump'ить, но получается что она перепргивает на "https://http://https.."
К началу Профиль Сообщение
chAlx
Moderator
Moderator


Зарегистрирован: 30.06.2004
Сообщения: 2627
Откуда: SPb

СообщениеДобавлено: Вт, Авг 12 2008 17:12 Цитировать |  |  | 

kutu:
Цитата:
я попробовал jump'ить, но получается что она перепргивает на "https://http://https.."

А если фильтр поправить? ;)

Тут кто-то занимался подобными задачами -- может, есть и готовое решение..
К началу Профиль Сообщение
joviallix
Newbee
Newbee


Зарегистрирован: 11.12.2008
Сообщения: 3

СообщениеДобавлено: Чт, Дек 11 2008 19:03 Цитировать |  |  | 

Нашёл кто нить решение? С той же проблеммой столкнулся. На форуме покапался, ничего не нашёл. Отпишитись плиз! Smile
К началу Профиль Сообщение
joviallix
Newbee
Newbee


Зарегистрирован: 11.12.2008
Сообщения: 3

СообщениеДобавлено: Ср, Дек 17 2008 02:41 Цитировать |  |  | 

Тема уже мёртвая что ли? Sad
К началу Профиль Сообщение
chAlx
Moderator
Moderator


Зарегистрирован: 30.06.2004
Сообщения: 2627
Откуда: SPb

СообщениеДобавлено: Ср, Дек 17 2008 10:39 Цитировать |  |  | 

По-моему, если не можешь разобраться -- проще в браузере прописать нужный сайт в поле "No proxy for:".
К началу Профиль Сообщение
joviallix
Newbee
Newbee


Зарегистрирован: 11.12.2008
Сообщения: 3

СообщениеДобавлено: Чт, Дек 18 2008 02:17 Цитировать |  |  | 

Да дело в том, что у меня весь инет даёт проксомон, если я добавлю в исключения что то, оно просто не будет грузиться. Так что SSL надо по любому настроить Smile
К началу Профиль Сообщение
Показать сообщения:      
 
Новая тема  Ответить

 Перейти:   




Следующая тема
Предыдущая тема
Вы можете начинать темы
Вы можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах


P o w e r e d b y p h p B B © p h p B B G r o u p :: T h e m e b a s e d o n FI T h e m e :: Часовой пояс: GMT + 3