HCRM博客

如何在CentOS 7上配置和安装OpenVPN?

在CentOS 7上配置OpenVPN服务,可以通过以下几个步骤来实现,这些步骤包括安装OpenVPN和EasyRSA、生成证书、配置服务器和客户端等,以下是详细指南:

一、安装OpenVPN和EasyRSA

1、更新系统

如何在CentOS 7上配置和安装OpenVPN?-图1
(图片来源网络,侵权删除)
   sudo yum update y

2、安装EPEL源并安装OpenVPN和EasyRSA

   sudo yum install epelrelease y
   sudo yum install openvpn easyrsa y

3、创建目录并复制EasyRSA文件

   mkdir p ~/openvpnca
   cp r /usr/share/easyrsa/3/* ~/openvpnca/
   cd ~/openvpnca

4、初始化EasyRSA环境

   ./easyrsa initpki

5、生成CA证书

   ./easyrsa buildca

6、生成服务器证书和密钥

   ./easyrsa buildserverfull server nopass

7、生成DiffieHellman参数

如何在CentOS 7上配置和安装OpenVPN?-图2
(图片来源网络,侵权删除)
   ./easyrsa gendh

8、生成客户端证书和密钥

client1为例:

   ./easyrsa buildclientfull client1 nopass

9、复制证书和密钥到OpenVPN配置目录

   mkdir p /etc/openvpn/server
   sudo cp pki/ca.crt pki/issued/server.crt pki/private/server.key pki/dh.pem /etc/openvpn/server
   mkdir p ~/clientconfigs/keys
   sudo cp pki/ca.crt pki/issued/client1.crt pki/private/client1.key ~/clientconfigs/keys/

10、生成ta.key文件

    sudo openvpn genkey secret /etc/openvpn/server/ta.key

二、配置OpenVPN服务器

1、复制默认的配置文件并进行修改

    sudo cp /usr/share/doc/openvpn*/sample/sampleconfigfiles/server.conf /etc/openvpn/server/server.conf

2、编辑/etc/openvpn/server/server.conf文件

关键参数如下:

    port 1194
    proto udp
    dev tun
    ca ca.crt
    cert server.crt
    key server.key  # This file should be kept secret
    dh none
    server 10.8.0.0 255.255.255.0
    ifconfigpoolpersist /var/log/openvpn/ipp.txt
    push "redirectgateway def1 bypassdhcp"
    push "dhcpoption DNS 208.67.222.222"
    push "dhcpoption DNS 208.67.220.220"
    duplicatecn
    keepalive 10 120
    tlscrypt ta.key
    cipher AES256GCM
    auth SHA256
    persistkey
    persisttun
    status /var/log/openvpn/openvpnstatus.log
    verb 3
    explicitexitnotify 1

3、启用IP转发

    sudo sysctl w net.ipv4.ip_forward=1

将上述命令添加到/etc/sysctl.conf文件中以确保重启后生效:

    net.ipv4.ip_forward = 1

4、配置防火墙

    sudo systemctl enable firewalld
    sudo systemctl start firewalld
    sudo firewallcmd zone=public addservice=openvpn permanent
    sudo firewallcmd zone=public addmasquerade permanent
    sudo firewallcmd reload

5、启动OpenVPN服务

    sudo systemctl start openvpnserver@server
    sudo systemctl enable openvpnserver@server

三、配置OpenVPN客户端

1、准备客户端配置文件

创建client1.ovpn如下:

    client
    dev tun
    proto udp
    remote YOUR_SERVER_IP 1194
    resolvretry infinite
    nobind
    user nobody
    group nobody
    persistkey
    persisttun
    ca ca.crt
    cert client1.crt
    key client1.key
    remotecerttls server
    tlscrypt ta.key 1
    cipher AES256GCM
    auth SHA256
    keydirection 1
    verb 3

2、连接至服务器

使用以下命令连接到OpenVPN服务器:

    sudo openvpn config /path/to/client1.ovpn

四、常见问题FAQs

Q1: 如何更改OpenVPN服务器的端口号?

A1: 要更改OpenVPN服务器的端口号,只需在server.conf文件中修改port指令的值即可,将端口改为443:

port 443
proto tcpserver

如果使用TCP协议,还需添加proto tcpserver指令,确保防火墙规则中允许新的端口号。

Q2: OpenVPN连接失败时如何排查问题?

A2: 如果OpenVPN连接失败,可以按照以下步骤进行排查:

1、检查服务器日志:查看/var/log/openvpn/openvpnstatus.log和系统日志,查找错误信息。

2、验证证书和密钥:确保所有证书和密钥文件存在且路径正确,特别是ca.crt、server.crt、server.key和ta.key文件。

3、防火墙设置:确认防火墙已正确配置,允许OpenVPN流量通过,可以使用以下命令检查防火墙规则:

    sudo firewallcmd listall

4、网络配置:确保服务器的网络配置正确,能够访问外网,可以使用ping命令测试网络连通性。

5、客户端配置:检查客户端配置文件中的参数是否正确,尤其是远程地址和端口号。

本站部分图片及内容来源网络,版权归原作者所有,转载目的为传递知识,不代表本站立场。若侵权或违规联系Email:zjx77377423@163.com 核实后第一时间删除。 转载请注明出处:https://blog.huochengrm.cn/pc/19374.html

分享:
扫描分享到社交APP
上一篇
下一篇