V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
imcnan
V2EX  ›  程序员

开源私密聊天——把 VPS 变成自己的微信私服

  •  4
     
  •   imcnan · 2018-05-14 15:59:52 +08:00 · 24053 次点击
    这是一个创建于 2384 天前的主题,其中的信息可能已经有所发展或是发生改变。

    最近 openzaly-0.5.4 发布了:

    • 私聊、群聊、好友机制、群管理都有,够用了。
    • 支持端到端的消息加密,包括文字、图片、语音
    • java -jar 直接启动,也可以用 docker,看大家自己喜好。
    • 现在还是单机版,数据在一个 sqlite 文件里,备份恢复起来很方便。
    • 看样子可以开发很多扩展,启动后有两个 demo,但是还没有这方面的文档~

    推荐大家用 jar 包的形式安装启动。

    一、安装服务器

    Github下载最新的服务器版本,或者从源码自己编译,都行。

    https://github.com/akaxincom/openzaly

    有啥事,看 openzaly 里的联系方式,找开发者问就行

    只是为了体验的话,直接执行 java -jar xxxxxx.jar 就可以了。

    二、下载客户端

    github 介绍里有客户端的下载地址,现在只支持 iOS 与 Android,暂时没有 PC 版,对我来说暂时够用。

    下载了客户端后,输入服务器地址连接,首个用户使用邀请码 000000 进入,作为管理员。

    注意:

    • 打开应用后需要注册一个账号,可以点下面的 本地匿名账号
    • 站点搭建完成后匿名-无邀请码的,需要的话可以改成实名。
    • 一定要开启邀请码,因为我只给朋友用

    这样,把邀请码发给朋友,就可以放心畅快的聊天了。

    官方几张截图

    第 1 条附言  ·  2018-05-14 17:02:28 +08:00
    大家有什么建议,觉得好还是不好,都可以评论下来~~~
    第 2 条附言  ·  2018-05-15 08:44:45 +08:00
    几个统一问题:

    ## 1. 客户端为什么现在没开源?
    我们精力有限,暂时只能聚焦于一个场景,私有聊天服务器。在这个场景里,拥有数据的服务端是最重要的,所以先开源了服务端,毕竟开源并不仅仅是把代码扔到 github 上。

    ## 2. 微信对接的问题
    可以服务端 hook 消息,使用 itchat 之类的 lib 来完成。以后我们会放出 akaxin 的接口文档,支持大家自定义很多功能。


    ## 3. web 客户端的问题
    有计划(站点拥有自己的 web-im,但是需要 http 与 websocket 协议,所以国内使用的话需要网站备案; PS:纯 IM 服务器与扩展不需要备案),只是还没有推出,大家别着急😂😂🤗🤗
    89 条回复    2023-12-22 17:28:14 +08:00
    tulongtou
        1
    tulongtou  
       2018-05-14 16:02:56 +08:00 via iPhone
    看截图感觉不错
    imcnan
        2
    imcnan  
    OP
       2018-05-14 16:07:58 +08:00
    正好犯困的时候😴 😴 😴 😴
    点收藏的各位大哥们,留下点建议可好?
    xrlin
        3
    xrlin  
       2018-05-14 16:19:33 +08:00
    挺不错的啊
    agagega
        4
    agagega  
       2018-05-14 16:23:33 +08:00 via iPhone
    Mark
    qcloud
        5
    qcloud  
       2018-05-14 16:26:06 +08:00
    不错哦
    opengps
        6
    opengps  
       2018-05-14 16:27:58 +08:00
    主要是需要安装客户端。。。
    imcnan
        7
    imcnan  
    OP
       2018-05-14 16:30:38 +08:00
    @opengps 你希望使用浏览器用?
    wyntalgeer
        8
    wyntalgeer  
       2018-05-14 16:33:20 +08:00
    stared
    Troevil
        9
    Troevil  
       2018-05-14 16:37:56 +08:00
    客户端开源吗
    cnmllll
        10
    cnmllll  
       2018-05-14 16:38:04 +08:00
    收藏~!
    byuan04
        11
    byuan04  
       2018-05-14 16:40:39 +08:00
    好多 NAS 自带的也不错
    比如群晖啥的 chat
    imcnan
        12
    imcnan  
    OP
       2018-05-14 16:45:27 +08:00
    群晖的重在存储,单单用 chat 的话,太贵了。
    imcnan
        13
    imcnan  
    OP
       2018-05-14 17:08:48 +08:00
    @Troevil 先把服务端和基础体系搞好,然后是考虑客户端和 SDK 的事。
    HvangStormstout
        14
    HvangStormstout  
       2018-05-14 18:13:24 +08:00
    酷!酷就完事儿了
    ghiei9101
        15
    ghiei9101  
       2018-05-14 18:21:43 +08:00
    哎呦~ 不错哦~~~
    gabon
        16
    gabon  
       2018-05-14 18:23:20 +08:00 via Android
    应用层用的什么协议,感兴趣
    fe619742721
        17
    fe619742721  
       2018-05-14 18:23:28 +08:00
    没表情包不想聊天。。
    imcnan
        18
    imcnan  
    OP
       2018-05-14 18:24:34 +08:00
    @gabon redis 的 resp 协议。
    imcnan
        19
    imcnan  
    OP
       2018-05-14 18:24:56 +08:00
    @fe619742721 有 emoji 表情😈😈😈😈😈
    xidadada
        20
    xidadada  
       2018-05-14 18:25:29 +08:00
    客户端开源吗?
    leonard916
        21
    leonard916  
       2018-05-14 18:31:03 +08:00
    有个问题,为什么贵公司还在用 Java6 而不升级到 Java8 ???
    iden
        22
    iden  
       2018-05-14 18:46:26 +08:00
    客户端不开源吗?
    ttboy
        23
    ttboy  
       2018-05-14 18:49:46 +08:00
    mark
    ye1in
        24
    ye1in  
       2018-05-14 18:54:07 +08:00 via iPhone
    是用的 socket 吗
    imcnan
        25
    imcnan  
    OP
       2018-05-14 19:04:20 +08:00
    @ye1in 是的,基于 tcp 的协议。
    lsido
        26
    lsido  
       2018-05-14 19:41:30 +08:00 via Android   ❤️ 1
    客户端没开源,不私密
    Pastsong
        27
    Pastsong  
       2018-05-14 20:03:53 +08:00
    emmm, XMPP, IRC 了解一下?
    mritd
        28
    mritd  
       2018-05-14 20:11:16 +08:00 via iPhone   ❤️ 1
    这个跟微信有啥关系?
    minamike
        29
    minamike  
       2018-05-14 20:17:18 +08:00
    人家为了和你聊天还得额外下个客户端
    要是我我宁愿发短信...
    imcnan
        30
    imcnan  
    OP
       2018-05-14 21:18:22 +08:00   ❤️ 1
    @lsido 包括客户端,以后的扩展体系,都会开放的。现在还照顾不过来,毕竟开源不是把代码扔到 github 就完事。
    exalex
        31
    exalex  
       2018-05-14 21:44:38 +08:00
    使用成本太高了啊
    pexcn
        32
    pexcn  
       2018-05-14 22:09:05 +08:00
    我以为是 EH Forwarder Bot 这一类东西,原来不是
    (跟微信有什么关系?
    plko345
        33
    plko345  
       2018-05-14 22:20:14 +08:00
    @pexcn 吸引眼球吧,看上去并没有关系
    pexcn
        34
    pexcn  
       2018-05-14 22:31:44 +08:00
    @plko345 同样的功能,我还是选择 telegram... (即使 server 端闭源...
    xiaoyu9527
        35
    xiaoyu9527  
       2018-05-14 22:36:10 +08:00
    有没有办法把微信的聊天记录放到自己的私有云上 并且可以同步呢。。。。
    logOo
        36
    logOo  
       2018-05-14 23:25:45 +08:00
    东西看起来很好。
    LeungJZ
        37
    LeungJZ  
       2018-05-14 23:31:50 +08:00
    看起来好像挺不错的。mark。
    nolo
        38
    nolo  
       2018-05-14 23:36:57 +08:00 via Android
    楼主做成这样很不错了 期待以后客户端开源
    agagega
        39
    agagega  
       2018-05-15 02:06:34 +08:00 via iPhone
    @pexcn Signal 多好
    athanos
        40
    athanos  
       2018-05-15 02:24:51 +08:00 via Android
    支持这样去中心化的努力。
    DeWhite
        41
    DeWhite  
       2018-05-15 02:56:14 +08:00
    大概理解了一下,就是自建服务器。
    然后通过客户端去实现聊天。
    那为什么他们自己不直接去配置聊天服务器 弄个网页就好了。。。。
    非要这么整。。。
    DeWhite
        42
    DeWhite  
       2018-05-15 03:02:56 +08:00
    然后定位尴尬....
    搭建服务器,给小白估计要么死在收费要么死在选系统要么死在 linux 分不清哪个版本。
    与其如此不如弄同类型爱好社交。
    服务器成本给自己承担掉,
    dangyuluo
        43
    dangyuluo  
       2018-05-15 04:46:11 +08:00
    @athanos 哪看出来是去中心化了。。?明明是有 IM 服务器的。
    binghe
        44
    binghe  
       2018-05-15 04:56:53 +08:00 via Android
    是否可以参考下 RTX 的功能
    ryh
        46
    ryh  
       2018-05-15 06:45:21 +08:00   ❤️ 1
    athanos
        47
    athanos  
       2018-05-15 06:45:49 +08:00 via iPhone   ❤️ 1
    @dangyuluo 服务器可以自己搭啊,比微信夹带私货,禁止这个禁止那个,动辄封号,还要实名认证不是去中心的吗?不是说去中心就是区块链的。
    txydhr
        48
    txydhr  
       2018-05-15 06:48:47 +08:00
    有 group voice chat 功能嘛
    Zzdex
        49
    Zzdex  
       2018-05-15 08:01:35 +08:00
    mmmmmark
    dangyuluo
        50
    dangyuluo  
       2018-05-15 08:26:14 +08:00
    @athanos 我知道区块链\neq 去中心,可照这说法,Discuz 也是去中心的了。。真遗憾,都好多年了,他们咋没想到这么个好词呢。
    imcnan
        51
    imcnan  
    OP
       2018-05-15 08:50:41 +08:00
    @dangyuluo

    @athanos 所指的去中心化,并不是一个中心都没有,只是说的去掉了一个大中心,分拆成很多小中心。

    现在的区块链项目,都是有中心的。而比特币,对于非专业人员来说,互联网就是比特币的中心,看从哪个角度看而已~
    wr410
        52
    wr410  
       2018-05-15 08:53:25 +08:00
    去中心的完整解释是:每一个客户端都是服务端,每一个人都是副本。
    koc
        53
    koc  
       2018-05-15 08:57:16 +08:00 via iPad   ❤️ 1
    @dangyuluo

    目光放大一点,不是说这个项目本身是去中心化的,而是在整个大环境中这个项目的出现让 IM 软件的格局去中心化了一点点。
    imcnan
        54
    imcnan  
    OP
       2018-05-15 08:57:25 +08:00
    @wr410 对,我们技术从业者是这么解释的,每一个个体都是一个可以不依赖其他某个特定个体而独立存在的个体。
    技术角度上是对的,这里还有个中心,一个小中心。
    zj516
        55
    zj516  
       2018-05-15 09:25:22 +08:00
    java 是世界上最好的语言,不要打我,加油
    yylucifer
        56
    yylucifer  
       2018-05-15 09:27:50 +08:00   ❤️ 1
    钉钉用得挺好,API 各种暴露也还算方便。。
    datou
        57
    datou  
       2018-05-15 09:46:09 +08:00
    我想说的是如果真的能实现加密而且无法被监控的话,楼主有喝茶的风险呀
    imcnan
        58
    imcnan  
    OP
       2018-05-15 09:49:16 +08:00
    @datou 每一个站点的服务器运营者,不是我们。可以根据自己的服务器所在地法律,来在后台配置是否开启此功能。
    alian
        59
    alian  
       2018-05-15 09:59:50 +08:00
    为开源点赞
    oska874
        60
    oska874  
       2018-05-15 11:12:39 +08:00
    谁用啊。自娱自乐。
    pmispig
        61
    pmispig  
       2018-05-15 11:24:28 +08:00   ❤️ 1
    呵呵,客户端不开源好意思说自己是开源,谁知道你客户端做了些什么
    EXE
        62
    EXE  
       2018-05-15 11:34:46 +08:00   ❤️ 1
    heiher
        63
    heiher  
       2018-05-15 11:37:45 +08:00
    客户端不开源谈什么端对端加密呢?
    JohnChu
        64
    JohnChu  
       2018-05-15 11:59:29 +08:00
    不弄个网页端吗? telegram 都有 pwa 了,对于这种小众的软件还是推个网页端更合适吧?
    quericy
        65
    quericy  
       2018-05-15 13:32:48 +08:00
    体验了下,建议客户端可以添加个扫码添加服务器地址的功能,降低其他好友加入的操作成本


    等以后客户端开源了(或者出 im 端)可以考虑使用
    tomxin7
        66
    tomxin7  
       2018-05-15 13:55:54 +08:00
    你好,为什么我部署在本地,通过局域网可以连接上,部署在阿里云,通过公有 ip 却超时了呢,是不是还需要开启什么端口
    mortal
        67
    mortal  
       2018-05-15 13:56:52 +08:00
    样子倒是挺好看的,不过暂时没这个需要。
    zj516
        68
    zj516  
       2018-05-15 13:59:20 +08:00
    @JohnChu,原贴里说了,网页端在计划中,还没推出而已,等过一段时间应该就有了
    zj516
        69
    zj516  
       2018-05-15 14:17:16 +08:00
    @tomxin7 你是不是忘了配置你机器的安全组,阿里云的机器,要自己在安全组开放端口才能访问。
    tomxin7
        70
    tomxin7  
       2018-05-15 14:35:45 +08:00
    @zj516 我的网站或者数据库都能访问,应该不是安全组的问题,话说咱这个软件有用到什么特殊的端口吗
    lizhenda
        71
    lizhenda  
       2018-05-15 15:55:08 +08:00
    想法蛮好的,客户 UI 不错哦
    Actrace
        72
    Actrace  
       2018-05-15 16:06:13 +08:00
    我打赌楼主这个想法坚持不了几年。。
    imcnan
        73
    imcnan  
    OP
       2018-05-15 16:06:46 +08:00
    @tomxin7 端口:2021
    liuweisj
        74
    liuweisj  
       2018-05-15 17:46:02 +08:00
    把注意点放在了不该放的地方 香香老师 : 明天晚上办公室见 难道就我一个人吗
    sublimevsatom
        75
    sublimevsatom  
       2018-05-15 17:59:02 +08:00
    看了一下,感觉挺不错的。
    tomxin7
        76
    tomxin7  
       2018-05-15 18:28:35 +08:00
    @imcnan 感谢,果然是端口问题,入站规则加入 2021 就行了
    kkk123
        77
    kkk123  
       2018-05-15 18:35:50 +08:00
    @liuweisj 老司机
    daniaoren
        78
    daniaoren  
       2018-05-16 09:11:59 +08:00
    和微信有什么关系……标题党了啊
    victoryss
        79
    victoryss  
       2018-05-16 10:41:47 +08:00
    mark,期待 web 客户端
    ak47947
        80
    ak47947  
       2018-05-16 11:33:36 +08:00
    有客户端开源了再使用,感谢分享
    imcnan
        81
    imcnan  
    OP
       2018-05-17 13:45:25 +08:00
    @ak47947 计划推出 web 端
    zuoshoufantexi
        82
    zuoshoufantexi  
       2018-05-20 10:04:35 +08:00
    有没有一键安装的代码,VPS 好几个,想试试看看呢。
    imcnan
        83
    imcnan  
    OP
       2018-05-22 10:23:45 +08:00
    @zuoshoufantexi 你是什么的 vps,直接在终端 java -jar 启动就行了。
    ghostsf
        84
    ghostsf  
       2018-05-25 14:03:23 +08:00
    和微信对接有点麻烦了。itchat 这类,目前新注册的微信号是用不了的
    zuoshoufantexi
        85
    zuoshoufantexi  
       2018-05-28 10:07:35 +08:00
    @imcnan 我就是那种具便宜的 VPS,你懂的那种啦。
    怎么装?
    Comdex
        86
    Comdex  
       2018-10-22 12:29:38 +08:00
    请问把这个服务端源码改造商用是可以的吗?
    wkl17
        87
    wkl17  
       2019-06-02 14:11:56 +08:00
    这个项目有新的进展吗?
    bcmFF
        88
    bcmFF  
       2019-07-26 16:23:45 +08:00
    时光荏苒,敢做并坚持做 IM 的只有两类人:傻子或者疯子☃
    woyao
        89
    woyao  
       336 天前
    @bcmFF 哈哈,这个项目已黄,公司网站都打不开了。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   953 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 30ms · UTC 20:24 · PVG 04:24 · LAX 12:24 · JFK 15:24
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.