Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Прочее";
Текущий архив: 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 в работе, хотя криков по этому поводу предостаточно слышу. Вот и ты туда же.


> А какие есть критические уязвимости в криптопровайдерах?

Разные и их предостаточно, все описано в интернете. Большая часть их это не уязвимости протоколов и алгоритмов, а уязвимости конкретных реализаций. Я не просто так написал, при "должной настройке сервера" практически неуязвим.


 
Медвежонок Пятачок ©   (2013-05-19 21:35) [41]

Слушай, друг.

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

практически неуязвим.

Ты мне лучше расскажи чем и как уязвимо шифрование на прикладном уровне. Которое я и предложил.

И да. Это был не ксор на девичьей фамилии матери. Если вдруг кто подумал.


 
DVM ©   (2013-05-19 21:44) [42]


> Медвежонок Пятачок ©   (19.05.13 21:35) [41]


> Ты мне лучше расскажи чем и как уязвимо шифрование на прикладном
> уровне. Которое я и предложил.

Для этого надо сообщить чуть-чуть деталей об используемых алгоритмах и т.д, если это не секрет. А так гадание на кофейной гуще будет. Ну например, может быть уязвим тем, что ключи вшиты в исполняемый файл клиентского ПО. Но это ведь не так?


 
DVM ©   (2013-05-19 21:59) [43]


> Медвежонок Пятачок ©   (19.05.13 21:35) [41]

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


 
sniknik ©   (2013-05-20 02:08) [44]

> Тобой было сказано, что у тебя аштэтэпээс не аштетепээсит на убунте.
> Я сказал - перейди на http.
> Логично.
- Мужики! У меня мотор не пашет на проселочной дороге в деревне!???
- Вот с такими признаками ... ... ...  в чем может быть дело?
- Перейди на дизель.
!!!???
Это, извини, не логично, это глупо. Вместо поиска причины/починки... а перестанет работать дизель, уже в городе например? - перейти на газогенератор/электромотор? Что случается, нафиг разбираться, сразу меняем! Идиотизм.

p.s. К тому же, как оказалось, решение вообще не связано с http/https, все усилия были бы напрасны.


 
Медвежонок Пятачок ©   (2013-05-20 11:03) [45]

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

omg.
Что здесь вообще можно делать, имея такие предположения.


 
DVM ©   (2013-05-20 13:24) [46]


> Медвежонок Пятачок ©   (20.05.13 11:03) [45]


> Что здесь вообще можно делать, имея такие предположения.

Будем считать, что я угадал, раз другой информации ты не привел.


 
Медвежонок Пятачок ©   (2013-05-20 13:26) [47]

Угадал угадал.
И вообще у меня пароль к ключам в ини лежит.
Незашифрованный.
Только не плачь.


 
DVM ©   (2013-05-20 13:33) [48]


> Медвежонок Пятачок ©   (20.05.13 13:26) [47]


> Только не плачь.

Вот что за манера у тебя общаться а? Вместо того, чтобы обсудить плюсы и минусы различных решений (мне действительно интересно, как ты реализовал шифрование в своем ПО на прикладном уровне так, чтобы обеспечить уровень защиты от различного рода атак выше, чем в том же TLS) все время пытаешься перейти на личности и мелкие оскорбления.


 
Медвежонок Пятачок ©   (2013-05-20 13:45) [49]

Если это написано чтобы мне тут вдруг стало стыдно, то прочитай лучше свой самый первый пост в этой ветке.

PS манер у меня - набор. применяю нужные по обстановке.


 
имя   (2013-05-22 22:27) [50]

Удалено модератором



Страницы: 1 2 вся ветка

Форум: "Прочее";
Текущий архив: 2013.11.03;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.61 MB
Время: 0.003 c
3-1293438440
avers_sm
2010-12-27 11:27
2013.11.03
Как передать TIBTransaction в качестве параметра процедуры.


15-1369142209
p
2013-05-21 17:16
2013.11.03
Помогите перевести


15-1368647469
Rouse_
2013-05-15 23:51
2013.11.03
ВУЗ для IT специалиста: взгляд изнутри


15-1367900957
O'ShinW
2013-05-07 08:29
2013.11.03
С днем Радио!


15-1368704471
sniknik
2013-05-16 15:41
2013.11.03
Клиент не работает под wine (убунта) ...





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский