CentOS 虚拟机 Shadowsocks 安装与配置指南

目录

  1. 前言
  2. CentOS 虚拟机的创建
  3. Shadowsocks 服务端的安装 3.1. 使用 yum 安装 Shadowsocks 服务端 3.2. 手动编译安装 Shadowsocks 服务端
  4. Shadowsocks 客户端的配置 4.1. Windows 客户端配置 4.2. macOS 客户端配置 4.3. Android 客户端配置 4.4. iOS 客户端配置
  5. Shadowsocks 服务端的配置 5.1. 修改 Shadowsocks 配置文件 5.2. 启动 Shadowsocks 服务
  6. 防火墙和 SELinux 的配置
  7. Shadowsocks 的使用
  8. FAQ

前言

虚拟机 是一种软件技术,它允许一台计算机同时运行多个操作系统。这使得用户可以在一台物理机上安全、高效地运行多个系统环境,而不会相互干扰。

Shadowsocks 是一种加密的代理协议,广泛应用于科学上网、翻墙等场景。它能有效地突破网络封锁,访问被禁止的网站和服务。

本文将介绍如何在 CentOS 虚拟机上安装和配置 Shadowsocks,为您提供一个稳定高效的科学上网解决方案。

CentOS 虚拟机的创建

首先,您需要在本地计算机上创建一个 CentOS 虚拟机。这可以使用 VMware、VirtualBox 等虚拟机软件来完成。

  1. 下载 CentOS 系统镜像文件,可从官网 [https://www.centos.org/download/] 获取。
  2. 安装虚拟机软件,如 VMware 或 VirtualBox。
  3. 创建一个新的虚拟机,并在创建过程中选择刚刚下载的 CentOS 系统镜像文件。
  4. 根据自己的需求调整虚拟机的配置,如内存大小、CPU 核心数等。
  5. 完成虚拟机的创建和安装。

Shadowsocks 服务端的安装

使用 yum 安装 Shadowsocks 服务端

  1. 登录到 CentOS 虚拟机,打开终端。

  2. 运行以下命令安装 Shadowsocks 服务端:

    yum install -y epel-release yum install -y shadowsocks-libev

  3. 安装完成后,您可以使用以下命令启动 Shadowsocks 服务:

    systemctl start shadowsocks-libev systemctl enable shadowsocks-libev

手动编译安装 Shadowsocks 服务端

  1. 登录到 CentOS 虚拟机,打开终端。

  2. 安装 Shadowsocks 服务端所需的依赖包:

    yum install -y epel-release yum install -y gcc gettext autoconf libtool automake make pcre-devel asciidoc xmlto c-ares-devel libev-devel libsodium-devel mbedtls-devel

  3. 下载 Shadowsocks 源码并编译安装:

    git clone https://github.com/shadowsocks/shadowsocks-libev.git cd shadowsocks-libev ./autogen.sh ./configure –prefix=/usr –disable-documentation make make install

  4. 创建 Shadowsocks 服务的配置文件:

    cat > /etc/shadowsocks-libev/config.json <<-EOF { “server”:”0.0.0.0″, “server_port”:8388, “password”:”your_password”, “timeout”:300, “method”:”aes-256-cfb” } EOF

  5. 启动 Shadowsocks 服务:

    systemctl start shadowsocks-libev systemctl enable shadowsocks-libev

Shadowsocks 客户端的配置

Windows 客户端配置

  1. 下载并安装 Shadowsocks 客户端软件,可从 [https://github.com/shadowsocks/shadowsocks-windows/releases] 获取。
  2. 打开 Shadowsocks 客户端软件,点击左上角的”+”图标,选择”从剪贴板导入”。
  3. 输入您在服务端设置的服务器地址、端口、密码和加密方式,然后单击”确定”保存。
  4. 单击软件界面右下角的”启用系统代理”即可开始使用 Shadowsocks 进行科学上网。

macOS 客户端配置

  1. 下载并安装 Shadowsocks 客户端软件,可从 [https://github.com/shadowsocks/shadowsocks-iOS/releases] 获取。
  2. 打开 Shadowsocks 客户端软件,点击左上角的”+”图标,选择”从剪贴板导入”。
  3. 输入您在服务端设置的服务器地址、端口、密码和加密方式,然后单击”确定”保存。
  4. 单击软件界面右上角的”启用”即可开始使用 Shadowsocks 进行科学上网。

Android 客户端配置

  1. 下载并安装 Shadowsocks 客户端软件,可从 [https://github.com/shadowsocks/shadowsocks-android/releases] 获取。
  2. 打开 Shadowsocks 客户端软件,点击右下角的”+”图标,选择”从剪贴板导入”。
  3. 输入您在服务端设置的服务器地址、端口、密码和加密方式,然后单击”确定”保存。
  4. 单击软件界面右上角的”开始”即可开始使用 Shadowsocks 进行科学上网。

iOS 客户端配置

  1. 下载并安装 Shadowrocket 客户端软件,可从 App Store 搜索并安装。
  2. 打开 Shadowrocket 客户端软件,点击左上角的”+”图标,选择”添加代理”。
  3. 输入您在服务端设置的服务器地址、端口、密码和加密方式,然后单击”完成”保存。
  4. 单击软件界面右上角的”开启”即可开始使用 Shadowrocket 进行科学上网。

Shadowsocks 服务端的配置

修改 Shadowsocks 配置文件

  1. 打开 Shadowsocks 服务端的配置文件:

    nano /etc/shadowsocks-libev/config.json

  2. 根据您的需求修改以下配置项:

    • server: 服务器的 IP 地址或域名,默认为 0.0.0.0
    • server_port: 服务器监听的端口号,默认为 8388
    • password: 客户端连接时使用的密码。
    • timeout: 连接超时时间,单位为秒。
    • method: 加密方式,可选 aes-256-cfbchacha20-ietf-poly1305 等。
  3. 保存并退出配置文件。

启动 Shadowsocks 服务

  1. 使用以下命令启动 Shadowsocks 服务:

    systemctl start shadowsocks-libev

  2. 检查 Shadowsocks 服务的状态:

    systemctl status shadowsocks-libev

    如果服务启动成功,您应该能看到 active (running) 的状态。

  3. 设置 Shadowsocks 服务开机自启:

    systemctl enable shadowsocks-libev

防火墙和 SELinux 的配置

  1. 检查并开放 Shadowsocks 服务端使用的端口:

    firewall-cmd –zone=public –add-port=8388/tcp –permanent firewall-cmd –reload

  2. 如果您的 CentOS 虚拟机开启了 SELinux,您需要执行以下命令允许 Shadowsocks 服务访问网络:

    semanage port -a -t shadowsocks_port_t -p tcp 8388

Shadowsocks 的使用

  1. 确保您已经正确配置了 Shadowsocks 服务端和客户端。
  2. 打开 Shadowsocks 客户端软件,并确保已经连接到服务器。
  3. 在浏览器或其他需要科学上网的应用程序中,设置系统代理为 Shadowsocks 客户端的地址和端口。
  4. 现在您可以通过 Shadowsocks 代理访问被限制的网站和服务了。

FAQ

Q: 为什么我无法连接到 Shadowsocks 服务器?

A: 请检查以下几点:

  • 服务器的 IP 地址或域名是否正确
  • 服务器的防火墙是否已开放 Shadowsocks 端口
  • Shadowsocks 服务是否已正确启动
  • 客户端的配置是否与服务端设置一致

Q: Shadowsocks 是否安全?

A: Shadowsocks 使用加密技术来保护您的网络通信,相比直接访问被屏蔽的网站更加安全。但是,如果您担心隐私和安全问题,建议您也使用 VPN 等其他科学上网工具。

Q: Shadowsocks 有哪些缺点?

A: Shadowsocks 的主要缺点包括:

  • 需要自行搭建服务器,增加了使用成本
  • 服务器可能会被封锁,需要不断更换服务器
  • 国内网络环境复杂,连接质量可能较差
  • 对于某些视频等流媒体服务,可能无法正常使用

Q: 如何优化 Shadowsocks 的性能?

A: 您可以尝试以下方法来优化 Shadowsocks 的性能:

  • 选择就近的服务器位置,以降低延迟
  • 使用更高效的加密算法,如 chacha20-ietf-poly1305
  • 调整 Shadowsocks 客户端的缓存和连接超时设置
  • 开启 TCP 快速打开(TCP Fast Open)功能
  • 使用 Shadowsocks 配合 V2Ray 或 Trojan 等代理工具

Q: Shadowsocks 和 VPN 有什么区别?

A: Shadowsocks 和 VPN 都是科学上网的工具,但它们在原理和使用方式上有所不同:

  • Shadowsocks 是一种基于 SOCKS5 协议的代理工具,而 VPN 是一种基于 IPsec 或 OpenVPN 协议的隧道技术。
  • Shadowsocks 只代理特定的应用程序流量,而 VPN 会代理整个设备的网络流量。
  • Shadowsocks 的服务器部署和维护相对简单,而 VPN 通常需要专业的网络环境。
  • Shadowsocks 可能更容易被检测和屏蔽,而 VPN 相对更加稳定和安全。

总的来说,Shadowsocks 和 VPN 各有优缺点,您可以根据自己的需求选择合适的工具。

正文完