gioku

鬼佬代理PSO2Proxy的正确使用方式
2015/11/28 :Sega技术力增长,最近PSO2Proxy经常被n盾干扰,注意。Original:配置环境...
扫描右侧二维码阅读全文
28
2015/11

鬼佬代理PSO2Proxy的正确使用方式

2015/11/28 :
Sega技术力增长,最近PSO2Proxy经常被n盾干扰,注意。
Original:

  • 配置环境

    apt-get install python-twisted python-crypto python-yaml python-faulthandler python-pip openssl git nano
    git clone https://github.com/cyberkitsune/PSO2Proxy.git /opt/PSO2Proxy
  • 生成配置文件。

    cd /opt/PSO2Proxy/proxy
    python ./PSO2Proxy.py
  • 产生C-S密钥对

    cd /opt/PSO2Proxy/proxy/keys
    openssl genpkey -out myKey.pem -algorithm rsa -pkeyopt rsa_keygen_bits:1024
    openssl rsa -in myKey.pem -outform MS PUBLICKEYBLOB -pubout -out publickey.blob
  • 获得PSO2的公钥
      找到/opt/PSO2Proxy/tools文件夹,将里面的RSAKeyDumper.dll下载,改名为ddraw.dll放进和PSO2.exe同名的文件夹下。
      此时打开游戏,在目录下会出现四个文件SEGAKey#(0-3).blob,将SEGAKey0.blob上传到服务器的/opt/PSO2Proxy/keys/文件夹下,然后

    cd /opt/PSO2Proxy/proxy/keys
    openssl rsa -pubin -inform MS PUBLICKEYBLOB -in SEGAKey0.blob -outform PEM -out SEGAKey.pem
  • 设置语系

    dpkg-reconfigure locales

    确保只有en_US.UTF-8被选中,然后重启你的vps。
    待完成后,进入/opt/PSO2Proxy/proxy/cfg,编辑pso2proxy.config.yml

    nano pso2proxy.config.yml

    以我的配置文件举例,应该有这么几样:

    admins: []
    bindIp: 0.0.0.0
    blockNameMode: 1
    commandPrefix: ‘-‘
    enabledShips: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
    myIpAddr: 你的VPS的IP
    noisy: false

      第一行是服务器管理员的名单,暂时先不用管,第三行是各线名字的显示方式,0为显示各线在服务器上的实际地址和端口(以1床为例,B-030为210.189.208.7:12130),1为读取/opt/PSO2Proxy/proxy/cfgblocknames.resources.json中的数据(当然这个文件你想怎么改就怎么改,名字什么都是浮云,以我的一段为例),

    “B-001″:”B-001: 初心者”,
    “B-002″:”B-002: 正常”,
    “B-003″:”B-003: 正常”,
    “B-004″:”B-004: H”,
    “B-005″:”B-005: H”,
    “B-006″:”B-006: H”,
    “B-007″:”B-007: 很H”,
    “B-008″:”B-008: 很H”,
    “B-009″:”B-009: 很H”,
    “B-010″:”B-010: 很H”,
    “B-011″:”B-011: 超级H”,
    “B-012″:”B-012: 超级H”,
    “B-013″:”B-013: 超级H”,
    “B-014″:”B-014: 超级H”,
    “B-015″:”B-015: 超级H”,
    “B-016″:”B-016: 超级H”,
    “B-017″:”B-017: 十分的H”,
    “B-018″:”B-018: 十分的H”,
    “B-019″:”B-019: 十分的H”,
    “B-020″:”B-020: 十分的H”,
    “B-021″:”B-021: 十分的H”,
    “B-022″:”B-022: 十分的H”,
    “B-023″:”B-023: 十分的H”,
    “B-024″:”B-024: 鍋ULT”,
    “B-025″:”B-025: 鍋ULT”,
    “B-026″:”B-026: 哩哩啪ULT”,
    “B-027″:”B-027: 哩哩啪ULT”,
    “B-028″:”B-028: 哩哩啪ULT”,
    “B-029″:”B-029: 哩哩啪ULT”,

      第四行是服务器终端命令执行前缀,可以留着默认的!,也可以改成你习惯的,倒数第二行改成你VPS的公网IP保存。
      服务器默认会启动两个插件:GlobalChat和LoginMessage,他们的配置文件同样存在于/opt/PSO2Proxy/proxy/cfg,有gchat.config.yml gchat-irc.config.yml和loginmessage.config.yml,这两个文件暂时可以不用动。GlobalChat可以实现VPS端的全船聊天(是的你没看错),连接到此服务器的人都可以聊天,还可以连接IRC频道,让不在游戏的和在游戏的一起聊天。
      这几个文件的配置比较麻烦,LoginMessage可以忽略,如果想配置全局聊天和irc连接就要先找到irc频道,介于irc在国内知名度,我在此只贴出配置文件内容以及解释,如果有irc经验,可以试试。

    autoexec: [] #自动执行的irc命令
    channel: ‘#PSO2’ #当前的channel
    enabled: true #启用
    nick: PSO2IRCBot #名字
    output: true
    port: 6667 #端口
    server: IRC_SERVER #服务器
    svname: NickServ #这个一般不用动
    svpass: YOUR_PASS_FOR_THAT_NICK #密码

      在使用nick里的名字之前请以这个名字手动登陆到IRC注册,将名字密码对应填写。

  • 本地客户端连接
      打开hosts,添加如下

    0.0.0.0 gs001.pso2gs.net #Also ship 1
    0.0.0.0 gs016.pso2gs.net #Also ship 2
    0.0.0.0 gs031.pso2gs.net #Also ship 3
    0.0.0.0 gs046.pso2gs.net #Also ship 4
    0.0.0.0 gs061.pso2gs.net #Also ship 5
    0.0.0.0 gs076.pso2gs.net #Also ship 6
    0.0.0.0 gs091.pso2gs.net #Also ship 7
    0.0.0.0 gs106.pso2gs.net #Also ship 8
    0.0.0.0 gs121.pso2gs.net #Also ship 9
    0.0.0.0 gs136.pso2gs.net #Also ship 10

    0.0.0.0换成你vps的IP。然后将之前在服务器上生成的publickey.blob下载到本地,和http://assets.cyberkitsune.net/pso2injector.zip这个压缩包解压后文件夹中的两个dll文件一起放到pso2_bin目录下,将ddraw.dll设定为只读,即可连接。

  • 服务器端管理

    服务器端建议装一个screen,运行代理在screen中,这样ssh断开后不会结束进程。
    运行的方法(假设你装了screen,以root身份执行以下):

    screen
    cd /opt/PSO2Proxy/proxy
    python ./PSO2Proxy.py

    等到服务器端正常启动后,再让本地客户端连接,成功以后,按下Ctrl-A然后松开,再按D,显示[detached from XXX]即可关闭ssh。

以上安装在Debian 7 x64环境一次成功。

  • 几个有用的链接

    PSO2Proxy的项目主地址:https://github.com/cyberkitsune/PSO2Proxy
    Wiki:https://github.com/cyberkitsune/PSO2Proxy/wiki
    TroubleShooting:https://github.com/cyberkitsune/PSO2Proxy/wiki/Troubleshooting
    如果出现很多奇形怪状的错误自己一时从上面找不到答案,请用IRC跟开发的鬼佬们交流:
    http://widget.mibbit.com/?server=irc.badnik.net&channel=%23PSO2Proxypublic
    PS:以上全部英文。
    已知的Bug:LoginMessage里面不能用中文或者日文字符,否则登录会630
    
最后修改:2018 年 10 月 04 日 02 : 10 AM
如果觉得我的文章对你有用,请随意赞赏

发表评论