Ubuntu 搭建 VPN 服务器全程指南

目录

  1. 前言
  2. 软件准备
  3. 服务器搭建步骤
    1. 安装OpenVPN
    2. 配置OpenVPN
    3. 生成证书和密钥
    4. 配置OpenVPN服务
    5. 防火墙设置
  4. 客户端连接配置
  5. 常见问题FAQ

前言

Ubuntu 作为开源操作系统中的佼佼者,凭借其稳定性和安全性广受好评。在日常生活和工作中,使用VPN服务可以有效保护个人隐私,突破网络限制,访问被屏蔽的网站。本文将详细介绍如何在Ubuntu系统上搭建自己的VPN服务器,供读者参考。

软件准备

搭建Ubuntu VPN服务器需要以下软件:

  • OpenVPN: 开源的VPN服务器软件
  • Easy-RSA: 用于生成SSL/TLS证书和密钥的工具

服务器搭建步骤

安装OpenVPN

  1. 更新软件包索引:

sudo apt-get update

  1. 安装OpenVPN和Easy-RSA:

sudo apt-get install openvpn easy-rsa

配置OpenVPN

  1. 创建OpenVPN配置目录:

sudo mkdir /etc/openvpn/easy-rsa sudo cp -r /usr/share/easy-rsa/* /etc/openvpn/easy-rsa/

  1. 进入easy-rsa目录并初始化PKI:

cd /etc/openvpn/easy-rsa ./easyrsa init-pki

生成证书和密钥

  1. 生成CA证书:

./easyrsa build-ca nopass

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

./easyrsa build-server-full server nopass

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

./easyrsa build-client-full client1 nopass

配置OpenVPN服务

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

sudo cp pki/ca.crt /etc/openvpn/ sudo cp pki/issued/server.crt /etc/openvpn/ sudo cp pki/private/server.key /etc/openvpn/

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

sudo nano /etc/openvpn/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 nobody group nogroup persist-key persist-tun status /var/log/openvpn/openvpn-status.log log-append /var/log/openvpn/openvpn.log verb 3

防火墙设置

  1. 开放OpenVPN端口:

sudo ufw allow 1194/udp

  1. 启用防火墙:

sudo ufw enable

客户端连接配置

  1. 将以下文件复制到客户端设备:
    • ca.crt
    • client1.crt
    • client1.key
  2. 在客户端设备上安装OpenVPN客户端软件并导入证书文件。
  3. 连接到VPN服务器,即可享受安全的网络访问。

常见问题FAQ

Q1: 如何查看OpenVPN服务的运行状态? A1: 可以使用以下命令查看OpenVPN服务的运行状态:

sudo systemctl status openvpn@server

Q2: 如何查看OpenVPN服务的日志信息? A2: OpenVPN服务的日志信息保存在/var/log/openvpn/openvpn.log文件中,可以使用以下命令查看:

sudo tail -n 50 /var/log/openvpn/openvpn.log

Q3: 如何添加新的客户端证书和密钥? A3: 可以使用Easy-RSA工具再次生成客户端证书和密钥:

cd /etc/openvpn/easy-rsa ./easyrsa build-client-full client2 nopass

然后将client2.crtclient2.key文件复制到客户端设备上即可。

Q4: 如何修改OpenVPN服务的监听端口? A4: 可以在/etc/openvpn/server.conf配置文件中修改port参数的值,然后重启OpenVPN服务即可生效。

sudo systemctl restart openvpn@server

Q5: 如何开启OpenVPN服务的日志记录? A5: 可以在/etc/openvpn/server.conf配置文件中取消注释以下两行:

status /var/log/openvpn/openvpn-status.log log-append /var/log/openvpn/openvpn.log

然后重启OpenVPN服务即可。

sudo systemctl restart openvpn@server

正文完