Linux系统下OpenVPN的安装与配置指南
linux openvpn安装配置

首页 2024-12-11 11:05:22



Linux系统下OpenVPN的安装与配置指南 在当今的信息化时代,数据的安全传输已成为企业和个人用户不可忽视的重要环节

    VPN(虚拟专用网络)技术应运而生,为数据传输提供了一个安全可靠的通道

    OpenVPN作为Linux系统下开源VPN的先锋,不仅性能优越,还拥有友好的用户图形界面(GUI),成为众多用户的首选

    本文将详细介绍如何在Linux系统上安装和配置OpenVPN,以实现安全的数据传输和远程访问

     一、OpenVPN简介及应用场景 VPN,即虚拟专用通道,通过公共网络建立一个加密的隧道,确保企业之间或公司个人与公司之间数据的安全传输

    OpenVPN是一个基于OpenSSL库的开源VPN解决方案,提供了强大的加密和身份验证功能

    它使用TCP或UDP协议在公共网络上建立加密通道,确保数据的安全传输

    OpenVPN支持多种操作系统和平台,包括Linux、Windows、macOS等,具有广泛的应用场景

     1.个人出差访问公司内网:当员工出差在外,需要访问公司只有内网的服务器时,可以通过OpenVPN建立安全连接,实现远程访问

     2.公司不同地区间建立服务通道:对于拥有多个地区分支机构的公司,可以通过OpenVPN建立安全的服务通道,实现数据的安全传输和共享

     二、OpenVPN服务器搭建部署 在开始搭建OpenVPN服务之前,我们需要准备一台运行Linux系统的服务器

    确保服务器具有足够的硬件资源(如CPU、内存和带宽),并安装好必要的软件(如OpenSSL库)

    此外,为了安全起见,我们还需要对服务器进行必要的安全设置,如防火墙配置、SSH访问限制等

     1. 环境准备 首先,更新CentOS 7的RPM包: 【root@localhost~】# yum update -y 然后,安装EPEL仓库和vim、tree等工具: 【root@localhost~】# yum install epel-release vim tree -y 2. 服务端部署搭建 2.1 安装配置证书软件 1. 安装证书软件: 【root@localhost~】# yum install easy-rsa -y 2. 创建并进入目录: 【root@localhost~】# mkdir /opt/easy-rsa 【root@localhost easy-rsa】# cd /opt/easy-rsa 3. 查看列表: 【root@localhost easy-rsa】# rpm -ql easy-rsa 4. 复制文件: 【root@localhost easy-rsa】# cp -a /usr/share/easy-rsa/3.0.8/ . 【root@localhost easy-rsa】# cp -a /usr/share/doc/easy-rsa-3.0.8/vars.example ./vars 5. 配置证书软件: 编辑`vars`文件,根据实际需求修改证书信息

    例如: set_var EASYRSA_DN cn_only set_var EASYRSA_REQ_COUNTRY CN set_var EASYRSA_REQ_PROVINCE shanxi set_var EASYRSA_REQ_CITY xian set_var EASYRSA_REQ_ORG oupeng set_var EASYRSA_REQ_EMAIL 888888@qq.com set_var EASYRSA_NS_SUPPORT yes 2.2 创建证书 1. 初始化PKI目录: 【root@localhost easy-rsa】# ./easyrsa init-pki 2. 创建根证书: 【root@localhost easy-rsa】# ./easyrsa build-ca 在创建根证书时,会提示设置密码,用于CA对之后生成的server和client证书签名时使用

    其他提示内容直接回车即可

     3. 创建server端证书和私钥文件: 【root@localhost easy-rsa】# ./easyrsa gen-req server nopass `nopass`表示不加密私钥文件,提示内容直接回车即可

     4. 给server端证书签名: 【root@localhost easy-rsa】# ./easyrsa sign-server server 提示内容需要输入`yes`和创建CA根证书时的密码

     5. 创建Diffie-Hellman文件: 【root@localhost easy-rsa】# ./easyrsa gen-dh 6. 创建client端的证书和私钥文件: 【root@localhost easy-rsa】# ./easyrsa gen-req client nopass `nopass`表示不加密私钥文件,提示内容直接回车即可

     7. 给client端证书签名: 【root@localhost easy-rsa】# ./easyrsa sign-client client 提示内容需要输入`yes`和创建CA根证书时的密码

     最后,检查是否有CA根证书、客户端和服务端证书、客户端和服务端私钥: 【root@localhost easy-rsa】# tree 2.3 安装OpenVPN并写入服务端配置文件 安装OpenVPN: 【root@localhost~】# yum install openvpn -y 配置OpenVPN服务端

    默认采用的是UDP协议1194端口,但推荐使用TCP协议1194端口,会比较稳定

    配置完成后,需要点击应用修改更新VPC才能生效

    同时,需要配置安全组的策略,在VPC详情界面找到安全组,添加下行TCP 1194端口协议,并更新安全组

     下载OpenVPN客户端证书配置文件,可以存放在`/etc/openvpn`目录下

    解压文件到当前目录,并将conf文件中的`user`和`group`字段设置为本地用户和组

    例如,设置为`root/root`,其余参数均保持不变

     编辑OpenVPN服务端配置文件(如`server.conf`),添加以下内容: port 1194 proto tcp dev tun ca ca.crt cert server.crt key server.key tls-auth ta.key 0 server 10.8.0.0 255.255.255.0 ifconfig-pool-persist ipp.txt 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 cipher AES-256-CBC user nobody group nogroup persist-key persist-tun status openvpn-status.log verb 3 explicit-exit-notify 1 这个配置文件指定了OpenVPN服务的端口号、协议类型、证书和密钥文件等

    请根据你的需求进行适当修改

     2.4 启动并检查端口 启动OpenVPN服务: 【root@localhost~】# sudo openvpn --config /etc/openvpn/server.conf 如果一切顺利,你将看到OpenVPN服务的日志输出,表明服务已成功启动

    可以使用以下命令查看OpenVPN的连接状态: 【root@localhost~】# systemctl status openvpn@server 如果看到类似“Initialization Sequence Completed”的提示信息,表示连接已经成功建立

     三、OpenVPN客户端配置 客户端的配置过程因操作系统而异,但大致步骤如下: 1.安装OpenVPN客户端软件: 在客户端设备上,使用包管理器安装OpenVPN客户端软件

    例如,在Windows系统上,可以从OpenVPN官方网站下载安装包进行安装;在Linux系统上,可以使用包管理器安装,如Ubuntu系统执行以下命令: sudo apt-get update sudo

MySQL连接就这么简单!本地远程、编程语言连接方法一网打尽
还在为MySQL日期计算头疼?这份加一天操作指南能解决90%问题
MySQL日志到底在哪里?Linux/Windows/macOS全平台查找方法在此
MySQL数据库管理工具全景评测:从Workbench到DBeaver的技术选型指南
MySQL密码忘了怎么办?这份重置指南能救急,Windows/Linux/Mac都适用
你的MySQL为什么经常卡死?可能是锁表在作怪!快速排查方法在此
MySQL单表卡爆怎么办?从策略到实战,一文掌握「分表」救命技巧
清空MySQL数据表千万别用错!DELETE和TRUNCATE这个区别可能导致重大事故
你的MySQL中文排序一团糟?记住这几点,轻松实现准确拼音排序!
别再混淆Hive和MySQL了!读懂它们的天壤之别,才算摸到大数据的门道