安装注意要点:
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
参考: