Linux命令行如何搭建VPN?

在Linux命令行环境中配置和使用VPN是许多高级用户和系统管理员的需求,尤其适用于服务器管理或自动化脚本场景,Linux支持多种VPN协议,如PPTP、L2TP/IPsec、OpenVPN和WireGuard等,每种协议的配置方式略有不同,以下将详细介绍基于OpenVPN和WireGuard两种常见VPN的命令行配置方法,并辅以实用示例和注意事项。

linux 命令行 vpn
(图片来源网络,侵删)

OpenVPN命令行配置

OpenVPN是一种成熟的开源VPN协议,支持加密和认证,适用于多种操作系统,在Linux中,通常使用openvpn客户端工具进行连接。

安装OpenVPN客户端

以Ubuntu/Debian系统为例,可通过以下命令安装:

sudo apt update && sudo apt install openvpn

对于CentOS/RHEL系统,使用:

sudo yum install epel-release && sudo yum install openvpn

配置VPN连接

假设已从VPN服务提供商获取了配置文件(如client.ovpn),将其放置在/etc/openvpn/目录下,连接命令为:

linux 命令行 vpn
(图片来源网络,侵删)
sudo openvpn --config /etc/openvpn/client.ovpn

若需要后台运行并记录日志,可添加--daemon--log参数:

sudo openvpn --config /etc/openvpn/client.ovpn --daemon --log /var/log/openvpn.log

验证连接状态

通过以下命令检查VPN是否成功建立:

ip a show tun0  # 查看虚拟网卡
curl ifconfig.me  # 获取出口IP,确认是否为VPN服务器IP

WireGuard命令行配置

WireGuard是一种新型、高性能的VPN协议,配置更简洁,适合现代Linux内核(5.6及以上版本)。

安装WireGuard

Ubuntu/Debian:

linux 命令行 vpn
(图片来源网络,侵删)
sudo apt install wireguard

CentOS/RHEL:

sudo yum install wireguard-tools

生成密钥对

在客户端生成私钥和公钥:

wg genkey | tee privatekey | wg pubkey > publickey

privatekey保存到/etc/wireguard/privatekeypublickey提交给VPN服务器管理员。

创建配置文件

/etc/wireguard/目录下创建wg0.conf

[Interface]
Address = 10.0.0.2/24
PrivateKey = <客户端私钥内容>
DNS = 8.8.8.8
[Peer]
PublicKey = <服务器公钥内容>
Endpoint = vpn.example.com:51820
AllowedIPs = 0.0.0.0/0  # 路由所有流量通过VPN

启动并管理连接

启用WireGuard接口:

sudo wg-quick up wg0

设置为开机自启:

sudo wg-quick enable wg0

查看连接状态:

sudo wg show

断开连接:

sudo wg-quick down wg0

常见问题与注意事项

  1. 路由配置:若需要仅代理特定流量(如访问公司内网),可在AllowedIPs中指定IP段,例如168.1.0/24,避免所有流量通过VPN。
  2. 防火墙规则:确保防火墙允许VPN端口(如OpenVPN默认1194,WireGuard默认51820),
    sudo ufw allow 1194/udp  # OpenVPN
    sudo ufw allow 51820/udp  # WireGuard
  3. 多用户/多设备:WireGuard可通过添加多个[Peer]段支持多设备,每个设备需唯一公钥。

相关问答FAQs

Q1: 如何在Linux命令行中断开VPN连接?
A1: 对于OpenVPN,若以daemon模式运行,可通过sudo pkill openvpn终止进程;若前台运行,直接按Ctrl+C,对于WireGuard,使用sudo wg-quick down wg0(假设接口名为wg0)。

Q2: VPN连接后无法访问互联网,如何排查?
A2: 首先检查VPN接口状态(如ip a show tun0sudo wg show),确认IP分配和路由表是否正确,检查防火墙规则是否拦截了流量,可临时关闭防火墙测试(sudo ufw disable),验证DNS配置是否正确,尝试手动指定DNS服务器(如8.8.8),若问题依旧,可能是VPN服务器端配置问题,需联系服务提供商。

文章来源网络,作者:运维,如若转载,请注明出处:https://shuyeidc.com/wp/461809.html<

(0)
运维的头像运维
上一篇2025-11-12 05:18
下一篇 2025-11-12 05:22

相关推荐

  • 企业网站如何从零开始建立?

    建立一个企业网站是一个系统性工程,涉及规划、设计、开发、内容填充和后期维护等多个环节,首先需要明确网站的核心目标,是用于品牌展示、产品销售、客户服务还是信息传递,这将直接影响后续所有决策,以销售为目标的企业需要重点考虑电商功能,而品牌展示型网站则更注重视觉设计和用户体验,需要梳理目标用户群体,分析他们的需求和浏……

    2025-11-16
    0
  • 域名到手,网站咋从零开始建?

    拥有域名后自己制作网站是一个将线上创意变为现实的过程,需要结合域名解析、网站搭建、内容填充和上线发布等多个步骤,整个过程可分为“域名解析”“网站制作”“内容上传”和“网站发布”四个核心阶段,每个阶段需根据技术能力选择适合的工具和方法,以下为详细操作指南,域名解析:连接域名与网站服务器的桥梁域名注册成功后,需将其……

    2025-11-16
    0
  • iPhone6如何关闭网络?

    在iPhone 6上关闭网络功能可以通过多种方式实现,具体操作取决于用户的需求,例如完全关闭蜂窝数据、禁用特定网络类型、或暂时断开Wi-Fi连接,以下是详细的操作步骤和场景说明,帮助用户根据实际情况选择合适的方法,通过设置菜单关闭蜂窝数据网络蜂窝数据(移动数据)是iPhone 6使用移动网络上网的主要功能,关闭……

    2025-11-06
    0
  • 域名如何搭建云电脑?

    使用域名搭建云电脑是一个涉及域名解析、服务器配置、远程协议部署及安全防护的系统工程,核心是通过将本地或云服务器的计算资源转化为可远程访问的“云电脑”,并用域名作为统一入口,以下是具体实施步骤和注意事项,准备工作:域名与服务器资源首先需要注册一个域名(如通过阿里云、腾讯云等服务商),并确保已完成实名认证,准备一台……

    2025-11-05
    0
  • 如何从零开始搭建并运营收费网站?

    建立自己的收费网站需要系统性的规划、技术实现和运营策略,以下从定位、技术选型、功能设计、支付搭建、推广运营等环节详细说明具体步骤和注意事项,明确网站定位与目标用户在启动项目前,需先确定网站的核心价值,收费网站的常见类型包括知识付费(课程、专栏)、会员制社区(行业社群、工具服务)、数字产品下载(模板、素材)或高端……

    2025-11-02
    0

发表回复

您的邮箱地址不会被公开。必填项已用 * 标注