“Chinese people are particularly concerned about online privacy because they never use their real IP
addresses.”

——foreign netizens

由于一些特殊原因,我们往往需要借助一些技术、软件才能访问到外国的一些网站。正因如此,一些外国的网友们难免带上了调侃的语气,与我们沟通交流。对此,我们也很无奈。

互联网的上的一些技术迭代得很快,作为一名IT行业的从业者,为了防止自身落伍于互联网浪潮中,往往需要自身不断学习。对此,我们也就难免与一些外国的技术者、网站或软件打交道了。

所以我们也就需要一些技术,去辅助我们自身学习、成长。

VPN是什么

VPN(Virtual Private Network,虚拟专用网络) 是一种通过公共网络(如互联网)建立安全、加密连接的技术,用于在远程设备之间创建虚拟的专用网络通道,实现安全的数据传输和资源访问。

核心功能与原理

  1. 加密传输
    • 通过加密协议(如 OpenVPN、IPsec、WireGuard 等)对数据进行编码,防止数据在传输过程中被窃取、篡改或监控。
    • 例如:用户通过 VPN 访问公司内部系统时,所有数据会被加密后再通过互联网传输,到达目标服务器后解密,确保信息安全。
  2. 隐藏真实 IP 地址
    • 用户的网络流量会先经过 VPN 服务器中转,对外显示的 IP 地址为 VPN 服务器的地址,从而隐藏用户的真实地理位置和网络身份。
    • 用途:保护隐私(如防止网站追踪用户行为)、绕过地域限制(如访问其他国家 / 地区的网络内容)。
  3. 访问受限资源
    • 突破网络防火墙或地域封锁,访问本地无法直接访问的网站、服务或内部网络资源。
    • 例如:企业员工在外地通过 VPN 连接公司内网,访问内部数据库或办公系统。

主要应用场景

  1. 企业办公
    • 远程员工通过 VPN 安全接入公司内部网络,访问共享文件、ERP 系统等,如同直接连接到公司局域网。
  2. 个人隐私保护
    • 浏览网页、使用公共 Wi-Fi 时加密数据,防止黑客窃取账号密码、信用卡信息等。
    • 绕过网络审查,访问被本地屏蔽的内容(需注意:部分国家 / 地区使用 VPN 可能涉及法律风险)。
  3. 跨国业务与内容访问
    • 访问国外流媒体平台(如 Netflix 不同地区片库)、社交媒体或新闻网站。
    • 企业全球化团队通过 VPN 协作,确保跨国数据传输安全。

为了能够访问到外网,我们也就需要借助VPN的一个功能,即突破地域封锁限制。在这里,我采用v2ray这款软件。

v2ray

V2Ray 的优势在于 协议多样性、安全性高、抗封锁能力强、灵活配置和强大扩展性

协议灵活、安全性强

多协议支持:

支持多种传输协议(VMess、VLess、Shadowsocks、Socks、HTTP、Trojan 等)。 可以根据需求选择最合适的协议,兼容性强。

更高的安全性:

VMess/VLess 协议支持强加密和身份验证机制。可以防止中间人攻击、流量识别等。

混淆和抗封锁能力强

多种传输层支持:

支持 WebSocket(可伪装成网页访问)、HTTP/2、gRPC、QUIC、TLS 等,提升绕过封锁的能力。 可通过 Nginx 等实现与 HTTPS 网站流量混淆,极大增强伪装性。

动态端口、自定义流量包格式:

可以设置动态端口或随机应答时间,避免被探测。 自定义流量特征,进一步提升隐蔽性。

功能模块化、配置灵活

Inbound / Outbound 架构:

支持多入站和多出站配置,可以灵活地路由不同流量。

可自定义策略,比如某些域名走代理、某些直连等。

丰富的路由规则:

支持基于域名、IP、端口、GeoIP、流量大小等多种维度的路由策略。

精细控制流量走向,满足复杂网络需求。

v2ray的服务器部署

系统准备和安装基础工具

我们需要准备一台能够访问到外网的服务器。在这里我选用阿里云的云服务服务器,操作系统为CentOS7。

yum update -y //使用 yum 包管理器更新系统所有已安装的软件包到最新版本。-y为自动确认,不需要后续手动确认。

yum install -y wget curl unzip //安装三个工具,分别是wget、curl、unzip。

wget:用于从网络下载文件。

curl:用于网络请求,常用来获取网页或数据。

unzip:用于解压 .zip 文件。

下载并解压v2ray

cd /tmp //进入tmp 目录,是Linux操作系统中临时存放文件的目录,方便下载和解压。

wget https://github.com/v2fly/v2ray-core/releases/download/v5.12.1/v2ray-linux-64.zip //使用 wget 从 GitHub 下载指定版本的 V2Ray Linux 64 位二进制压缩包。

unzip v2ray-linux-64.zip -d v2ray //将v2ray解压到当前目录下

复制v2ray文件到系统目录

mkdir -p /usr/local/v2ray //创建存放v2ray的一个目录

cp -r /tmp/v2ray/* /usr/loacal/v2ray //递归复制tmp目录下的v2ray文件到到usr/local/v2ray

chmod +x /usr/local/v2ray/v2ray /usr/local/v2ray/v2ctl //给两个文件v2ray和v2ctl赋予+X权限,使它们可以运行起来。

创建配置文件目录

mkdir -p /etc/v2ray //创建/etc/v2ray目录用于存放v2ray的配置文件

vim /etc/v2ray/config.json //使用vim 文本编译器,创建config.json配置文件。

生成 UUID

cat /proc/sys/kernel/random/uuid //从内核随机生成一个标准 UUID

之后替换config.json文件中的id中的一行命令。

检查配置语法

/usr/local/v2ray/v2ray -test -config /etc/v2ray/config.json //若出现ok字样,证明没错。

创建 Systemd 启动服务

vim /etc/systemd/system/v2ray.service //新建文件

启动服务并设置开机自启动

systemctl daemon-reexec
systemctl daemon-reload
systemctl enable v2ray
systemctl start v2ray

防火墙开放端口

firewall-cmd –add-port=31535/tcp –permanent //开放端口号与配置文件config.json中的port端口号一致
firewall-cmd –reload

注意:若是选择阿里云服务器,还需要额外开放安全组的端口号,比如31535

v2ray客户端部署

填写一下配置信息:

地址 (Address) = 你的服务器地址

端口 (Port) = config.json的端口号

用户ID (User ID / UUID) = 随机生成的uuid

额外ID (Alter Id) = 0

传输协议 (Network) = kcp

伪装类型 (header type) = dtls

静思学

一个专注IT技术学习的网站

最后修改日期: 2025年5月16日

作者

留言

撰写回覆或留言

发布留言必须填写的电子邮件地址不会公开。