您当前的位置:首页 > 计算机 > 系统应用 > Linux

龙芯平台编译安装ShadowSocks

时间:11-21来源:作者:点击数:

操作系统:航天龙梦 Fedora 28 KDE live 6

适用架构:mips64el

  打游戏的人最怕什么?延时。如果游戏的服务器在电信的网络,而你恰恰是个联通用户,哈哈,那你惨了!如果你是个中移铁通用户,恭喜你,你更惨了。

  那么,有没有办法打通各网络间的通讯呢?有,寻找中间服务器,比如阿里云,不论是电信还是联通,都很快。那么,通过阿里云作为媒介,可以极大的降低2个网络间的延迟。用到的工具呢,可以是ShadowSocks。

一、使用安装包

sudo dnf install shadowsocks-qt5

好啦!安装完毕。如果想要自己编译请往下看。

二、开发环境

 依赖的软件:

 一次安装软件包

  为了简化步骤,可以一次性全部安装完毕。

  sudo dnf install git qt5 qt5-qtbase-devel qt5-qtbase-gui botan2 botan2-devel cmake cmake-gui gcc gcc-c++ pkg-config qrencode qrencode-libs qrencode-devel  zbar zbar-devel zbar-qt zbar-qt-devel libappindicator libappindicator-devel

 分批安装软件包

  当然,为了看清依赖关系,也可以分批安装依赖。

  sudo dnf install git

  查看版本:git --version

  sudo dnf install qt5 qt5-qtbase-devel qt5-qtbase-gui

  查看版本:qmake-qt5 --version。版本Qt >= 5.5

  sudo dnf install botan2 botan2-devel

  查看版本:botan --version。版本Botan-2 >= 2.3.0

  sudo dnf install cmake cmake-gui

  查看版本:cmake --version。CMake >= 3.1

  sudo dnf install gcc gcc-c++

  查看版本:gcc --version,g++ --version。支持C++14各项功能的编译器(比如GCC >= 4.9)。

   sudo dnf install pkg-config

   查看版本:pkg-config --version

   sudo dnf install qrencode qrencode-libs qrencode-devel

   查看版本:qrencode --version

   sudo dnf install zbar zbar-devel zbar-qt zbar-qt-devel

   sudo dnf install libappindicator libappindicator-devel

二、编译libQtShadowSocks

 1、pkgcofig的设置

  由于ShadowSocks软件及库,使用pkgconfig链接依赖,因此,对所有依赖库编译安装至系统目录,并设置pkgconfig链接目录为原始目录。

 2、git

  不要在生产环境使用主分支的代码,因为还在开发阶段。请使用stable稳定分支。

  git clone -b stable https://github.com/shadowsocks/libQtShadowsocks.git

 3、cmake的配置

  cd libQtShadowsocks

  查看编译配置

  cmake -L

  如果不报错,清直接跳转到步骤5。如果报错,请在步骤4检查配置。

 4、启动cmake的图形界面

  在“启动”菜单中,点击“CMake”。

  点击“Browse Source”浏览源代码路径、点击“Browse Build”浏览二进制程序的路径。
  如果在BOTAN_LIBRARY_VAR选项的value中,不是有效路径。填写libbotan-2.so的路径。
  点击configure。如果不报错,点击generate。

 5、编译

  在libQtShadowsocks目录中,新建build文件夹,并切换进入该文件夹。

  mkdir build && cd build

  生成编译配置。

  cmake .. -DCMAKE_INSTALL_PREFIX=/usr/local

  执行编译。

  make -j4

  安装
  sudo make install
  以上的操作将同时编译和安装libQtShadowsocks和shadowsocks-libQtShadowsocks。如果需要打包的话,需要根据发行版的指南分割为2个或3个软件包。

  创建一个链接,以便pkg-config能检索到QtShadowSocks。

  sudo ln /usr/lib/pkgconfig/QtShadowsocks.pc /usr/lib64/pkgconfig/QtShadowsocks.pc

三、编译ShadowSocks-Qt5

  返回libQtShadowsocks目录的上一级目录

  cd ..

  git clone https://github.com/shadowsocks/shadowsocks-qt5.git

  cd shadowsocks-qt5

  查看编译配置

  cmake -L

  mkdir build && cd build

  cmake .. -DCMAKE_INSTALL_PREFIX=/usr/local

  make -j4

  sudo make install

四、安装privoxy

  如果你的游戏不支持socks代理,那么我们就需要将http、https或ftp转发。这个任务由privoxy来完成。

  sudo dnf install privoxy

  改之前备份配置文件

  sudo cp  /etc/privoxy/config /etc/privoxy/config.bak
  查看文件sudo  vi /etc/privoxy/config ,
  先搜索关键字:listen-address 找到“listen-address 127.0.0.1:8118“这一句,在章节4.2的上一行。保证这一句没有注释,8118 就是将来 http 代理要输入的端口。
  然后搜索 forward-socks5t,在章节5.2,将“forward-socks5t / 127.0.0.1:9050 .”此句的注释去掉。并把端口号改为1080。保存退出。

  启动 privoxy。

  sudo systemctl start privoxy

  如果在终端中让游戏临时使用代理,可以直接执行以下命令。重启终端或计算机后,设置会失效。

export http_proxy=http://127.0.0.1:8118 &&/
export https_proxy=http://127.0.0.1:8118 &&/
export ftp_proxy=http://127.0.0.1:8118

  如果要设置成永久的全局代理,可以选择配置 /etc/profile,重启电脑后,配置能保存住。

  执行 vi /etc/profile,添加上边的三行语句:  

  第三句 ftp 的代理根据需要,不需要的话可以不添加。然后 source /etc/profile,执行 curl www.google.com 或 wget www.google.com 判断是否成功访问。
或可以先执行:

  curl ip.gs
  显示为本地 IP 信息(例:当前 IP:222.xxx.xxx.xxx 来自:中国四川 电信) 直接执行:
  export http_proxy=http://127.0.0.1:8118 再执行:
  curl ip.gs 显示代理后的 IP 信息(例:当前 IP:138.xxx.xxx.xxx 来自:美国)
  如果不能访问,请重启机器,依次打开 shadowsocks 和 privoxy 再测试.

  nohup sslocal -c /etc/shadowsocks.json /dev/null 2>&1 &
  systemctl start privoxy

五、参考文献:

  《LibQtShadowSocks github wiki》:https://github.com/shadowsocks/libQtShadowsocks/wiki/Compiling

  《ShadowSocks-Qt5 github wiki》:https://github.com/shadowsocks/shadowsocks-qt5/wiki/Compiling

  《「Shadowsocks」- A secure socks5 proxy》:http://www.k4nz.com/2.Networks_and_Protocols/Layer_7_-_Application_Layer/SOCKS_-_Socket_Secure/About_Shadowsocks/libQtShadowsocks.html

  《pkg-config 详解》https://blog.csdn.net/newchenxf/article/details/51750239

  《linux 配置 shadowsocks 代理全局代理》https://www.looaon.com/index.php/%E5%BA%94%E7%94%A8%E9%85%8D%E7%BD%AE/832.html

方便获取更多学习、工作、生活信息请关注本站微信公众号城东书院 微信服务号城东书院 微信订阅号
推荐内容
相关内容
    无相关信息
栏目更新
栏目热门