Centos7.7 配置OpenVPN (二)

简介:

OpenVPN是一个开源的应用程序,它允许您通过公共互联网创建一个安全的专用网络。OpenVPN实现一个虚拟专用网(VPN)来创建一个安全连接。
OpenVPN是一个开源的应用程序,它允许您通过公共互联网创建一个安全的专用网络。OpenVPN实现一个虚拟专用网(VPN)来创建一个安全连接。OpenVPN使用OpenSSL库提供加密,它提供了几种身份验证机制,如基于证书的、预共享密钥和用户名/密码身份验证。

在本教程中,我们将向您展示如何在CentOS 7.7服务器上逐步安装和配置OpenVPN。实现基于证书的OpenVPN认证。

修改OpenVPN配置文件
复制模板到主配置文件夹里面

[root@localhost server]# cp -p /usr/share/doc/openvpn-2.4.8/sample/sample-config-files/server.conf /etc/openvpn/server/

修改后的内容如下

[root@localhost server]# cat server.conf |grep '^1'
port 1194
proto udp
dev tun
ca ca.crt
cert server1.crt
key server1.key # This file should be kept secret
dh dh.pem
crl-verify crl.pem
server 10.8.0.0 255.255.255.0
ifconfig-pool-persist ipp.txt
push "redirect-gateway def1 bypass-dhcp"
push "dhcp-option DNS 114.114.114.114"
duplicate-cn
keepalive 10 120
tls-auth ta.key 0 # This file is secret
cipher AES-256-CBC
compress lz4-v2
push "compress lz4-v2"
max-clients 100
user nobody
group nobody
persist-key
persist-tun
status openvpn-status.log
log-append openvpn.log
verb 3
explicit-exit-notify 1
Centos7.7 配置OpenVPN (二)Centos7.7 配置OpenVPN (二)

开启转发
修改内核模块

[root@localhost server]# echo 'net.ipv4.ip_forward = 1' >> /etc/sysctl.conf
[root@localhost server]# sysctl -p
net.ipv4.ip_forward = 1
修改防火墙

[root@localhost server]# firewall-cmd --permanent --add-service=openvpn
success
[root@localhost server]# firewall-cmd --permanent --add-interface=tun0
success
[root@localhost server]# firewall-cmd --permanent --add-masquerade
success
[root@localhost server]# firewall-cmd --permanent --direct --passthrough ipv4 -t nat -A POSTROUTING -s 10.8.0.0/24 -o ens33 -j MASQUERADE
success
[root@localhost server]# firewall-cmd --reload
success
启动服务并开机启动
[root@localhost server]# systemctl enable openvpn-server@server
[root@localhost server]# systemctl start openvpn-server@server
检查一下服务是否启动

[root@localhost server]# netstat -tlunp
[root@localhost server]# systemctl status openvpn-server@server
Centos7.7 配置OpenVPN (二)Centos7.7 配置OpenVPN (二)

OpenVPN 客户端安装
在openvpn服务器端操作,复制一个client.conf模板到/etc/openvpn/client文件夹下面。然后编辑该文件/etc/openvpn/client/client.conf

[root@localhost openvpn]# cp -p /usr/share/doc/openvpn-2.4.8/sample/sample-config-files/client.conf /etc/openvpn/client/

修改后的内容如下

[root@localhost client]# cat client.conf |grep '^1'
client
dev tun
proto udp
remote 192.168.43.138 1194
resolv-retry infinite
nobind
persist-key
persist-tun
ca ca.crt
cert client1.crt
key client1.key
remote-cert-tls server
tls-auth ta.key 1
cipher AES-256-CBC
verb 3
Centos7.7 配置OpenVPN (二)Centos7.7 配置OpenVPN (二)

更改client.conf文件名为client.ovpn,然后把/etc/openvpn/client文件夹打包压缩:

更改client.conf文件名为client.ovpn

[root@localhost openvpn]# mv client/client.conf client/client.ovpn

安装lrzsz工具,通过sz命令把 client.tar.gz传到客户机上面

[root@localhost openvpn]# yum -y install lrzsz

打包client文件夹

[root@localhost openvpn]# tar -zcvf client.tar.gz client/
Centos7.7 配置OpenVPN (二)Centos7.7 配置OpenVPN (二)

使用sz命令,把client.tar.gz传到客户机上面

[root@localhost openvpn]# sz client.tar.gz
Centos7.7 配置OpenVPN (二)Centos7.7 配置OpenVPN (二)

在windows 10客户机连接测试
客户机安装openvpn-install-2.4.8-I602-Win10该软件包,安装完成之后解压刚才的client.tar.gz压缩包,把里面的文件复制到C:\Program Files\OpenVPN\config

Centos7.7 配置OpenVPN (二)Centos7.7 配置OpenVPN (二)

需要把client.conf的名字改成client.ovpn,然后点击桌面上的OpenVPN GUI运行

Centos7.7 配置OpenVPN (二)Centos7.7 配置OpenVPN (二)

电脑右下角有一个小电脑

Centos7.7 配置OpenVPN (二)Centos7.7 配置OpenVPN (二)

右键点击连接,连接成功之后小电脑变成绿色。

Centos7.7 配置OpenVPN (二)Centos7.7 配置OpenVPN (二)

注意事项
做实验时在测试环境做的。如果在真实环境操作,请在出口防火墙添加端口映射,开放openvpn的端口1194 tcp和udp协议的。


  1. #|^;
相关文章
|
2月前
|
Linux 网络安全 Apache
CentOS 7.2配置Apache服务httpd(上)
CentOS 7.2配置Apache服务httpd(上)
302 1
|
2天前
|
网络虚拟化
配置BGP/MPLS IP VPN示例
本文介绍了通过配置MPLS VPN实现分部与总部之间的通信需求。具体要求为分部1和分部2只能与总部通信,而分部之间不能通信。配置思路包括使用BGP协议传递路由,并将各分部分别划分到不同的VPN实例中(VPN1、VPN2、VPN3),通过设置RD和Target属性确保路由隔离。操作步骤涵盖设备IP地址配置、MPLS域内互通、PE上的VPN实例配置、接口绑定、MP-IBGP配置、CE与PE间的路由交换及MPLS LDP功能配置。最终验证显示,同一VPN内的CE设备可以相互通信,不同VPN的CE设备则无法通信,满足了组网需求。
配置BGP/MPLS IP VPN示例
|
4月前
|
消息中间件 Linux API
centos7 安装rabbitmq自定义版本及配置
centos7 安装rabbitmq自定义版本及配置
|
1月前
|
关系型数据库 MySQL Linux
在 CentOS 7 中通过编译源码方式安装 MySQL 数据库的详细步骤,包括准备工作、下载源码、编译安装、配置 MySQL 服务、登录设置等。
本文介绍了在 CentOS 7 中通过编译源码方式安装 MySQL 数据库的详细步骤,包括准备工作、下载源码、编译安装、配置 MySQL 服务、登录设置等。同时,文章还对比了编译源码安装与使用 RPM 包安装的优缺点,帮助读者根据需求选择最合适的方法。通过具体案例,展示了编译源码安装的灵活性和定制性。
154 2
|
2月前
|
Java jenkins 持续交付
Centos7下docker的jenkins下载并配置jdk与maven
通过上述步骤,您将成功在CentOS 7上的Docker容器中部署了Jenkins,并配置好了JDK与Maven,为持续集成和自动化构建打下了坚实基础。
137 1
|
2月前
|
存储 监控 Linux
在 CentOS 7 中如何对新硬盘进行分区、格式化、挂载及配置最佳实践
本文详细介绍了在 CentOS 7 中如何对新硬盘进行分区、格式化、挂载及配置最佳实践,包括使用 `fdisk` 创建分区、`mkfs` 格式化分区、创建挂载点、编辑 `/etc/fstab` 实现永久挂载等步骤,旨在有效管理服务器磁盘空间,提高系统稳定性和可维护性。
325 1
|
2月前
|
Linux PHP Apache
CentOS 7.2配置Apache服务httpd(下)
CentOS 7.2配置Apache服务httpd(下)
59 1
|
4月前
|
弹性计算 关系型数据库 MySQL
centos7 mysql安装及配置
本文详细介绍了在阿里云服务器ECS上通过yum源安装MySQL 8.0.12的过程,包括更新yum源、下载并安装MySQL源、解决安装过程中可能遇到的问题等步骤。此外,还介绍了如何启动MySQL服务、设置开机自启、配置登录密码、添加远程登录用户以及处理远程连接异常等问题。适合初学者参考,帮助快速搭建MySQL环境。
562 8
centos7 mysql安装及配置
|
3月前
|
Linux
CentOS 7.x时间同步服务chrony配置详解
文章详细介绍了在CentOS 7.x系统中如何安装和配置chrony服务,以及它与ntpd服务的对比,强调了chrony在时间同步方面的高效性和准确性。
273 2
|
2月前
|
安全 Linux 数据库连接
CentOS 7环境下DM8数据库的安装与配置
【10月更文挑战第16天】本文介绍了在 CentOS 7 环境下安装与配置达梦数据库(DM8)的详细步骤,包括安装前准备、创建安装用户、上传安装文件、解压并运行安装程序、初始化数据库实例、配置环境变量、启动数据库服务、配置数据库连接和参数、备份与恢复、以及安装后的安全设置、性能优化和定期维护等内容。通过这些步骤,可以顺利完成 DM8 的安装与配置。
356 0