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. 请写出5种常见到的runtime exception。

    请写出5种常见到的runtime exception. 解答: NullPointerException:当操作一个空引用时会出现此错误. NumberFormatException:数据格式转换出现 ...

  2. Timer类与TimerTask类

    有个schedule方法,可以指定过多长时间定期的执行某个程序或某段代码,或者过多长时间启动一个线程等. TimerTask类实现了Runnable接口,要执行的类由它里面实现的run方法来完成. 编 ...

  3. 关于OBJC

    http://www.objc.io/ objc这个站点是:关于objective-c语言的最佳实践和高阶技术的期刊. 看了几期非常不错,所以计划每天抽出时间翻译一篇文章和大家一起分享.

  4. (转)Unity笔记之编辑器(BeginToggleGroup、BoundsField、ColorField) ...

    1. BeginToggleGroup() BeginToggleGroup函数是定义了一个控制范围,可以控制该范围中的GUI是否启用,看下演示代码: [code]csharpcode: using ...

  5. Java反射基础(一)

    构造方法的获取   1. 四个方法:getConstructors()获取所有的构造方法: getConstructor(parameters)获取匹配参数的构造方法: getDeclaredCons ...

  6. opencv2.4.9+VS2010配置

    opencv2.4.9 https://pan.baidu.com/s/15b5bEY65R4CptayEYVAG4A 安装包路径:D:\文件及下载相关\文档\Tencent Files\845235 ...

  7. Windows防火墙端口规则设置新建方法

    from:https://jingyan.baidu.com/article/2a1383289fd094074a134ff0.html Windows防火墙有什么用呢?它是电脑的一道安全屏障,可以有 ...

  8. selenium 方法导图

  9. 【BZOJ5063】旅游 Splay

    [BZOJ5063]旅游 Description 小奇成功打开了大科学家的电脑. 大科学家打算前往n处景点旅游,他用一个序列来维护它们之间的顺序.初 始时,序列为1,2,...,n. 接着,大科学家进 ...

  10. linux一台机器文件传到另一台机器上

    登录一台机器35.73: scp -P 端口 要传的文件 user@xxx.xxx.xxx.xxx:/目标文件夹/ 例子 :scp -r -P3561 /home/ismp/build/app/bec ...