使用可道云Kodbox快速在云服务器上搭建云盘

admin 2024年10月21日16:02:19评论23 views字数 9333阅读31分6秒阅读模式

前言

如今,个人服务器已经不是什么稀罕的事情了。一台服务器,可以多台Linux集群,也可以是一台轻量应用服务器,亦或者是个人的树莓派、开发版等。

正因为如此,服务器上有越来越多的闲置存储空间,我们可以充分利用,让其变成我们的个人云盘、个人NAS、个人线上“Office三件套”等,闲置服务器,一下就变为生产工具、生产服务。

如果有自己不想动手,或者是需要更细致化权限分配的大佬,需要针对企业数据安全管理的,联系德斯克,我们可以有偿提供服务。

个人云盘

个人云盘,其实我认为个人云盘最基本的功能就是资料安全性的保护(包括:避免文件泄露、避免文件丢失等安全性问题),而核心的功能应该有:

  • 存储文件

  • 分享文件

  • 下载文件

但是就是上述的几个功能,一些大厂却都无法保证(说的就是某度:-),尤其是下载文件,真的是可以下载的?)。虽然现在有很多新的网盘崛起,但是如果是自己搭建的,所有数据都由自己掌握,还是更稳健点。

实现思路

其实有很多不同的是现实路:

如果是在局域网内使用,对安全性没有要求,亦或者只是简单的服务器(e.g. 树莓派)硬盘资源映射,使其本地可以通过浏览器访问,可以使用Nginx的目录映射功能,亦或者配合PHP搭建_h5ai

使用可道云Kodbox快速在云服务器上搭建云盘

如果是有安全性的需求,可以搭建网盘系统,比如:Nextcloud。
使用可道云Kodbox快速在云服务器上搭建云盘

但是,Nextcloud太过于臃肿,如果不是配置极其高的服务器,不建议使用Nextcloud。

那么,有没有一款云盘系统,节约系统资源的同时,保证资料的安全,并且又方便部署呢?这次我推荐可道云Kodbox。

Kodbox

Kodbox,是可道云团队的作品;团队最早有出过kodexplorer,那个时候就非常好用,主要解决文件上传、文件分享问题。这次的Kodbox,在kodexplorer基础上,还有桌面模式,并且支持简单的Office三件套,轻办公:

使用可道云Kodbox快速在云服务器上搭建云盘

并且,支持文件的分享:

使用可道云Kodbox快速在云服务器上搭建云盘

准备工具

准备工具很简单,最基础的工具:

  • 一台Linux服务器,可以是树莓派,也可以是腾讯云)这样的公网服务器

其次,如果你想获得更好的体验和安全,需要Https访问网站,那么你需要一个域名,解析到服务器上。并且,如果你的服务器是在国内的,那么需要提前域名进行备案处理,否则无法使用域名解析要服务器进行Web服务。

最后,软件方面我们需要LEMP环境(即:Linux+Nginx+MariaDB+PHP)来提供网站环境

Nginx和MariaDB以及PHP的安装方法,后文都会详解,分为常规编译和宝塔方法:

  • 常规编译(常规方法):适用于有更高定制化需求用户。

  • 宝塔方法:适用于想一切从简用户,尤其适用于新手。

如果你是新用户,第一次上云,且不想弄懂太多原理,想先搭建Kodbox先,推荐宝塔方法。

这里出于方便,使用腾讯云轻量应用服务器进行演示:
使用可道云Kodbox快速在云服务器上搭建云盘

使用可道云Kodbox快速在云服务器上搭建云盘

如果你并没有Linux设备,想租借一个Linux来学习或者搭建网站,强烈推荐:

  • 腾讯云轻量应用服务器Lighthouse

  • 腾讯云轻量应用服务器学生优惠

另外,为大家争取到优惠*(੭ˊᵕˋ)੭ଘ
以下的博客专属优惠有限时优惠,不管学生用户还是非学生用户,目前都建议通过这个活动链接购买服务器):

  • 本站专属腾讯云秒杀链接(可低价购买轻量应用服务器)

宝塔面板

宝塔面板,就是方便可视化管理Linux的资源文件,并且在面板内,可以一键安装Nginx、PHP和MariaDB等。方便小白用户使用。

需要注意,宝塔面板和自己安装的Nginx、PHP以及MariaDB都会冲突,所以后文的宝塔方法和常规方法只能二选一。

也就是,如果你选择宝塔方法,后续章节就全部使用宝塔方法;反之,使用常规编译(常规方法)。

使用宝塔面板

使用宝塔面板很简单,首先我们进入宝塔官网注册一下账号:

  • https://www.bt.cn

之后,SSH连接服务器:
使用可道云Kodbox快速在云服务器上搭建云盘

如果你并不会SSH连接服务器,可以参考零基础教程视频:10分钟手把手教你通过SSH,使用密钥/账号远程登录Linux服务器(Windows/macOS)

最后,复制安装命令到Linux控制台即可:
使用可道云Kodbox快速在云服务器上搭建云盘

使用可道云Kodbox快速在云服务器上搭建云盘

使用可道云Kodbox快速在云服务器上搭建云盘

在安装好面板后,运营商上放行端口后,即可在浏览器上进行访问:
使用可道云Kodbox快速在云服务器上搭建云盘

更多宝塔的操作,你可以参考视频:详解Linux宝塔面板,助力零基础使用Linux服务器

不使用宝塔

不使用宝塔面板,可以看接下来目录章节内的常规编译方法,并且建议创建一个专门的网站用户管理我们的网站资源:

1
2
3
4
5
6
# 创建一个www用户
sudo useradd www
# 创建一个www用户组
sudo groupadd www
# www用户归属于www用户组
sudo usermod -a -G www www
BASH

使用可道云Kodbox快速在云服务器上搭建云盘

Nginx

宝塔方法

宝塔安装方法特别简单,我们进入宝塔面板后,选择安装Nginx即可。通常情况下,选择默认跳出的版本即可:
使用可道云Kodbox快速在云服务器上搭建云盘

使用可道云Kodbox快速在云服务器上搭建云盘

常规编译

常规方法,我们需要编译安装Nginx,而编译安装Nginx的两大前提:编译依赖和Nginx源码。

源码的下载非常简单,出于稳定性考虑,我们使用wget下载并解压稳定版本的Nginx源码,最后使用cd命令进入其目录内:
使用可道云Kodbox快速在云服务器上搭建云盘

之后是安装编译依赖(如果你使用的是Debian发行版本的Linux可以用以下命令,通过软件包管理器安装;CentOS的话,就需要自己替换依赖名并用yum进行安装了):

1
apt install build-essential pkg-config libxml2-dev libpcre2-dev openssl libssl-dev libsqlite3-dev zlib1g-dev libcurl4-openssl-dev libpng-dev libjpeg-dev libonig-dev libzip-dev -y
BASH

使用可道云Kodbox快速在云服务器上搭建云盘

使用可道云Kodbox快速在云服务器上搭建云盘

在这之后,我们进行配置:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
./configure 
--prefix=/usr/local/nginx
--user=www
--group=www
--sbin-path=/usr/local/nginx/sbin/nginx
--conf-path=/usr/local/nginx/nginx.conf
--error-log-path=/var/log/nginx/error.log
--http-log-path=/var/log/nginx/access.log
--pid-path=/var/run/nginx.pid
--lock-path=/var/run/nginx.lock
--http-client-body-temp-path=/var/cache/nginx/client_temp
--http-proxy-temp-path=/var/cache/nginx/proxy_temp
--http-fastcgi-temp-path=/var/cache/nginx/fastcgi_temp
--http-uwsgi-temp-path=/var/cache/nginx/uwsgi_temp
--http-scgi-temp-path=/var/cache/nginx/scgi_temp
--with-file-aio
--with-threads
--with-http_addition_module
--with-http_auth_request_module
--with-http_dav_module
--with-http_flv_module
--with-http_gunzip_module
--with-http_gzip_static_module
--with-http_mp4_module
--with-http_random_index_module
--with-http_realip_module
--with-http_secure_link_module
--with-http_slice_module
--with-http_ssl_module
--with-http_stub_status_module
--with-http_sub_module
--with-http_v2_module
--with-mail
--with-mail_ssl_module
--with-stream
--with-stream_realip_module
--with-stream_ssl_module
--with-stream_ssl_preread_module
BASH

使用可道云Kodbox快速在云服务器上搭建云盘

使用可道云Kodbox快速在云服务器上搭建云盘

配置完成,并没有显示任何报错,所以我们进行编译:

1
make -j4
BASH

因为我的服务器是4核心,所以使用-j4参数进行多线程编译。

使用可道云Kodbox快速在云服务器上搭建云盘

最后,我们进行安装即可:

1
make install
BASH

使用可道云Kodbox快速在云服务器上搭建云盘

因为我编译安装时候,选择Nginx的缓存地址是/var/cache/nginx,但是Linux上并没有存在这个地址,我们需要手动创建:

1
sudo mkdir /var/cache/nginx
BASH

最后,创建守护进程:

1
sudo vim /usr/lib/systemd/system/nginx.service
BASH

追加内容:

1
2
3
4
5
6
7
8
9
10
11
12
13
[Unit]
Description=nginx
After=network.target
 
[Service]
Type=forking
ExecStart=/usr/local/nginx/sbin/nginx
ExecReload=/usr/local/nginx/sbin/nginx -s reload
ExecStop=/usr/local/nginx/sbin/nginx -s quit
PrivateTmp=true
 
[Install]
WantedBy=multi-user.target
XML

使用可道云Kodbox快速在云服务器上搭建云盘

重载systemctl进程:

1
sudo systemctl daemon-reload
BASH

到此,我们可以启动Nginx进程,并设置为开机自启:

1
2
3
4
# 设置开机自启
sudo systemctl enable nginx
# 启动Nginx进程
sudo systemctl start nginx
BASH

使用可道云Kodbox快速在云服务器上搭建云盘

MariaDB

宝塔方法

宝塔安装方法特别简单,我们进入宝塔面板后,选择安装MySQL即可。通常情况下,选择MariaDB版本的MySQL比较好:
使用可道云Kodbox快速在云服务器上搭建云盘

使用可道云Kodbox快速在云服务器上搭建云盘

等待安装完成:
使用可道云Kodbox快速在云服务器上搭建云盘

我们需要创建一个数据库(可视化):
使用可道云Kodbox快速在云服务器上搭建云盘

使用可道云Kodbox快速在云服务器上搭建云盘

其中:

  • E51H1c1c:我设置的数据库密码,使用Mintimate在线工具箱-随机强密码自动生成。

  • 数据库和用户名我都取名为kodboxDatabase,方便分类。

  • 我只允许本地登录,方便进行安全管理。

创建好后,就可以了。后续初始化Kodbox时候会再次使用。

常规编译

我们这里编译安装MariaDB,就使用简单点的方法,直接添加MariaDB最新稳定版的更新源到软件包管理器:

1
2
curl -LsS -O https://downloads.mariadb.com/MariaDB/mariadb_repo_setup
sudo bash mariadb_repo_setup --mariadb-server-version=10.6
BASH

使用可道云Kodbox快速在云服务器上搭建云盘

之后,使用apt update即可载入MariaDB的更新源:
使用可道云Kodbox快速在云服务器上搭建云盘

最后,我们就可以使用软件包管理器进行安装:

1
sudo apt install mariadb-server mariadb-client
BASH

使用可道云Kodbox快速在云服务器上搭建云盘

到此,MariaDB数据库就安装完成了,稍后我们创建一个数据库给Kodbox使用即可。

如果你想设置root用户密码或者设置root用户无法登录,可以使用sudo mariadb-secure-installation命令进行操作。

为了后续的Kodbox的初始化,我们创建一个数据库,并创建一个专门的数据库内用户,确保安全性,首先输入:

1
mariadb
BASH

进入MariaDB交互模式:
使用可道云Kodbox快速在云服务器上搭建云盘

相信看常规方法的小伙伴,肯定对SQL语句有所了解,我就粗略说一下:

1
2
3
4
# 创建一个用户,并仅允许本机访问
CREATE USER 'kodboxDatabase'@'localhost' IDENTIFIED BY 'E51H1c1c';
# 创建一个数据库
CREATE DATABASE kodboxDatabase;
BASH

使用可道云Kodbox快速在云服务器上搭建云盘

其中:

  • E51H1c1c:我设置的数据库密码,使用Mintimate在线工具箱-随机强密码自动生成。

  • 数据库和用户名我都取名为kodboxDatabase,方便分类。

  • 我只允许本地登录,方便进行安全管理。

我们把新建的数据库,交给新建的用户去管理:

1
GRANT ALL ON kodboxDatabase.* TO 'kodboxDatabase'@'localhost';
BASH

最后,退出MariaDB的交互模式,回到主终端:
使用可道云Kodbox快速在云服务器上搭建云盘

PHP

宝塔方法

宝塔安装方法特别简单,我们进入宝塔面板后,选择安装PHP即可。通常情况下,选择默认跳出的版本即可:
使用可道云Kodbox快速在云服务器上搭建云盘

使用可道云Kodbox快速在云服务器上搭建云盘

最后,安装好PHP后,宝塔的PHP会默认禁用shell_execexec函数,为了更好的Kodbox性能,我们将其解除禁止:
使用可道云Kodbox快速在云服务器上搭建云盘

常规编译

常规方法,我们需要编译安装PHP,并且PHP的最小版本为5.3,为了紧跟时代,我们这里编译PHP8.1,而编译安装PHP的两大前提:编译依赖和PHP源码。

源码的下载非常简单,出于稳定性考虑,我们使用wget下载并解压稳定版本的PHP源码,最后使用cd命令进入其目录内:
使用可道云Kodbox快速在云服务器上搭建云盘

其实上述Nginx依赖安装时候,已经把大部分PHP的依赖也安装好了,但是还需要安装:

1
sudo apt install libxml2-dev libjpeg-dev libonig-dev libzip-dev -y
BASH

所以这里无需安装其他依赖。所以,我们直接进行配置:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
./configure 
--prefix=/usr/local/php8
--with-curl
--with-mysqli
--with-openssl
--with-pdo-mysql
--with-jpeg
--enable-gd
--enable-fpm
--with-fpm-user=www
--with-fpm-group=www
--enable-bcmath
--enable-xml
--with-zip
--enable-mbstring
--enable-sockets  
--with-zlib  
--enable-fileinfo
--enable-exif
BASH

使用可道云Kodbox快速在云服务器上搭建云盘

配置完成,并没有显示任何报错,所以我们进行编译:

1
make -j4
BASH

因为我的服务器是4核心,所以使用-j4参数进行多线程编译。

使用可道云Kodbox快速在云服务器上搭建云盘

使用可道云Kodbox快速在云服务器上搭建云盘

最后,我们进行安装即可:

1
make install
BASH

使用可道云Kodbox快速在云服务器上搭建云盘

因为我编译安装时候,重定向启动文件,并且需要创建FPM配置文件,所以,我们需要手动创建:

1
2
sudo mv /usr/local/php8/etc/php-fpm.conf.default /usr/local/php8/etc/php-fpm.conf
sudo mv /usr/local/php8/etc/php-fpm.d/www.conf.default /usr/local/php8/etc/php-fpm.d/www.conf  
BASH

最后,创建守护进程:

1
sudo vim /usr/lib/systemd/system/php-fpm.service
BASH

追加内容:

1
2
3
4
5
6
7
8
9
10
11
[Unit]
Description=php-fpm
After=network.target
 
[Service]
Type=forking
ExecStart=/usr/local/php8/sbin/php-fpm
PrivateTmp=true
 
[Install]
WantedBy=multi-user.target
XML

使用可道云Kodbox快速在云服务器上搭建云盘

重载systemctl进程:

1
sudo systemctl daemon-reload
BASH

到此,我们可以启动Nginx进程,并设置为开机自启:

1
2
3
4
# 设置开机自启
sudo systemctl enable php-fpm
# 启动Nginx进程
sudo systemctl start php-fpm
BASH

使用可道云Kodbox快速在云服务器上搭建云盘

Kodbox部署

宝塔方法

宝塔方法比较简单,因为我们已经安装了Nginx、PHP和MariaDB,现在就可以可视化图形界面上进行操作,首先是新建一个网站:
使用可道云Kodbox快速在云服务器上搭建云盘

这里需要注意:

  • 域名:有域名解析到服务器,那么就填解析的域名,没有则填服务器IP来充当域名也可以(当时就不能有https)。

  • PHP版本:这里选择刚刚安装的PHP版本

比如,我的IP是:127.0.0.1,那么只需要这样填写:
使用可道云Kodbox快速在云服务器上搭建云盘

之后,打开网站目录:
使用可道云Kodbox快速在云服务器上搭建云盘

使用自带的远程下载功能,下载kodbox最新发行版本解压(最新版本kodbox获取):

使用可道云Kodbox快速在云服务器上搭建云盘

使用可道云Kodbox快速在云服务器上搭建云盘

并解压:
使用可道云Kodbox快速在云服务器上搭建云盘

最后,我们修改所有文件权限为宝塔的www用户:
使用可道云Kodbox快速在云服务器上搭建云盘

使用可道云Kodbox快速在云服务器上搭建云盘

这个时候,就可以浏览器进入网站(访问地址就是你的域名):

使用可道云Kodbox快速在云服务器上搭建云盘

常规方法

如果你使用常规方法,很简单,就是常规的Nginx网站配置,首先是创建一个网站根目录,比如:

1
mkdir -p /www/wwwroot
BASH

之后进入其中,并下载kodbox最新发行版本解压(最新版本kodbox获取):

1
2
wget https://static.kodcloud.com/update/download/kodbox.1.32.zip
unzip kodbox.1.32.zip
BASH

使用可道云Kodbox快速在云服务器上搭建云盘

最后,归属文件夹到网站用户:

1
chown -R www:www /www
BASH

使用可道云Kodbox快速在云服务器上搭建云盘

编辑Nginx的配置文件,加入PHP的配置文件,并指向网站目录内:

1
sudo vim /usr/local/nginx/nginx.conf
BASH

单网页多域名参考:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
user www;
worker_processes  1;

events {
   worker_connections  1024;
}


http {
   include       mime.types;
   gzip  on;

   server {
       listen       80;
       server_name  localhost;
   root /www/wwwroot;

       location / {
           index  index.php index.html index.htm;
       }
       error_page   500 502 503 504  /50x.html;
       location = /50x.html {
           root   html;
       }

   # php-fpm配置
       location ~ [^/].php(/|$){
           # try_files $uri =404;
           fastcgi_pass  127.0.0.1:9000;
           include fastcgi.conf;
           fastcgi_index  index.php;
           fastcgi_param  SCRIPT_FILENAME  $document_root/$fastcgi_script_name;
       }
   }
}
CONF

使用可道云Kodbox快速在云服务器上搭建云盘

最后,重载Nginx配置文件(systemctl reload nginx),即可浏览器进入网站:

使用可道云Kodbox快速在云服务器上搭建云盘

接下来就是初始化问题了。

Kodbox初始化

Kodbox的初始化就十分简单了,进入网站后,填写用户名和密码即可:
使用可道云Kodbox快速在云服务器上搭建云盘

其中:

  • 用户名:上文MariaDB章节内,创建的数据库内用户。

  • 密码:上文MariaDB章节内,创建的数据库内用户密码。

  • 数据库:上文MariaDB章节内,创建归属于数据库内用户的数据库。

确定后,Kodbox检测没问题后,就会让我们创建默认的root用户:
使用可道云Kodbox快速在云服务器上搭建云盘

最后,第一次初始化比较久,稍微等一下,就可以进入Kodbox系统:

使用可道云Kodbox快速在云服务器上搭建云盘

使用Kodbox

使用Kodbox,建议在未搭建前,可以使用官方Demo进行体验:http://demo.kodcloud.com/

当然,如果你经过上述操作,以及搭建好。建议你下载官方的APP:
使用可道云Kodbox快速在云服务器上搭建云盘

比如,我这里添加了iOS的APP:
使用可道云Kodbox快速在云服务器上搭建云盘

你可以使用Kodbox进行简单的Office办公,也可以进行私有化分享:

常见问题

初始化目录权限不对

如果你初始化过程中,出现目录权限不正确,比如:
使用可道云Kodbox快速在云服务器上搭建云盘

一般是Kodbox网站目录的所有者,并不是网站用户。使用chown进行修改即可。

如何迁移Kodbox

如果我们换了一台服务器,那么Kodbox如何做数据迁移呢?

其实很简单,总的来说:

  • 迁移数据库:迁移数据库文件(本文数据库使用Mariadb,所以这里导出SQL文件即可)

  • 迁移网站目录:迁移整个网站目录即可。

首先是数据库,如果你使用的是宝塔面板,那么可以在宝塔后台到处数据库的SQL文件:

如果你使用的时是常规方法,建议使用MariaDB自带的mysqldump进行操作:

1
mysqldump -u用户名 -p密码 数据库名 > 数据库名.sql
SQL

比如我的:

1
mysqldump -ukodboxDatabase -pE51H1c1c kodboxDatabase > kodboxDatabase.sql
SQL

之后,在新的服务器上,创建一样的用户名和数据库名后运行SQL即可,比如:

1
mariadb -ukodboxDatabase -pE51H1c1c < kodboxDatabase.sql
SQL

如何更新Kodbox

更新Kodbox其实很简单,管理员登录Kodbox,如果有新版本会提示,按照提示进行更新即可。

或者你也可以在网站后台进行手动更新:

使用可道云Kodbox快速在云服务器上搭建云盘

不推荐手动覆盖文件更新。

原文始发于微信公众号(德斯克安全小课堂):使用可道云Kodbox快速在云服务器上搭建云盘

免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2024年10月21日16:02:19
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   使用可道云Kodbox快速在云服务器上搭建云盘https://cn-sec.com/archives/3295196.html
                  免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉.

发表评论

匿名网友 填写信息