OwnCloud环境搭建

一、 环境搭建

1. 环境需求

服务器操作系统:Centos7.0

外网服务器操作系统:Centos7.0

Php版本号:5.4.16

Mysql版本号:5.5.52

Apache版本号:2.4.6

OwnCloud版本号:9.1.4

Frps和frpc:release0.9

2. PHP+Apache+MySql+PHP扩展环境搭建步骤

1) Centos7切换为阿里yum源

第一步:安装以及备份base reop源

cd /etc/yum.repos.d

mv CentOS-Base.repo CentOS-Base.repo.bak

wget -O CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo

第二步:安装repl reop源

wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo

第三步:清理缓存

yum clean all

第四步:重新生成缓存

yum makecache

2) 安装php、mysql、插件以及配置Apache

第一步:安装php、mysql、以及需要的所有插件

yum install httpd php php-mysql mariadb-server mariadb sqlite php-dom php-mbstring php-gd php-pdo wget vim

第二步:安装完成apache之后,需要配置

vi /etc/httpd/conf/httpd.conf

找到#ServerName www.example.com:80 并且去掉‘#’修改为“ServerName localhost:80”,修改后保存退出。

第三步:在配置好Apache之后,现在还有防火墙的阻拦,会无法访问,因此需要关闭centos7的防火墙

systemctl stop firewalld.service

setenforce 0

第四步:设置SELinux允许owncloud写数据

setsebool -P httpd_unified 1

第五步:启动apache并且设置为开机自启动

systemctl start httpd.service

systemctl enable httpd.service

至此,可以打开网页访问网址“127.0.0.1”可以看到如图所示界面,表示Apache配置成功。

图1 Apache测试页面

第六步:安装了mariadb(mysql)启动并且创建数据库给owncloud使用

systemctl start mariadb.service

systemctl enable mariadb.service

进入root权限,创建数据库

mysql -u root –p

直接回车进入mysql,因为此前没有设置过密码。进去后修改密码,如下:

use mysql;

SET password for 'root'@'localhost'=password('root');

创建数据库:

create database owncloud;

创建使用数据库owncloud的用户“oc_owncloud_user”以及分配密码“root”

create user 'oc_owncloud_user'@'localhost' identified by 'root ';

这里注意,上述的数据库用户第一次一定是要以“oc”开头的用户名。

创建完成以后查看自己创建的用户名是否以及成功:

use mysql;

select user,host from user;

若不存在,重新使用之前的命令进行创建,注意符号的使用;若创建成功则,进行下面的操作:

为创建的用户进行远程权限的分配:

grant all on owncloud.*to'oc_owncloud_user'@'localhost' identified by 'root';

flush privileges;

systemctl restart mariadb.service

3) 下载、解压、和配置owncloud9.1.4

第一步:在owncloud下载owncloud9.1.4压缩包,地址如下:

https://download.owncloud.org/community/owncloud-9.1.4.zip

第二步:解压压缩包到/var/www/html/

tar -jxvf owncloud-9.1.4.tar.bz2 -C /var/www/html/

第三步:接下来我们需要为Web服务器上文件目录设置读写权限

chown -R apache.apache /var/www/html/owncloud/

第四步:解压完成之后,需要配置Apache服务器,编辑owncloud外部配置文件。

vi /etc/httpd/conf.d/owncloud.conf

这个配置文件可能是空的,添加如下内容:

Alias /owncloud /var/www/html/owncloud

Options Indexes FollowSymLinks

<Directory /var/www/html/owncloud>

AllowOverride All

</Directory>

<Proxy *>

Order allow,deny

allow from all

</Proxy>

第五步:完成配置之后重启apache服务器以及mariadb(mysql)

systemctl start httpd.service

systemctl start mariadb.service

第六步:配置owncloud9.1.4服务器

在浏览器打开“http://你owncloud服务器ip/owncloud”

出现如下的界面:

按照如下进行设置,其中用户名密码自己定义,数据库连接部分,数据库用户填写创建数据库用户时的用户名,这里第一次必须使用oc开头的用户名,数据库密码就是数据库用户密码,数据库名,就是数据库的名字。填写好以后提交。会在owncloud/config/下面生产配置文件config.php,用于保存连接数据库的信息等。

配置完成以后可以进入如下界面:

恭喜你,内网中的owncloud服务器搭建成功。

下面是穿透外网的(常用VPN或交换机端口镜像)

4) frp server以及frp client的搭建

frp的作用如下:

由于处于内网中的服务器ip,在外网中不识别,想通过穿透这一功能,用户使用外网ip能够访问到内网服务器。其中需要用到获取外网ip的机器作为frp server,而提供云服务的机器运行frp client。

第一步:在github上去获取frp的应用,可以是别人上传的release也可以自己编译。地址如下:

https://github.com/fatedier/frp/tree/release-0.9

第二步:解压下载好的release版本,将其中的frps frps.ini拷贝到外网机器上,对frps.ini进行修改:

[common]

bind_addr =0.0.0.0

bind_port = 7000

dashboard_port = 7500

dashboard_user = admin

dashboard_pwd = admin

log_file = ./frps.log

log_level = info

log_max_days = 3

privilege_mode = true

privilege_token = 12345678

privilege_allow_ports = 2000-3000,3001,3003,4000-50000

max_pool_count = 100

authentication_timeout = 900

subdomain_host = frps.com

[ssh]

type = tcp

auth_token = 123

bind_addr = 0.0.0.0

listen_port = 6000

[dns]

type = udp

auth_token = 123

bind_addr = 0.0.0.0

listen_port = 5353

[web01]

auth_token = 123

listen_port = 1111

[web05]

auth_token = 123

listen_port = 1112

第三步:修改完成保存后运行server端。

Ø ./frps –c ./frps.ini

第四步:将frpc 和frpc.ini拷贝到云服务器运行的机器上,并且对frpc.ini进行如下修改:

[common]

server_addr = 222.73.156.141

server_port = 7000

log_file = ./frpc.log

log_level = info

log_max_days = 3

auth_token = 123

privilege_token = 12345678

[ssh]

type = tcp

local_ip = 127.0.0.1

local_port = 22

use_encryption = false

use_gzip = false

[dns]

type = udp

local_ip = 114.114.114.114

local_port = 53

[web01]

type = http

local_ip = 172.17.226.119

local_port = 80

use_gzip = true

pool_count = 1111

第五步:其中红色标注的地方都是修改的重点,按照外网ip,内网ip进行对应,修改之后在云服务器上运行frp client。

./frpc –c ./frpc.ini

5) 通过访问外网地址,来访问云服务器

至此,穿透+云服务器已经搭建完成,通过访问外网ip来访问内网中的服务器。

3.

二、 插件安装

1) 在owncloud的官网去下载自己喜欢的插件

2) 解压下载的插件到owncloud/apps/下面

3) 登录到owncloud的界面,然后点击应用,如下图

4) 在未开启中找到自己下载的插件,然后开启

三、 软件使用

通过外网ip访问frps穿透地址,能够访问到内网中服务器,登录到如下界面:

可以创建文件夹,上传照片,上传视频,音乐等等文件,在安装插件之后,能够在线观看视频,听音乐,浏览pdf等等。

centos7 上搭建私有云的更多相关文章

  1. [原创]在Centos7上搭建私有的Gitlab服务器

    前言 Git作为后起之秀,在版本控制领域占据了头把交椅.Github作为托管式的代码仓库,从代码安全性和网络传输等各个方面考虑,对于个人和公司来讲,具有一定的局限性.Gitlab提供的不同版本的安装包 ...

  2. 自行搭建私有云ownCloud,启用SSL,其他配置

    ownCloud简介 ownCloud(官网)是一款开源的私有云框架,可以通过它实现个人网盘的功能,如果拥有一个性能不错的VPS,那么就可以摆脱奇慢无比的百度云等网盘啦!我花了大约一天的时间总算搭好了 ...

  3. 自行搭建私有云kodexplorer

    kodexplorer是一款开源的私有云框架,可以通过它实现个人网盘的功能,如果拥有一个性能不错的VPS,那么就可以摆脱奇慢无比的百度云等网盘啦!最近百度网盘还发出申明,说要限制使用空间.用别人的东西 ...

  4. 在CentOS 6上搭建私有的Docker Registry

    在CentOS 6上搭建私有的Docker Registry v2Registry概念 :Registry是一个无状态的, 高可扩展的服务器端应用程序, 用于存储和分发Docker Image. 依赖 ...

  5. 在Dropbox上搭建私有的Git仓库的教程

    导读 Git版本控制系统需要一个服务器端,而GitHub上要想创建私有的Git服务器端仓库则触及到收费项目,于是这里我们利用Dropbox的免费空间,来看一下在Dropbox上搭建私有的Git仓库的教 ...

  6. centos7上搭建开源系统jforum

    centos7上搭建好tomcat,mysql; 将 jforum-2.6.2.war放到tomcat目录的webapps下: 启动tomcat,./startup.sh ,查看webapp下jfor ...

  7. window搭建私有云,只要几分钟

    本文介绍如何在window搭建私有云网盘. 工具/原料:一台window系统电脑或者window服务器(vps),Xampp 安装包,可道云kodexplorer安装包 第一步,xampp安装 1.官 ...

  8. [Openwrt 扩展下篇] Openwrt搭建私有云Owncloud 9

    网上很多资料讲用Linux打造owncloud构建私有云 ,花了些时间研究了下,我将之前的需求打造成了Openwrt下的Owncloud 9.其实网上还有Seafile.大家对比来看下知乎的评论,其实 ...

  9. 在公有云AZURE上部署私有云AZUREPACK以及WEBSITE CLOUD(一)

    (一)前言 本文主要介绍了实践部署AzurePack的Website Cloud的过程.在部署之前, 首先要对AzurePack有个基本的了解.   Azure Pack是微软的私有云方案,具有弹性. ...

随机推荐

  1. Gradle学习系列之一——Gradle快速入门(转)

    参考:https://www.cnblogs.com/davenkin/p/gradle-learning-1.html 记录,不做具体转载

  2. 从TensorFlow0.12升级到TensorFlow1.13

    sudo pip install --upgrade tensorflow-gpu $ sudo pip install --upgrade tensorflow-gpu[sudo] password ...

  3. Unity3D和网页数据交互的基本原理

    简介: 1.Unity3D的游戏引擎是和编辑器集成在一起的,所有它也是一个制作/开发平台. 2.Unity3D是使用JavaScript.C#作为核心脚本语言来驱动事个游戏引擎. 3.平台可以发布Ex ...

  4. MongoDB中关于查询条件中包括集合中字段的查询

    要查询的数据结构例如以下: watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvZ2FvMzY5NTE=/font/5a6L5L2T/fontsize/400/f ...

  5. ChemDraw Pro和ChemBio3D Ultra有什么区别

    作为ChemOffice 14的两个重要组件,ChemDraw Pro和ChemBio3D Ultra都有着自己的特点,ChemDraw Pro以绘制平面结构而ChemBio3D Ultra以绘制立体 ...

  6. 为什么要使用自增ID作为主键

    1.从业务上来说 在设计数据库时不需要费尽心思去考虑设置哪个字段为主键.然后是这些字段只是理论上是唯一的,例如使用图书编号为主键,这个图书编号只是理论上来说是唯一的,但实践中可能会出现重复的 情况.所 ...

  7. 《Sqlserver》Javaweb项目链接sqlserver 2008R2时出现的一系列的错误

    好久没有弄java,玩eclipse了,最近因为小小的原因,参加一个比赛,不得不把javaweb的东西又捡起来,所以不熟悉,再加上之前链接数据库都是用Oracle的,现在公司的电脑上又只是安装了sql ...

  8. Android新的menu实现——ActionMode

    Android的menu有多种实现方式,以前写过一篇Android中五种常用的menu(菜单),这里介绍一种新的menu实现方式:ActionMode.ActionMode是Android 3.0以后 ...

  9. storyboard设置navigation controller

    到storyboard选中我们唯一一个的viewcontroller,找到xcode的菜单栏,Edit->Embed In->NavigationController.这时候storybo ...

  10. bootstrap 媒体查询

    //各类设备的分辨率 /*超小设备(手机,小于768px)*/ /* Bootstrap 中默认情况下没有媒体查询 */ /*超小型设备(小于768px)*/ @media (min-width:@s ...