在Linux上使用Wine + Chrome for win + np-activex 登陆网银

95 views
Skip to first unread message

Qian Hong

unread,
Nov 16, 2011, 12:25:42 PM11/16/11
to non-ie-online-banking
在介绍crossover plugin之前,必须先介绍一下 Wine + Chrome for win + np-activex 这种方案
这是为了证明一件事: 网银需要的api,wine中已经实现了。
如果将来crossover支持网银了但出了一些问题,那么先在Wine + Chrome for win + np-activex 上调试有助于诊断和排除问题。

前面说过,Wine和Chrome各自的更新经常会带来regression,所以要描述如何在wine下使用chrome for win登陆网银是很麻烦的事情。
这里我直接引用一个我报给wine的bug,里面的重现步骤就是具体如何登陆工行网银的方法:
http://bugs.winehq.org/show_bug.cgi?id=29078

其他银行我目前还没有时间去测。

几点注记:
* Wine + Chrome for win 有很多问题,使用的时候需要很多workaround
* 曾经在某个版本的Wine上,配合某个版本的Chrome for win, 可以有比较完美的效果
* 目前由于Wine的一个bug,在使用Chrome for win的时候,必须带上 --no-sandbox
这个参数才能打开网页。按照Ren Huan前辈的说法,这是把Chrome/Chromium最好的东西丢掉了呵呵。(比较遗憾的是,Ren
Huan没有加入到我们的讨论组中来。)


--
Regards,
Qian Hong

-
Sent from Ubuntu
http://www.ubuntu.com/

Qian Hong

unread,
Nov 16, 2011, 12:33:19 PM11/16/11
to non-ie-online-banking
我再转载一下我曾经发在广州Linux用户组邮件列表上的一封邮件,介绍如何在Linux上通过wine登陆工行网银。
有点过期,有些提到的bug已经修复,有些新的bug又出来了,但是还是可以作为参考。这个旧例子用的是wine1.3.20,但是几乎任何情况下最好都是首选使用最新版的wine(尤其是做测试)。截止到2011-11-17,最新版的wine是
wine-1.3.32 。 wine每两周就发布一个新版本。

(非常抱歉,我没有把最新版的wine + chrome for win + np-activex
的使用记录写下来,因为最近实在没时间。有什么问题我们可以在进一步的讨论中补充细节)

======以下是转载========

最近Wine项目修掉了有关Chrome for Win的一个长期未解决的bug [1], 从而让Chrome for Win可以在Wine上安装和运行.
经过测试发现,只须少许workaround, ActiveX for Chrome[2]就能够在wine上运行,据我所知,这应该是Linux上目前为止唯一
一种无须Windows许可又不侵犯专有软件权利的登录工行网银的方案.
使用方式记录如下:

0.更新到最新的wine1.3.20

1. 下载Chrome for Win的安装包:
http://www.google.com/chrome?platform=win&hl=en

2. 在Wine中安装:
$ wine ChromeSetup.exe

3. 下载和安装工行网银控件
$ wget http://www.icbc.com.cn/icbc/html/download/dkq/icbc_netbank_client_controls.exe
$ winetricks -q mfc42
$ wine icbc_netbank_client_controls.exe

4. 启动chrome.exe时加上 --no-sandbox 参数, 这是对Bug 21232的workaround, 参见[3]

5. 用firefox+UserAgentSwitchy伪装成Chrome for Windows,
https://chrome.google.com/webstore/detail/lgllffgicojgllpmdbemgglaponefajn下载ActiveX
for Chrome, 得到一个 *.crx文件,
不妨称为extension_1_3_3.crx

6. 将下载得到的extension_1_3_3.crx 重命名为extension_1_3_3.zip
,并解压得出文件夹extension_1_3_3/ ,到Chrome扩展中
心中,启用开发人员模式,载入未打包的扩展,选择刚刚解压的 extension_1_3_3/ ,参考[4]

7. 在新加载的ActiveX for Chrome扩展的设置选项中填写好信任网址列表,参考[5]

到此,就可以登录 https://mybank.icbc.com.cn, 与在Chrome for
Windows上一样使用工行网银了.当然Chrome for Windows上
的一些css的问题这里也有,此外,目前还不支持u盾,也许再等个一年半载会有希望.

其中,5和6两步是对Bug 27248 的workaround,参见 [6]
如果Bug 21232和Bug 27248能够解决,那么以上步骤就完全可以在图形界面里面完成,并且和windows上的使用方式完全一致.
目前仅建议喜欢折腾的朋友尝试,暂时不建议传播这种对新手不友好的方式,等这两个关键的bug解决了,再转发到论坛上.有兴
趣的朋友可以关注Bug 21232和Bug 27248这两个bug,可以到bugzilla上vote一下,也可以研究一下有没有更方便的workaround
方式.其他网银暂时没有测试.

相比使用wine+MSIE的方式,此方法的最大优势在于不用担心法律问题.而wine+builtin IE的方式还无法实现,主要是有一个bug
已经卡了几个月没进展了,参见[7]

更多与 网银 on Wine 相关的bug,参见[8], 有兴趣的朋友可以跟进一下,欢迎指导 ;-)

Have fun~

[1] Bug 16453 - Google Chrome outer installer can't download inner
installer http://bugs.winehq.org/show_bug.cgi?id=16453
[2] ActiveX for Chrome
https://chrome.google.com/webstore/detail/lgllffgicojgllpmdbemgglaponefajn
[3] Bug 21232 - Chrome can't load any webpage unless --no-sandbox is
used http://bugs.winehq.org/show_bug.cgi?id=21232
[4] Create and load an extension
http://code.google.com/chrome/extensions/getstarted.html
[5] 在chrome中使用ActiveX控件[请注意BUG提交注意事项]
http://bbs.chromi.org/thread-15377-1-1.html
[6] Bug 27248 - cannot unpack *.crx (extensions or themes) in Chrome
http://bugs.winehq.org/show_bug.cgi?id=27248
[7] Bug 26546 - Buitin IE cannot run some methods of ActiveX controls
from ICBC online bank http://bugs.winehq.org/show_bug.cgi?id=26546
[8] Bug汇总 http://code.google.com/p/online-banking-with-wine/wiki/buglist

======================


2011/11/17 Qian Hong <frac...@gmail.com>:

Reply all
Reply to author
Forward
Message has been deleted
0 new messages