网站搜索

Pydio - 在 Linux 中创建自己的文件共享和同步门户,如 Dropbox


Pydio是一款开源、安全且功能强大的在线文件共享和同步软件解决方案,可以替代许多在线云存储系统。它可以从网络、桌面或移动平台访问,并且托管是私有的,因此您可以实施自己的安全措施。

12 个开源云存储解决方案,可安全同步您的数据

Pydio 特点

Pydio 提供以下功能:

  1. 使用带有有效期的密码来保护链接。
  2. 与 LDAP/AD 服务器集成以进行用户身份验证。
  3. 实时监控系统上的用户活动。
  4. 从不同用户之间的共享文件夹创建工作区。
  5. 通知用户文件或文件夹的修改。
  6. 支持多种内容管理系统 (CMS) 的 SSO,例如 WordPress、Joomla、Drupal、Xibo 以及许多其他系统,包括定制设计的 CMS。
  7. 预览音频、视频等用户文件以及 Office 文档、PDF 等文档。

在本教程中,我将引导您完成在 RHEL/CentOSFedora 上设置 Pydio 文件共享和同步门户的过程。

第 1 步:安装 Web 服务器和依赖项

1. Pydio 仅需要具有 PHP 5.1 或更高版本的 Web 服务器(Apache、Nginx 或 Lighttpd)以及一些依赖项,例如 GD、MCrypt、Mbstring、DomXML 等。在当今的大多数发行版中,这些库预装在标准 PHP 安装中。如果没有,让我们使用以下一系列命令来安装它们。

在安装依赖项之前,首先需要在 Linux 系统下启用 EPEL 存储库,并使用 yum 包管理器更新存储库数据库:

yum install epel-release
yum update

启用存储库后,您现在可以安装 Apache Web 服务器和 php 库,如下所示:

yum -y install httpd
yum -y install php php-gd php-ldap php-pear php-xml php-xmlrpc php-mbstring curl php-mcrypt* php-mysql

--------------- On Fedora 22+ ---------------
dnf -y install php php-gd php-ldap php-pear php-xml php-xmlrpc php-mbstring curl php-mcrypt* php-mysql

2. 正确安装所有必需的 PHP 扩展后,就可以在防火墙上打开 Apache HTTPHTTPS 端口。

--------------- On FirewallD for CentOS 7 and Fedora 22+ ---------------
firewall-cmd --permanent --zone=public --add-service=http
firewall-cmd --permanent --zone=public --add-service=https
firewall-cmd --reload
--------------- On IPtables for CentOS 6 and Fedora ---------------
iptables -A INPUT -p tcp -m tcp --dport 80 -j ACCEPT
iptables -A INPUT -p tcp -m tcp --dport 443 -j ACCEPT
/etc/init.d/iptables save

第2步:创建Pydio数据库

3. 要创建 pydio 数据库,系统上必须安装 MySQL/MariaDB 服务器,如果没有,我们就安装它。

yum install mysql mysql-server            [On CentOS/RHEL 6 and Fedora]                 
yum install mariadb mariadb-server        [On CentOS 7]
dnf install mariadb mariadb-server        [On Fedora 22+]

接下来使用命令 mysql_secure_installation 进行安全 mysql 安装,并按照屏幕上的说明进行操作,如图所示。

现在连接到 MySQL 并创建一个新的 pydio 用户并设置授予权限,如下所示:

create database pydio;
create user pydio@localhost identified by 'tecmint';
grant all privileges on pydio.* to pydio@'localhost' identified by 'tecmint';

第3步:安装Pydio文件托管服务器

4. 在这里,我们将使用官方 Pydio 存储库在以下一系列命令的帮助下安装最新版本的 Pydio 软件包。

rpm -Uvh http://dl.ajaxplorer.info/repos/pydio-release-1-1.noarch.rpm
yum update
yum --disablerepo=pydio-testing install pydio

步骤4:配置Pydio文件托管服务器

5. 接下来打开并将以下配置添加到 .htaccess 文件中,以启用 Pydio 通过 Web 访问,如下所示:

vi /var/lib/pydio/public/.htaccess

添加以下配置。

Order Deny,Allow
Allow from all
<Files ".ajxp_*">
deny from all

RewriteEngine on
RewriteBase pydio_public
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([a-zA-Z0-9_-]+)\.php$ share.php?hash=$1 [QSA]
RewriteRule ^([a-zA-Z0-9_-]+)--([a-z]+)$ share.php?hash=$1&lang=$2 [QSA]
RewriteRule ^([a-zA-Z0-9_-]+)$ share.php?hash=$1 [QSA]

CentOS 7.xFedora 22+ 发行版中,您需要修改以下行并将其添加到 pydio.conf 文件中。

Alias /pydio /usr/share/pydio
Alias /pydio_public /var/lib/pydio/public

<Directory "/usr/share/pydio">
        Options FollowSymLinks
        AllowOverride Limit FileInfo
	Require all granted
      	php_value error_reporting 2
</Directory>


<Directory "/var/lib/pydio/public">
        AllowOverride Limit FileInfo
	Require all granted
      	php_value error_reporting 2
</Directory>

6. 接下来配置 php.ini 以允许最大文件上传,禁用 php 输出缓冲并增加 memory_limit 以提高 Pydio 的性能,如下所示:

vi /etc/php.ini
post_max_size = 1G
upload_max_filesize = 1G
output_buffering = Off
memory_limit = 1024M

7. 现在,在您的语言环境定义中设置正确的字符集编码,格式为:en_us.UTF-8。首先通过运行以下命令找出系统当前的字符集语言。

echo $LANG

接下来打开 /etc/pydio/bootstrap_conf.php 文件并添加以下行。

define("AJXP_LOCALE", "en_US.UTF-8");

8。建议使用 SSL 加密来保护安全 HTTPS 网络上的所有 Pydio 数据连接。为此,首先安装 mod_ssl 软件包并打开以下文件并进行修改,如下所示:

yum install mod_ssl
vi /etc/pydio/bootstrap_conf.php

现在取消注释文件底部的以下行。这将自动通过 HTTPS 重定向所有连接。

define("AJXP_FORCE_SSL_REDIRECT", true);

9。最后重新启动 Apache Web 服务器以使新更改生效。

systemctl restart httpd.service       [On CentOS 7 and Fedora 22+]
service httpd restart                 [On CentOS 6 and Fedora]

第 5 步:启动 Pydio Web 安装程序向导

10。现在打开 Web 浏览器并输入 URL 以加载 Web 安装程序。

http://localhost/pydio/
OR
http://ip-address/pydio/

单击“启动向导”并按照屏幕上的安装程序说明进行操作...。

创建 Pydio 管理员帐户

设置全局选项

配置 Pydio MySQL 数据库

结论

云存储正在兴起,许多公司都开始设计 Web 文件共享软件解决方案,例如 Pydio。希望本教程对您有所帮助,如果您知道您使用过任何其他软件,或者您在安装或设置过程中遇到问题,请通过留下评论告诉我们。感谢您阅读并与 Howtoing 保持联系。

参考:https://pyd.io/