Форум: "Прочее";
Текущий архив: 2013.11.03;
Скачать: [xml.tar.bz2];
ВнизКлиент не работает под wine (убунта) ... Найти похожие ветки
← →
sniknik © (2013-05-16 15:41) [0]Вернее не авторизуется...
Подробности - есть 2 программы, клиент и сервер, фактически трехзвенка, клиент интерфейсная часть, сервер работа с базой и все остальное, связь между ними по https. Http клиент/сервер реализованы на инди (так и не переделал на синапс... были объективные причины).
Проблема при запуске клиента Клиентом на линуксе под вайном, этот клиент не может авторизоваться на сервере, виндовые в то же время, с тем же сервисом нормально работают. Судя серверному по логу в http заголовках (ARequestInfo) поля From и AuthUsername (то что логируется) пустые. Т.е. "" - вообще (либо нет такого имени/тега, что тоже даст пустую строку). При том, что в логе клиента поле From (логирует прямо перед запросом) вполне корректное (у меня там имя компа + имя юзера).
???
Что может быть? Хотя бы теоретически... Сами попробовали подобную схему (клиент под wine) ничего похожего, все работает. Правда пробовали под Федорой (тем что есть), а клиент пытался под Убунтой...
Запрос получается, строка (GET) запроса на сервере присутствует... т.е. все по виду нормально, кроме указанного (а может что и из не логируемого пропало). Да протокол прописан жестко HTTP 1.1, если убунта для wine поддерживает только HTTP 1.0 не может быть такого? + версия SSL тоже жестко 3-я (sslvSSLv3)... если там одну за другую попытаются выдать не случится подобного?
В общем, идеи, предложения??? (Есть возможность, не напряжно кому, проверить под убунтой?)
← →
Игорь Шевченко © (2013-05-16 15:54) [1]в каких-то версиях Wine начальные значения для глобальных переменных не обнулялись (в противоположность Windows)
← →
Медвежонок Пятачок © (2013-05-16 15:55) [2]Есть предложение перейти на http а данные закрыть на прикладном уровне.
← →
sniknik © (2013-05-16 16:01) [3]> в каких-то версиях Wine начальные значения для глобальных переменных не обнулялись (в противоположность Windows)
Про это знаю, и учитывается. Не не инициализированных переменных нет. А те что передаются, от чего зависит вообще читаются из системы (имя компа, юзера), т.е. еще и переинициализируются. И еще в логе клиента та же переменная вполне конкретный (/корректный) след оставляет...
> Есть предложение перейти на http а данные закрыть на прикладном уровне.
C https? А смысл?
← →
Медвежонок Пятачок © (2013-05-16 16:08) [4]смыслов вагон.
- снижаются требования к клиенту. например его становится легче проксировать. тупой http-прокси есть всегда и везде. https - не всегда и не везде.
- криптуха может выбирается произвольно, а не только та что доступна в https
← →
sniknik © (2013-05-16 16:16) [5]... Может быть, но не вариант. Https вполне законное требование безопасности, т.к. клиент и сервер вполне могут быть разнесены в разные города например... т.е. через инет.
Да и не влияет это никак на решение проблемы... т.к. первый раз из сотен клиентов, причем на не стандартной установке (вполне можно и "послать", хотя конечно не будем). Вот если есть способ проверить, что это из-за того что там чего то нет... то что вообще нет https, не возможно, запрос то получили, "развернули", часть значений сохранили в лог... "криптуха" тоже та что нужно, раз уж получилось "разкриптухавать"...
← →
sniknik © (2013-05-16 16:17) [6]> есть способ проверить
И соответственно предложить до установить если чего нет.
← →
sniknik © (2013-05-16 16:21) [7]> становится легче проксировать
+ Прокси именно в данном случае нет, и клиент и сервер в локальной сети (это я первым делом выяснил).
← →
Медвежонок Пятачок © (2013-05-16 16:22) [8]Ну по безопастности мы оба знаем, что есть требования, а есть реалии.
закрытые данные по открытому каналу - это тоже самое что открытые данные по закрытому каналу. С той разницей, что в моем случае ты сам выбираешь средство защиты, алгоритм и длины ключей.
И на решение проблемы это очень влияет.
У тебя не работает https под вином и ты не знаешь почему и не знаешь будет ли оно работать завтра у другого клиента.
А я знаю, что http будет работать и сегодня и завтра.
← →
MonoLife © (2013-05-16 16:32) [9]> Есть возможность, не напряжно кому, проверить под убунтой?
могу попробовать (kubuntu 12.04)
← →
sniknik © (2013-05-16 16:35) [10]> могу попробовать (kubuntu 12.04)
Куда ссылку на установку слать? Мыло из анкеты актуально?
← →
Медвежонок Пятачок © (2013-05-16 16:35) [11]С той разницей, что в моем случае
Еще разница в безопасности:
В моем случае системе совсем не страшна уязвимость MiM, а в твоем случае она возможна. Меня же подломят только в случае компрометации ключей.
← →
sniknik © (2013-05-16 16:37) [12]+ Кроме убунты нужна и винда... ;(, т.к. сервер сервисом, на линуксе никак (ни разу не получалось) не ставится.
← →
MonoLife © (2013-05-16 16:42) [13]> sniknik © (16.05.13 16:35) [10]
да.
> sniknik © (16.05.13 16:37) [12]
есть.
← →
Дмитрий С © (2013-05-16 16:46) [14]
> sniknik © (16.05.13 16:37) [12]
А чего сам не поставишь убунту ту же? на это часа два максимум уйдет.
← →
sniknik © (2013-05-16 16:51) [15]MonoLife © (16.05.13 16:42) [13]
Послал.
> А чего сам не поставишь убунту ту же? на это часа два максимум уйдет.
??? скачать дистрибутив... вернее упереться в блокировку, пойти к админам договорится чтобы открыли скачивание больших файлов, скачать wmvare поставить, убедится, что в локальных сетях в домене оно требует регистрацию, т.е. платно... и т.д. и т.п.
2 часа это очень оптимистично. а рабочий день кончается через 1 час 10 мин.
← →
MonoLife © (2013-05-16 16:54) [16]> sniknik © (16.05.13 16:51) [15]
принял.
← →
sniknik © (2013-05-16 17:00) [17]Отбой, все решилось. :)...
Я не зная в чем дело просто описал как ставили на Федоре -
Проверили у Димы на «Федоре», запустили клиент под wine, провели пару платежей для теста, сервер был у меня на винде.
Такой проблемы с «глотанием» данных из заголовков запроса не было…
Единственное, что пришлось доставлять это MDAC (mdac_type.exe - http://download.cnet.com/Microsoft-Data-Access-Components-MDAC-2-7-Service-Pack-1-Refresh/3000-10250_4-10729498.html) ставили через ‘winetricks mdac27‘, скрипт брали отсюда http://wiki.winehq.org/winetricks_ru.
Сейчас клиент позвонил сказал, что повторил (он делал как то по другому), и все заработало... :))
Хотя какая связь, ADO и сеть, не пойму.
← →
sniknik © (2013-05-16 17:01) [18]MonoLife © (16.05.13 16:54) [16]
Но все одно, Большое спасибо!
← →
MonoLife © (2013-05-16 17:06) [19]незачто)
Кстати, недавно решил проблему с запуском своих приложений, использующих ADO, как раз, после установки в wine MDAC - mdac_type.
← →
MonoLife © (2013-05-16 17:30) [20]к слову, запустилось, но с ошибкой, после открытия главного окна:
EOleException: Requested functionality is not implemented
← →
sniknik © (2013-05-16 17:56) [21]> EOleException: Requested functionality is not implemented
Это что-то из xml парсера для RSS... у нас тоже было, но обновление поставить не удалось. А что именно их функциональности там не поддерживается х.з. вроде все как надо...
← →
MonoLife © (2013-05-16 18:04) [22]>вроде все как надо..
да, программа, вроде, работает..
← →
sniknik © (2013-05-16 18:16) [23]По идее, чтобы убрать "не поддержку" отсюда http://wiki.winehq.org/winetricks_ru нужно поставить либо msxml4 либо msxml6, т.е. что-то что больше версией чем в вайне по умолчанию. У нас это не ставилось с ошибкой "не возможно на данном типе процессора", опять не понятно почему, какая связь... но это то что получили.
← →
sniknik © (2013-05-17 12:37) [24]Выяснил место ексепта - "Requested functionality is not implemented" (как оказалось влияет на работу, не все как надо... поиск пропадает (а не RSS на который можно "забить"))
Валится, реально на xml, в коде -Buffer:=
"<xml xmlns:s=""uuid:BDC6E3F0-6DA3-11d1-A2A3-00AA00C14882"""#10#13+
" xmlns:dt=""uuid:C2F41010-65B3-11d1-A29F-00AA00C14882"""#10#13+
" xmlns:rs=""urn:schemas-microsoft-com:rowset"""#10#13+
" xmlns:z=""#RowsetSchema"">"#10#13+
"<s:Schema id=""RowsetSchema"">"#10#13+
....
"</s:Schema>"#10#13+
"<rs:data>"#10#13+
sData + //полученные данные
"</rs:data>"#10#13+
"</xml>";
adoStream:= CreateOLEObject("ADODB.Stream");
try
adoStream.Mode:= adModeUnknown;
adoStream.Type:= adTypeText;
adoStream.Open();
adoStream.WriteText(Buffer);
adoStream.Position:= 0;
result:= CreateOLEObject("ADODB.RecordSet") as _RecordSet;
result.CursorLocation:= adUseClient;
result.Open(adoStream, EmptyParam, adOpenStatic, adLockBatchOptimistic, Integer(adOptionUnspecified));
finally
adoStream:= UnAssigned;
end;
но т.к. установить обновление (msxml6) так и не получилось... думаю переделать на "рабоче крестьянский" метод парса вручную (такое тоже есть с более мелкими "посылками", и также при передачи бинарных (не adTypeText, а adTypeBinary т.е. ADTG вместо xml) и там проблем нет).
p.s. так, может кому интересно :).
← →
MonoLife © (2013-05-17 13:52) [25]msxml6 в wine установился без ошибок, но ексепшн при запуске остался
кстати, msxml6-32, у ms есть и -64
← →
MonoLife © (2013-05-17 13:54) [26]как у самих ms на сайте написано про msxml6:
Загрузите файл, соответствующий типу процессора компьютера
← →
sniknik © (2013-05-17 14:10) [27]> msxml6 в wine установился без ошибок, но ексепшн при запуске остался
программа 32 разрядная... то что поставилось в 64разрядной версии она не видит..
Вот что мы в итоге "родили" как рекомендацию -Последовательность (распишу подробнее) - Если ось 64 разрядная, для 32х этот пункт пропустить, то нужно перевести wine в 32 разрядный режим (если не сделать то появляются странные ошибки при установки типа "не поддерживается данный тип процессора") -
Для этого удаляется вся папка ~/.wine
И выполняется команда -
WINEARCH=win32 winecfg
Переводим локаль в английскую (нужные пакеты не имеют русификации, а поиск идет по языку локали, т.е. могут быть непонятные сообщения/ссылки если не делать)
export LANG=en_EN.utf8
И ставим два пакета через winetricks (см прошлое письмо для ссылок) msxml один из, или все, для гарантии как сделал наш "линуксоид" ;)
./winetricks msxml6
./winetricks msxml4
./winetricks msxml3
ADO
./winetricks mdac28
И ie, по желанию... (RSS и html отчеты лучше выглядят)
./winetricks ie8
Одна ошибка все таки остается, но уже не в программе... при клике на ссылки в RSS ленте не может определить "внешний" браузер по умолчанию (хотя ie стоит, значит и по умолчанию есть чтото... и мозилу ставили делали дефаултом, т.что скорее всего метод в wine просто не работает)
← →
MonoLife © (2013-05-17 14:13) [28]ну, понятно... У меня все оси 32-разрядные. Возможно, нужно было поставить все xml-парсеры..
← →
sniknik © (2013-05-17 14:19) [29]> все xml-парсеры..
Т.е. "наш" сделал правильно, и нужно все? Просто мне он прислал просто список выполненных команд... интерпретация моя, и я подумал "нафига три?" наверное одного хватит, но оставил все, т.е. если глюк не "уйдет" то увидят что наш все поставил...
← →
DVM © (2013-05-17 22:30) [30]
> Медвежонок Пятачок © (16.05.13 15:55) [2]
> Есть предложение перейти на http а данные закрыть на прикладном
> уровне.
Будете ваять свои возможно кривые и уязвимые велосипеды вместо использования проверенных временем средств? Не ты ли примерно так говорил?
Про атаки мим вообще забавно, это в теории лишь все гладко и незаметно, на деле же такая атака обнаруживается на раз. Если нет гарантированной проверки валидности участников обмена данными, то любой обмен подвержен атаке в том числе и самопальный шифрованный протокол. В TLS есть возможность проверки валидности.
← →
sniknik © (2013-05-18 11:00) [31]> т.что скорее всего метод в wine просто не работает
Работает, оказывается, просто нарвались на довольно известную (по количеству ссылок в qoogl-е) проблему с dde. Решается. Удалением ссылки на встроенный изначально "ie", и/или ручным созданием (или командами) правильной ассоциации...
У клиента подобной проблемы не возникло.
← →
Медвежонок Пятачок © (2013-05-18 11:32) [32]Про атаки мим вообще забавно,
Что именно?
Атака мим при https возможна? Возможна.
на счет на раз определяется - зайди в инеткафе и определи что тебе подсунули левый сертификат.
Атака мим в моем случае возможна? Нет.
Так как клиент не ждет никакого сертификата. Он юзает те что у него есть локально.
Ну и про свои велосипеды.
Имею несколько таких своих велосипедов, работающих примерно с 2000 года.
Через них за все время было прокачано примерно два и восемь триллиона денег.
За 13 лет подломили только одного клиента. И то не его самого, а был словлен троян, через которого поставили кейлогеер когда выяснилось, что на тачке установлено дбо. затем уже штатными средствами воспользовались системой.
← →
sniknik © (2013-05-19 10:51) [33]> Так как клиент не ждет никакого сертификата. Он юзает те что у него есть локально.
??? И при чем тут https? У меня также работает только, и исключительно с выданным агенту, и хранящимся локально сертификатом (место можно менять, некоторые хранят их на защищенных флешках), ничего клиент не ждет, с автоматически "подтянутым" не работает.
← →
Медвежонок Пятачок © (2013-05-19 12:26) [34]при том. что рассуждения касались https вообще, а не твоего частного случая.
кроме того, это не я начал рассказывать, что де https - это всегда безопасно, а шифрование данных и открытый канал - небезопасно.
← →
sniknik © (2013-05-19 16:12) [35]> при том. что рассуждения касались https вообще, а не твоего частного случая.
Ага, и при этом совет сменить протокол дан, до всего, до информации как работает мой частный случай... т.е. заранее предполагалось, что неправильно т.к. https. Т.е. совет поменять протокол, хотя претензия как выясняется к методу ("велосипедами" так же можно сделать аналог).
Странно.
← →
DVM © (2013-05-19 20:12) [36]
> Медвежонок Пятачок © (18.05.13 11:32) [32]
> Атака мим при https возможна? Возможна.
> на счет на раз определяется - зайди в инеткафе и определи
> что тебе подсунули левый сертификат.
Чтобы организовать MIM атаку, нужно очень хорошо подготовиться, в ряде случаев это настолько сложно, что почти невозможно, зачастую проще на компьютер пользователя троян подсадить. Но независимо от подготовки атакующего этот тип атаки обнаруживается, обнаруживается легко и просто, простой проверкой подлинности сертификата. Все мало мальски современные браузеры это делают, так надо делать и в своей программе, причем категорически отказываться работать дальше при неверном сертификате.
В TLS 1.2 на данный момент нет известных иных критических уязвимостей при правильной настройке сервера и правильно написанном клиенте (в SSL3-TLS1.1 есть, но их использование тоже не так просто). Более того, уязвимости TLS ежедневно ищутся сотнями (если не тысячами) людей по всему миру и в любом случае вероятность своевременного обнаружения и закрытия уязвимости значительно выше чем в случае самопального шифрования.
← →
Медвежонок Пятачок © (2013-05-19 20:53) [37]Чтобы организовать MIM атаку, нужно очень хорошо подготовиться,
А чтобы слетать в космос надо очень много денег.
Что дальше.
Я бы и дальше подискутировал, если бы ты был в теме.
← →
Медвежонок Пятачок © (2013-05-19 20:56) [38]В TLS 1.2 на данный момент нет известных иных критических уязвимостей
А какие есть критические уязвимости в криптопровайдерах?
В том же рса?
Сказал бы прямо: твой совет нормальный, рабочий, но я ему не последую потому что не хочу ничего переписывать и потому что ты Медвежонок Пятачок.
Я бы сразу отстал.
Но нет же.
Начинается про требования безопасности, тудэма-сюдема......
← →
Медвежонок Пятачок © (2013-05-19 21:04) [39]Ага, и при этом совет сменить протокол дан, до всего, до информации как работает мой частный случай...
Тобой было сказано, что у тебя аштэтэпээс не аштетепээсит на убунте.
Я сказал - перейди на http.
Логично.
← →
DVM © (2013-05-19 21:26) [40]
> Медвежонок Пятачок © (19.05.13 20:53) [37]
> Я бы и дальше подискутировал, если бы ты был в теме.
Ну, теме я или нет ты не можешь знать. Но TLS я изучал относительно мало, ты прав наверное. Тем не менее мне еще никто из оппонентов не смог продемонстрировать уязвимости TLS в работе, хотя криков по этому поводу предостаточно слышу. Вот и ты туда же.
> А какие есть критические уязвимости в криптопровайдерах?
Разные и их предостаточно, все описано в интернете. Большая часть их это не уязвимости протоколов и алгоритмов, а уязвимости конкретных реализаций. Я не просто так написал, при "должной настройке сервера" практически неуязвим.
Страницы: 1 2 вся ветка
Форум: "Прочее";
Текущий архив: 2013.11.03;
Скачать: [xml.tar.bz2];
Память: 0.57 MB
Время: 0.005 c