安装注意要点:

1、用户及目录权限

2、openvpn配置文件/etc/openvpn/server.conf,可以设置不同的转发模式等等

3、全程使用apache,不要用其它的如nginx这些,不然你会发现配置很惨!

4、你不要去找其它的搭建教程,基本上都是不行的,只有这篇是成功的。

说明:

1、这东西本身自带自动安装openvpn,所以已安装之后会自动启动openvpn,并且使用nat模式。

2、如果要修改openvpn服务端的相关配置,可以通过/etc/openvpn/server.conf进行更改。

3、OpenVPN-Admin的原理是生成一份全局的client的ca证书,通过账号来管理。其实这种方式非常不安全。

4、OpenVPN-Admin其实不太好装,依赖PHP,MySQL,以及Apache,总体非常难配置。

5、为什么OpenVPN-Admin能检测到登录的IP等等,其实是通过openvpn的启动和断线自定义脚本实现,重写shell脚本,然后钩子插入到数据库。

下面是搭建步骤:

网上搭建的方法基本都试了一次,不是这里错就是那里错!

系统版本:CentOS 7.4

OpenVPN-Admin版本:master-20180511(链接:https://pan.baidu.com/s/1V1SssUvUFalYSBTanXuRqg  密码:a92c)

0、关闭一切防火墙

        # 卸载网络组件
        systemctl stop NetworkManager
        systemctl disable NetworkManager
        # 关闭默认防火墙
        systemctl stop firewalld.service
        systemctl disable firewalld.service
        # 安装iptables
        yum install -y iptables
        # 升级iptables
        yum update iptables
        # 安装iptables-services
        yum install -y iptables-services
        # 设置开机启动
        systemctl enable iptables
        # 启动
        systemctl start iptables
        # 清空所有默认规则
        iptables -F
        # 清空所有自定义规则
        iptables -X
        # 所有计数器归0
        iptables -Z
        # 停止服务
        service iptables stop    

1、安装php

参考:https://www.cnblogs.com/EasonJim/p/9614577.html

2、安装依赖

yum install -y epel-release
yum install -y openvpn httpd php php-mysql mariadb-server nodejs unzip git wget sed npm
npm install -g bower
systemctl enable mariadb
systemctl start mariadb
git clone https://github.com/Chocobozzz/OpenVPN-Admin openvpn-admin
cd openvpn-admin
./install.sh /var/www apache apache

期间会提示数据服务器IP,以及自动创建数据库,账号及密码。

3、配置数据库连接

直接使用root账号

vi /var/www/openvpn-admin/include/config.php
<?php
        $host = 'localhost';
        $port = '3306';
        $db   = 'openvpn-admin';
        $user = 'root';
        $pass = '';
?>

mariadb默认root没有密码。

4、配置apache支持php

vi /etc/httpd/conf/httpd.conf

5、配置apache的html目录指向/var/www/openvpn-admin

vi /etc/httpd/conf/httpd.conf

5.1、配置apache启动

systemctl enable httpd
systemctl start httpd

6、最后浏览器访问安装地址进行安装

http://your-installation/index.php?installation

自动化安装脚本:

https://github.com/easonjim/centos-shell/blob/master/openvpn-admin/install-auto-centos7.sh

参考:

https://github.com/Chocobozzz/OpenVPN-Admin

CentOS 7搭建OpenVPN-Admin的更多相关文章

  1. CentOS 6.9/Ubuntu 16.04搭建OpenVPN服务器以及客户端的使用

    说明: 1.发现一个很奇怪的现象,CentOS和Ubuntu有着对用户不同的管理理念,比如CentOS中安装一切软件都是以root优先(su -),而Ubuntu则以当前用户优先,安装软件以sudo开 ...

  2. CentOS搭建OpenVPN以及WIN&Android&iOS的安装连接

    OpenVPNhttp://info.swufe.edu.cn/vpn/openvpn/#2 苹果.安卓智能手机openvpn的设置_百度经验https://jingyan.baidu.com/art ...

  3. 完整CentOS搭建OpenVPN服务详细教程

    一.介绍 1.定义 ① OpenVPN是一个用于创建虚拟专用网络加密通道的软件包,最早由James Yonan编写.OpenVPN允许创建的VPN使用公开密钥.电子证书.或者用户名/密码来进行身份验证 ...

  4. openSUSE搭建OpenVPN

    目录 openSUSE搭建OpenVPN 环境 安装openVPN服务端 安装easy-rsa工具 配置vars文件 创建服务端证书及key 创建客户端证书 疏理证书文件 服务端配置 启动openvp ...

  5. CentOS 7 搭建PXC 数据库集群

    CentOS 7 搭建PXC 数据库集群 PXC( Percona XtraDB Cluster ) 特点如下: 1.同步复制,事务要么在所有节点提交或不提交,保证了数据的强一致性. 2.多主复制,可 ...

  6. 基于 CentOS 8 搭建 openLDAP 服务器

    转载请注明原文地址:基于 CentOS 8 搭建 openLDAP 服务器 环境 OS: CentOS 8.4.2105 PHP: 7.4.21 注意 CentOS 7 中可能默认提供了 openLD ...

  7. CentOS下搭建LAMP环境详解

    前言:在这里将介绍如何在CentOS下搭建LAMP环境(全部使用源码编译安装),用于web服务器开发. •LAMP: Linux + Apache + PHP + Mysql. •系统: CentOS ...

  8. CentOs上搭建git服务器

    CentOs上搭建git服务器 首先安装setuptools wget http://pypi.python.org/packages/source/s/setuptools/setuptools-0 ...

  9. Centos下搭建 nginx+uwsgi+python

    python做web应用最麻烦的还是配置服务器了,此话不假,光中间件就有好几种选择,fastcgi.wsgi.uwsgi,难 免让人眼花缭乱. 而听说uwsgi的效率是fastcgi和wsgi的10倍 ...

  10. Ubuntu16.04搭建OpenVPN

    Ubuntu16.04搭建OpenVPN 2018年12月27日 15:50:59 VinQin 阅读数:21042   简介 如果在一个非信任网络下比如旅社或者咖啡店的WiFi网络下,想要通过你的智 ...

随机推荐

  1. 20155339 2016-2017-2 《Java程序设计》第6周学习总结

    20155339 2016-2017-2 <Java程序设计>第6周学习总结 教材学习内容总结 第十章 串流设计 Java将输入/输出抽象化为串流,数据有来源及目的地,衔接两者的是串流对象 ...

  2. 20155302 2016-2017-2《Java程序设计》第五周学习总结

    20155302 2016-2017-2 <Java程序设计>第5周学习总结 教材学习内容总结 异常类从哪里来?有两个来源,一是Java语言本身定义的一些基本异常类型,二是用户通过继承Ex ...

  3. 第7月第20天 epoll

    1. ) { struct sockaddr in_addr; socklen_t in_len; int infd; char hbuf[NI_MAXHOST], sbuf[NI_MAXSERV]; ...

  4. Chrome插件笔记之content_scripts

    一.概论 说这个之前先看一个段子,讲的是甲方有一奇葩客户,这客户看一网站某些样式很别扭不得劲,非要让乙方修改,乍一听没毛病,但关键是这网站不是乙方家的,根本没有修改权限,怎么办,客户就是上帝,上帝的要 ...

  5. list(列表)操作【五】

    L表示从左边(头部)开始插与弹出,R表示从右边(尾部)开始插与弹出. 一.概述:      在Redis中,List类型是按照插入顺序排序的字符串链表.和数据结构中的普通链表一样,我们可以在其头部(l ...

  6. if 语句 写了return 报错

  7. Convert Expression to Reverse Polish Notation

    Given an expression string array, return the Reverse Polish notation of this expression. (remove the ...

  8. Plus One & Plus One Linked List

    Given a non-negative number represented as an array of digits, plus one to the number. The digits ar ...

  9. java PriorityQueue(优先级队列)

    先进先出描述了最典型的队列.队列规则是值在给定一组队列中的元素的情况下,确定下一个弹出队列的元素的规则,先进先出声明的是下一个元素应该是等待时间最长的元素 优先级队列声明下一个弹出的元素是最需要的元素 ...

  10. C#获取特定进程CPU和内存使用率

    首先是获取特定进程对象,可以使用Process.GetProcesses()方法来获取系统中运行的所有进程,或者使用Process.GetCurrentProcess()方法来获取当前程序所对应的进程 ...