Linux下搭建私有云存储
2018-03-03
网盘关停大数据时代之“数据之殇”
网盘的大规模关停,将导致用户数据信息的全面停用,并增加用户保存现有数据的难度及负担,甚至面临丢失风险。事实上,这是一个大数据时代,我们生活在一个每天产生大量数据的世界中,照片、视频、电影、音乐、工作文档、商业PPT……因此,随着网盘的流行,我们的大数据在网盘上的使用频率非常高,网盘真正解决了我们的数据存储“痛点”;资料显示,六家关停网盘的服务用户预估高达2.37亿,存储数据量之大可想而知;但是现今,随着网盘服务纷纷倒下,私人数据如何安放已成为用户关注的话题。
这一轮的网盘关停潮,可说是集体宣告这种免费商业模式的失败。但也不必悲观的是,在一个成熟的市场环境中,只要用户有充分的需求,慢慢一定会有新的服务来填补。在这几年网盘的“培养”下,用户已经习惯了在线存储,而且很多人越来越意识到,更稳定的服务、更安全的数据保障,比免费的大空间更为重要,所以更多人愿意尝试付费的存储服务,只要用户付费能够分担服务商的监管成本,那网盘就会继续发展;还有更多懂技术的人或者公司会搭建自己的私有云存储。
通过用户调查发现,在网盘关停的影响下,许多用户“被迫”购买付费网盘,被关停的服务大多是免费服务项目,而付费会员,在功能使用上并未受到大影响;但是,付费网盘的持续缴费性质,将给用户带来更多的经济压力和心理负担。调查得知,目前大部分付费网盘的收费都是阶段性收费,如新浪微盘仅100G空间的微盘VIP,年度收费是118元;这就意味着,如果购买付费网盘,一年之后,用户必须续交费用;同时,年度缴费用户还面临着收费随时上涨的可能性,这给用户造成了巨大的经济压力和心理负担。
除了“被迫”选择付费网盘之外,很多用户表示,他们更倾向于建立个人私有云存储。网盘的陆续关停,将迫使他们建立个人的永久云存储平台,并抛弃存在随时关闭风险的传统网盘存储商。
Linux铺路 OwnCloud架桥搭建私有云存储
OwnCloud是一个开源免费专业的私有云存储项目,它能帮你快速在个人电脑或服务器上架设一套专属的私有云文件同步网盘,可以像Dropbox那样实现文件跨平台同步、共享、版本控制、团队协作等等。ownCloud能让你将所有的文件掌握在自己的手中,只要你的设备性能和空间充足,那么用其来几乎没有任何限制。本项目是基于 PHP和 SQLite,MySQL,Oracle或PostgreSQL数据库,所以它可以运行在所有的平台上,下面将教大家如何在CentOS 7上安装OwnCloud 8。
1.初始设置,根据自己的需求配置对应的服务器(电脑) 连接互联网
安装CentOS 7默认最小配置然后安装目前所有的更新:
# yum -y update
2.我们需要安装PHP,Apache Web服务器和MySQL服务器和PHP扩展:
#yum install httpd php php-mysql mariadbserver mariadb sqlite php-dom php-mbstring php-gd php-pdo wget vim
3.设置SELinux允许owncloud写数据(目标文件/etc/selinux/config):
#set sebool -P httpd_unified 1
4.防火墙设置(确保防火墙启动):
#systemctl start firewalld.service 启动防火墙
#f i r e w a l l-c m d--permanent --zone=public--add-service=http
#f i r e w a l l-c m d--permanent --zone=public--add-service=https
#f i r e w a l l-c m d--reload
5.使用下面的命令启动Apache:set
#systemctl start httpd.service
6.通过此命令启动MariaDB:
#systemctl start mariadb.service
自动启动的服务在系统启动:
#systemctl enable httpd.service
#systemctl enable mariadb.service
7.安装owncloud
首先,我们需要从官方网站下载owncloud。运行以下命令:
# wget https://download.owncloud.o r g/c o m m u n i t y/owncloud-8.2.11.tar.bz2
解压文件:
#t a r -j x v f owncloud-8.2.11.tar.bz2-C/var/www/html/
接下来我们需要为Web服务器上文件目录设置读写权限:
#chown-R apache.apache/var/www/html/owncloud/
数据库配置
配置MariaDB实例:
#m y s q l_s e c u r e_installation
在设置过程这都输入Y并回车(中间会涉及输入root密码)。
创建owncloud数据库和用户。
登录到MySQL服务器,使用以下命令:
#mysql -u root -p
接下来,我们需要创建owncloud用户和权限:
mysql>create database owncloud;
mysql>create user‘owncloud’@’localhost’identified by’密码';
m y s q l>g r a n t a l l o n o w n c l o u d.* t o‘owncloud’@’localhost';
m y s q l>f l u s h privileges;
mysql>quit;
8.Apache服务器配置
编辑owncloud外部配置文件:
#vim/etc/httpd/conf.d/owncloud.conf
在配置文件中添加以下行:
Alias/owncloud/var/www/html/owncloud
O p t i o n s I n d e x e s FollowSymLinks
AllowOverride All
Order allow,deny
allow from all
9.启 动Apache和MariaDB服务:
#systemctl start httpd.service
#systemctl start mariadb.service
10.owncloud配置
打开你喜欢的浏览器访问http://你的ip地址/owncloud或者http://你的域名/owncloud。它将显示初始owncloud设置页。必须要激活再配置。
防火墙搭建iptable保驾护航
(一)禁用默认防火墙安装iptable iptable-service
1.先检查是否安装了iptables
#service iptables status
2.安装iptables
#y u m i n s t a l l -y iptables
3.升级iptables
#yum update iptables
4.安 装iptablesservices
#y u m i n s t a l l iptables-services
5.禁用/停止自带的firewalld服务
停止firewalld服务
#s y s t e m c t l s t o p firewalld
禁用firewalld服务
#s y s t e m c t l m a s k firewalld
(二)设置现有iptable规则其他规则设定
1.查看iptables现有规则
#iptables -L -n
2.先 允 许 所 有#iptables -P INPUT ACCEPT
3.清空所有默认规则#iptables -F
4.清空所有自定义规则#iptables -X
5.所有计数器归0#iptables -Z
6.允许来自于lo接口的数据包(本地访问)
#iptables -A INPUT -i lo -j ACCEPT
7.开放22端口
#iptables -A INPUT -p tcp --dport 22 -j ACCEPT
8.开放21端口(FTP)
#iptables -A INPUT -p tcp --dport 21 -j ACCEPT
9.开放80端口(HTTP)
#iptables -A INPUT -p tcp --dport 80 -j ACCEPT
10.开 放443端 口(HTTPS)
#iptables -A INPUT-p tcp --dport 443 -j ACCEPT
11.允许ping
#iptables -A INPUT-p icmp --icmp-type 8 -j ACCEPT
12.允许接受本机请求之后的返回数据 RELATED,是为FTP设置的
#iptables -A INPUT-m s t a t e --s t a t e RELATED,ESTABLISHED -j ACCEPT
13其他入站一律丢弃
#iptables -P INPUT DROP
14.所有出站一律绿灯
#iptables -P OUTPUT ACCEPT
15.所有转发一律丢弃
#iptables -P FORWARD DROP 保存规则设定
16.保存上述规则
#service iptables save
(三)iptable其他规则设定
1.如果要添加内网ip信任(接受其所有TCP请求)
#iptables -A INPUT -p tcp -s 45.96.174.68 -j ACCEPT
2.过滤所有非以上规则的请求
#iptables -P INPUT DROP
3.要封停一个IP,使用下面这条命令:
#iptables -I INPUT -s***.***.***.*** -j DROP
4.要解封一个IP,使用下面这条命令:
#iptables -D INPUT -s***.***.***.*** -j DROP
5.保存上述规则
#service iptables save
(四)开启iptables服务
1.保存上述规则
#service iptables save
2.注册iptables服务相当于以前的chkconfig iptables on
#systemctl enable iptables.service
3.开启服务
#systemctl start iptables.service
4.查看状态
#systemctl status iptables.service
(五)开启iptables服务
解 决v s f t p d在iptables开启后,无法使用被动模式的问题。
1.首 先 在/etc/sysconfig/iptablesconfig中修改或者添加以下内容
[html] view plain copy
添加以下内容,注意顺序不能调换
IPTABLES_MODULES="ip_conntrack_ftp"
IPTABLES_MODULES="ip_nat_ftp"
2.重新设置iptables设置
iptables -A INPUT-m s t a t e --s t a t e RELATED,ESTABLISHED -j ACCEPT
以下为完整设置脚本
1.#!/bin/sh
2.iptables -P INPUT ACCEPT
3.iptables -F
4.iptables -X
5.iptables-Z
6.iptables -A INPUT-i lo -j ACCEPT
7.iptables -A INPUT-p tcp --dport 22 -j ACCEPT
8.iptables -A INPUT-p tcp --dport 21 -j ACCEPT
9.iptables -A INPUT-p tcp --dport 80 -j ACCEPT
1 0.iptables -A INPUT -p tcp --dport 443 -j ACCEPT
1 1.iptables -A INPUT -p icmp --icmptype 8 -j ACCEPT
1 2.iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
1 3.iptables -P INPUT DROP
1 4.iptables -P OUTPUT ACCEPT
1 5.iptables -P FORWARD DROP
16.service iptables save
1 7.systemctl restart iptables.service