CentOS 7 搭建 VPN 全攻略

目录

  1. VPN 简介
  2. 为什么需要 VPN
  3. CentOS 7 搭建 VPN
  4. 连接 VPN 客户端
  5. FAQ

1. VPN 简介

*VPN(Virtual Private Network)*是一种建立在公共网络基础之上的私人网络技术。它通过加密和身份验证机制,可以为用户提供一个安全的网络连接通道,从而保护用户的隐私和数据安全。

2. 为什么需要 VPN

使用 VPN 的主要目的有:

  • 保护隐私和数据安全:VPN 可以加密你的网络流量,防止黑客窃取敏感信息。
  • 绕过地理限制:VPN 可以让你伪装成其他地区的用户,访问被地域限制的网站和内容。
  • 提高网络访问速度:VPN 可以绕过网络运营商的限速和节流,获得更稳定、更快的网络连接。
  • 增强网络安全性:VPN 可以保护你免受公共 WiFi 网络的攻击,防止你的信息被窃取。

3. CentOS 7 搭建 VPN

本文将以 OpenVPN 为例,介绍如何在 CentOS 7 系统上搭建一个 VPN 服务。

3.1 安装 OpenVPN

  1. 更新系统软件包:

    sudo yum update -y

  2. 安装 OpenVPN 和必要的依赖包:

    sudo yum install -y openvpn easy-rsa

3.2 生成 VPN 证书

  1. 进入 easy-rsa 目录:

    cd /usr/share/easy-rsa/

  2. 初始化 PKI (Public Key Infrastructure):

    ./easyrsa init-pki

  3. 生成 CA 证书:

    ./easyrsa build-ca nopass

  4. 生成服务器证书和密钥:

    ./easyrsa build-server-full server nopass

  5. 生成客户端证书和密钥:

    ./easyrsa build-client-full client1 nopass

3.3 配置 OpenVPN 服务器

  1. 复制服务器证书和密钥到 OpenVPN 配置目录:

    sudo cp /usr/share/easy-rsa/pki/ca.crt /etc/openvpn/server/ sudo cp /usr/share/easy-rsa/pki/issued/server.crt /etc/openvpn/server/ sudo cp /usr/share/easy-rsa/pki/private/server.key /etc/openvpn/server/

  2. 创建 OpenVPN 服务器配置文件:

    sudo vi /etc/openvpn/server/server.conf

    在配置文件中添加以下内容:

    port 1194 proto udp dev tun ca ca.crt cert server.crt key server.key dh none server 10.8.0.0 255.255.255.0 push “redirect-gateway def1 bypass-dhcp” push “dhcp-option DNS 8.8.8.8” push “dhcp-option DNS 8.8.4.4” keepalive 10 120 comp-lzo user openvpn group openvpn persist-key persist-tun status /var/log/openvpn-status.log log-append /var/log/openvpn.log verb 3

3.4 防火墙配置

  1. 允许 OpenVPN 端口通过防火墙:

    sudo firewall-cmd –permanent –add-port=1194/udp sudo firewall-cmd –reload

3.5 启动 OpenVPN 服务

  1. 启动 OpenVPN 服务:

    sudo systemctl start openvpn-server@server sudo systemctl enable openvpn-server@server

  2. 检查服务状态:

    sudo systemctl status openvpn-server@server

4. 连接 VPN 客户端

  1. 将客户端证书和密钥复制到客户端设备:

    scp /usr/share/easy-rsa/pki/ca.crt /usr/share/easy-rsa/pki/issued/client1.crt /usr/share/easy-rsa/pki/private/client1.key user@client:/etc/openvpn/client/

  2. 在客户端设备上安装 OpenVPN 客户端软件。

  3. 创建客户端配置文件 /etc/openvpn/client/client.ovpn,并添加以下内容:

    client dev tun proto udp remote your_server_ip 1194 resolv-retry infinite nobind persist-key persist-tun ca ca.crt cert client1.crt key client1.key comp-lzo verb 3

  4. 启动 OpenVPN 客户端连接 VPN 服务器:

    sudo openvpn –config /etc/openvpn/client/client.ovpn

5. FAQ

Q: 如何查看 OpenVPN 服务器的日志?

A: 可以使用以下命令查看 OpenVPN 服务器的日志:

sudo journalctl -u openvpn-server@server

Q: 如何添加更多的 VPN 客户端?

A: 要添加更多的 VPN 客户端,可以重复 “3.2 生成 VPN 证书” 中的步骤 4 和 5,分别生成新的客户端证书和密钥。然后将这些文件复制到客户端设备,并在客户端配置文件中更新相应的证书和密钥。

Q: 如何更改 VPN 服务器的 IP 地址或端口?

A: 要更改 VPN 服务器的 IP 地址或端口,需要修改 “/etc/openvpn/server/server.conf” 文件中的相应配置项,然后重启 OpenVPN 服务。同时,也需要更新客户端配置文件中的 “remote” 选项。

Q: 如何设置 OpenVPN 服务器的 DNS 选项?

A: 可以在 “/etc/openvpn/server/server.conf” 文件中添加以下配置项来设置 DNS 选项:

push “dhcp-option DNS 8.8.8.8″push “dhcp-option DNS 8.8.4.4”

这将会在客户端连接时,将 Google 的公共 DNS 服务器 (8.8.8.8 和 8.8.4.4) 推送给客户端。

正文完