查看: 20|回复: 0

Ubuntu 服务器上部署V2Ray代理

[复制链接]

47

主题

3

回帖

604

积分

管理员

积分
604
发表于 2025-3-20 17:13:33 | 显示全部楼层 |阅读模式
本教程将向您展示如何在 Ubuntu 22.04/20.04 上设置 V2Ray 代理服务器。 V2Ray 是一个轻量级、快速且安全的 Socks5 代理,可绕过互联网审查。我们将学习如何设置服务器端以及如何在 Ubuntu/Windows 上配置桌面客户端。



V2Ray 特点
  • 轻量且快速。在我的测试中,我可以使用 V2Ray 观看 YouTube 4K 视频。 YouTube 在我的国家/地区(中国)被屏蔽。
  • 在 Linux 和大多数 BSD 服务器上运行。
  • 有适用于 Linux、macOS、Windows 和 BSD 的官方 V2Ray 客户端软件。对于 Android 和 iOS,有可用的第三方应用程序。
  • 系统管理员易于设置
  • V2Ray 可以配置为在 TCP 端口 443 上运行,并使用标准 TLS 协议来加密网络流量。它看起来像标准的HTTPS协议,这使得它很难被阻止。
  • 支持KCP传输协议,在丢包率较高的网络环境中很有用。
  • 路由支持。您可以将其配置为仅路由在您所在国家或地区被阻止的网站/域的流量。
  • 您可以在 Cloudflare CDN 后面运行它。
  • V2Ray 不仅仅是一个简单的代理工具。它被设计为一个平台,开发人员可以使用它来构建新的协议和工具。


要求
要学习本教程,您需要一个可以自由访问被阻止网站(在您所在国家/地区或互联网过滤系统之外)的 VPS(虚拟专用服务器)。
我推荐 开放云vps,它具有以下特点:
  • 1天免费试用,24小时内随时退款。
  • 起价为 24RMB/月(2H2G) 香港、美国
  • 采用CN2高速回传网络,香港实测延迟40ms,美国洛杉矶延迟低至140ms
  • 稳定基本无丢包
  • 全球多个数据中心。
按照下面链接的教程在 开放云创建 Linux VPS 服务器。
  • 如何在 开放云上创建 Linux VPS 服务器
一旦您拥有运行 Ubuntu 的 VPS,请按照以下说明操作。

步骤1:在Ubuntu 22.04/20.04服务器上安装V2Ray
通过 SSH 连接到远程 Ubuntu 服务器。如果您运行的是 Ubuntu 22.04/20.04,那么我建议手动安装 V2Ray,因为存储库中的 v2ray 包在启动时出现问题。执行以下命令安装依赖包。
sudo apt install curl unzip
下载官方 V2Ray 安装脚本。 (我通常不建议使用第三方脚本安装软件,但这是V2Ray官方开发人员提供的安装脚本,所以我使用它。)
curl -O https://raw.githubusercontent.com/v2fly/fhs-install-v2ray/master/install-release.sh
运行安装脚本。
sudo bash install-release.sh
示例输出:
检查状态:
sudo systemctl status v2ray
如果它没有运行,请重新启动它。
sudo systemctl restart v2ray
启用系统启动时自动启动。
sudo systemctl enable v2ray步骤 2:设置 NTP 时间同步
您的服务器具有准确的时间非常重要,否则 V2Ray 可能会失败。这是为了确保用户的最佳安全。检查服务器上的时间。
timedatectl
示例输出:
如您所见,我的服务器系统时钟已同步。如果您的服务器不是这种情况,请按照下面链接的教程设置 NTP 时间同步。
  • 如何在 Linux 中配置时区和系统时钟
第三步:在服务器上配置V2Ray
使用命令行文本编辑器(例如 Nano)编辑 V2Ray 配置文件。
sudo nano /usr/local/etc/v2ray/config.json
删除该文件中的所有内容,然后添加以下行。将 id 替换为 UUID 格式的一些随机字符。您可以使用在线 UUID 生成器。
  1. {
  2.   "log": {
  3.     "loglevel": "warning",
  4.     "access": "/var/log/v2ray/access.log",
  5.     "error": "/var/log/v2ray/error.log"
  6.   },
  7.   "inbounds": [
  8.     {
  9.       "port": 10000,
  10.       "listen":"127.0.0.1",
  11.       "protocol": "vmess",
  12.       "settings": {
  13.         "clients": [
  14.           {
  15.             "id": "b831381d-6324-4d53-ad4f-8cda48b30811",
  16.             "alterId": 64
  17.           }
  18.         ]
  19.       },
  20.       "streamSettings": {
  21.         "network": "ws",
  22.         "wsSettings": {
  23.         "path": "/ray"
  24.         }
  25.       }
  26.     }
  27.   ],
  28.   "outbounds": [
  29.     {
  30.       "protocol": "freedom",
  31.       "settings": {}
  32.     }
  33.   ]
  34. }
复制代码


保存并关闭文件。 V2Ray 服务器将侦听端口 10000。然后重新启动 V2Ray 以使更改生效。
sudo systemctl restart v2ray
检查监听端口。
sudo ss -lnpt | grep v2ray
示例输出:
LISTEN 0      4096                 127.0.0.1:10000            *:*    users("v2ray",pid=701205,fd=3))步骤 4:配置反向代理
安装 Nginx 网络服务器。
sudo apt install nginx
为V2Ray创建虚拟主机文件。
sudo nano /etc/nginx/conf.d/v2ray.conf
在此文件中添加以下行。将 example.com 替换为您自己的域名。您还可以使用子域。
  1. server {
  2.   listen 80;
  3.   server_name    example.com;

  4.   index index.html;
  5.   root /usr/share/nginx/html/;

  6.   access_log /var/log/nginx/v2ray.access;
  7.   error_log /var/log/nginx/v2ray.error;

  8.     location /ray { # Consistent with the path of V2Ray configuration
  9.       if ($http_upgrade != "websocket") { # Return 404 error when WebSocket upgrading negotiate failed
  10.           return 404;
  11.       }
  12.       proxy_redirect off;
  13.       proxy_pass http://127.0.0.1:10000; # Assume WebSocket is listening at localhost on port of 10000
  14.       proxy_http_version 1.1;
  15.       proxy_set_header Upgrade $http_upgrade;
  16.       proxy_set_header Connection "upgrade";
  17.       proxy_set_header Host $host;
  18.       # Show real IP in v2ray access.log
  19.       proxy_set_header X-Real-IP $remote_addr;
  20.       proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
  21.     }
  22. }
复制代码

保存并关闭文件。然后测试Nginx配置。
sudo nginx -t
如果测试成功,则重新加载Nginx。
sudo systemctl reload nginx步骤 5:启用 HTTPS
我们启用 HTTPS,以便您的国家防火墙不知道您正在使用代理。
从 Snap 商店安装最新版本的 Let’s Encrypt 客户端 certbot。
sudo apt install snapdsudo snap install certbot --classic
然后运行以下命令来获取免费的 Let’s Encrypt 证书。
sudo /snap/bin/certbot --webroot -i nginx --agree-tos --hsts --staple-ocsp -d example.com -w /usr/share/nginx/html/
获取后,它将自动安装到您的 Nginx Web 服务器上。
步骤 6:配置防火墙
如果您在服务器上使用 iptables 防火墙,则需要通过运行以下命令来允许流向 TCP 端口 443 的流量。
sudo iptables -I INPUT -p tcp --dport 443 -j ACCEPT
如果您使用 UFW 防火墙,请运行以下命令:
sudo ufw allow 443/tcp第7步:在客户端计算机上安装并配置V2RayLinux 桌面
请按照步骤1中的相同步骤在Linux桌面上安装V2Ray。完成后,编辑配置文件。
sudo nano /usr/local/etc/v2ray/config.json
删除该文件中的所有内容,然后添加以下行。
  1. {
  2.   "inbounds": [
  3.     {
  4.       "port": 1090,
  5.       "listen": "127.0.0.1",
  6.       "protocol": "socks",
  7.       "sniffing": {
  8.         "enabled": true,
  9.         "destOverride": ["http", "tls"]
  10.       },
  11.       "settings": {
  12.         "auth": "noauth",
  13.         "udp": false
  14.       }
  15.     }
  16.   ],
  17.   "outbounds": [
  18.     {
  19.       "protocol": "vmess",
  20.       "settings": {
  21.         "vnext": [
  22.           {
  23.             "address": "example.com",
  24.             "port": 443,
  25.             "users": [
  26.               {
  27.                 "id": "b831381d-6324-4d53-ad4f-8cda48b30811",
  28.                 "alterId": 0
  29.               }
  30.             ]
  31.           }
  32.         ]
  33.       },
  34.       "streamSettings": {
  35.         "network": "ws",
  36.         "security": "tls",
  37.         "wsSettings": {
  38.           "path": "/ray"
  39.         }
  40.       }
  41.     }
  42.   ]
  43. }
复制代码

V2Ray客户端上的id参数必须与V2Ray服务器上的id参数匹配。这就像一个预先共享的密码。 alterId必须设置为0,这样V2Ray客户端才会启用AEAD加密算法。
保存并关闭文件。然后重新启动 V2Ray 以使更改生效。
sudo systemctl restart v2ray
检查监听端口。
sudo ss -lnpt | grep v2ray
示例输出:
LISTEN 0      4096       127.0.0.1:1090       0.0.0.0:*    users("v2ray",pid=495211,fd=3))
V2Ray 客户端侦听端口 1090(用于 Web 浏览器),并将请求重定向到侦听端口 10086 的 V2Ray 服务器。
Windows
Windows 用户可以从其 Github 发布页面下载 V2Ray 客户端。点击显示所有资源链接,然后您可以找到 V2Ray Windows ZIP 文件。
解压缩文件。您将找到一个 config.json 文件。使用记事本或您喜欢的文本编辑器打开此文件。删除该文件中的所有内容,然后添加以下行。
  1. {
  2.   "inbounds": [
  3.     {
  4.       "port": 1090,
  5.       "listen": "127.0.0.1",
  6.       "protocol": "socks",
  7.       "sniffing": {
  8.         "enabled": true,
  9.         "destOverride": ["http", "tls"]
  10.       },
  11.       "settings": {
  12.         "auth": "noauth",
  13.         "udp": false
  14.       }
  15.     }
  16.   ],
  17.   "outbounds": [
  18.     {
  19.       "protocol": "vmess",
  20.       "settings": {
  21.         "vnext": [
  22.           {
  23.             "address": "example.com",
  24.             "port": 443,
  25.             "users": [
  26.               {
  27.                 "id": "b831381d-6324-4d53-ad4f-8cda48b30811",
  28.                 "alterId": 0
  29.               }
  30.             ]
  31.           }
  32.         ]
  33.       },
  34.       "streamSettings": {
  35.         "network": "ws",
  36.         "security": "tls",
  37.         "wsSettings": {
  38.           "path": "/ray"
  39.         }
  40.       }
  41.     }
  42.   ]
  43. }
复制代码

将 server_ip_address 替换为您的实际服务器 IP 地址。 V2Ray客户端上的id参数必须与V2Ray服务器上的id参数匹配。这就像一个预先共享的密码。
保存并关闭文件。然后打开 Window Powershell 并运行以下命令来启动 v2ray,假设 v2ray-windows-64 文件夹已提取到您的桌面文件夹中。
. \\Desktop\v2ray-windows-64\v2ray run第 8 步:配置 Web 浏览器以使用 V2Ray 代理
为了让你的程序使用V2Ray代理,程序必须支持SOCKS代理。 Firefox、Google Chrome 和 Dropbox 等程序允许用户使用代理。我将向您展示如何配置 Firefox 和 Google Chrome。
火狐浏览器
在 Firefox 中,转到编辑 > 首选项 > 常规(或工具 -> 选项 ) -> 常规)。然后向下滚动到底部,点击网络设置中的设置。
在连接设置窗口中,选择手动代理配置。然后选择SOCKS v5,因为V2Ray是Socks5代理。在 SOCKS 主机字段中输入 127.0.0.1,在端口字段中输入 1090。确保启用使用 SOCKS v5 时的代理 DNS。单击确定应用这些修改。
谷歌浏览器
我建议安装 Proxy SwitchyOmega 扩展来管理 Google Chrome 的代理。
在 Google Chrome 中安装扩展程序后,请按如下方式配置代理服务器:
  • 选择 SOCKS5 协议。
  • 将127.0.0.1设置为服务器地址。
  • 将 1090 设置为端口号。
应用更改。然后单击右上角的扩展图标,然后单击Proxy SwithyOmega。
默认情况下,SwithyOmega 使用操作系统的代理设置。我们需要将其从系统代理更改为代理。
现在你的代理应该可以工作了。

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|小黑屋|九尾社区 ( 皖ICP备2021001835号-3 )

GMT+8, 2025-4-4 02:27 , Processed in 1.569034 second(s), 20 queries .

Powered by Discuz! X3.5

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表