Cách cài đặt Pydio Cells File Sharing trên Rocky Linux 9

theanh

Administrator
Nhân viên
Pydio Cells là nền tảng cộng tác và chia sẻ tài liệu nguồn mở cho tổ chức của bạn. Nó cho phép bạn chia sẻ tài liệu và tệp trên toàn tổ chức của mình và cung cấp cho bạn toàn quyền kiểm soát môi trường chia sẻ tài liệu của mình. Pydio Cells có hiệu suất nhanh, có thể xử lý kích thước truyền tệp lớn và cung cấp khả năng tự động hóa quy trình làm việc nâng cao.

Trong hướng dẫn này, chúng tôi sẽ chỉ cho bạn cách cài đặt Pydio Cells trên máy chủ Rocky Linux 9 với máy chủ MariaDB và máy chủ web Apache hoặc httpd. Bạn cũng sẽ bảo mật cài đặt của mình bằng SSL/TLS từ Letsencrypt.

Điều kiện tiên quyết​

Trước khi bắt đầu, hãy đảm bảo rằng bạn có:
  • Máy chủ Rocky Linux 9.
  • Người dùng không phải root có quyền sudo.
  • Tên miền được trỏ đến địa chỉ IP của máy chủ.
  • SELinux có trạng thái cho phép.

Cài đặt Dependencies​

Pydio cells là nền tảng chia sẻ tài liệu và cộng tác mà bạn có thể chạy với máy chủ web Apache và máy chủ MariaDB. Vì vậy, trước tiên, bạn sẽ cài đặt và khởi động cả Apache và MariaDB trên máy Rocky Linux của mình.

Để bắt đầu, hãy cài đặt kho lưu trữ EPEL, sau đó cài đặt máy chủ MariaDB và máy chủ web Apache bằng lệnh sau. Ngoài ra, bạn sẽ cài đặt certbot để tạo chứng chỉ SSL/TLS.
Mã:
sudo dnf install epel-release
sudo dnf install mariadb-server httpd certbot wget
Nhập Y để xác nhận cài đặt.


data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22255%22%3E%3C/svg%3E


Sau khi cài đặt hoàn tất, hãy khởi động và kích hoạt dịch vụ httpd bằng lệnh bên dưới.
Mã:
sudo systemctl start httpd
sudo systemctl enable httpd
Sau đó, hãy xác minh dịch vụ httpd để đảm bảo rằng dịch vụ đang chạy và đã bật.
Mã:
sudo systemctl status httpd
Như bạn có thể thấy bên dưới, dịch vụ httpd đang chạy.


data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22251%22%3E%3C/svg%3E


Tiếp theo, hãy khởi động và bật máy chủ mariadb bằng lệnh sau lệnh.
Mã:
sudo systemctl start mariadb
sudo systemctl enable mariadb
Cuối cùng, hãy xác minh dịch vụ mariadb bằng lệnh bên dưới để đảm bảo dịch vụ đang chạy.
Mã:
sudo systemctl status mariadb
Bên dưới, bạn có thể thấy dịch vụ mariadb cũng đang chạy.


data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22281%22%3E%3C/svg%3E

Cấu hình Firewalld​

Theo mặc định, firewalld đang hoạt động trên Rocky Linux. Vì vậy, bây giờ bạn phải mở cả dịch vụ HTTP và HTTPS trên firewalld và cho phép truy cập vào máy chủ web httpd của bạn.

Chạy lệnh bên dưới để mở cả dịch vụ HTTP và HTTPS trên firewalld. Sau đó, tải lại firewalld để áp dụng các thay đổi của bạn.
Mã:
sudo firewall-cmd --add-service={http,https} --permanent
sudo firewall-cmd --reload
Bây giờ hãy xác minh trạng thái firewalld bằng lệnh bên dưới. Đảm bảo cả dịch vụ HTTP và HTTPS đều được thêm vào tường lửa.
Mã:
sudo firewall-cmd --list-all

data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22684%22%20height=%22283%22%3E%3C/svg%3E

Cấu hình máy chủ MariaDB​

Theo mặc định, máy chủ MariaDB không có xác thực bằng mật khẩu. Để bảo mật và thiết lập mật khẩu, bạn có thể sử dụng tiện ích mariadb-secure-installation. Sau đó, bạn cũng cần tạo cơ sở dữ liệu và người dùng mới cho cài đặt Pydio Cells của mình.

Để bảo mật cài đặt máy chủ MariaDB, hãy chạy lệnh bên dưới.
Mã:
sudo mariadb-secure-installation
Sau khi lệnh được thực thi, bạn sẽ được nhắc nhập một số cấu hình MariaDB bên dưới:
  • Chuyển xác thực cục bộ sang unix_socket? Nhập n.
  • Thiết lập mật khẩu gốc MariaDB mới? Nhập y để xác nhận, sau đó nhập mật khẩu mới cho triển khai máy chủ MariaDB của bạn.
  • Xóa người dùng ẩn danh? Nhập y để xác nhận.
  • Xóa kiểm tra cơ sở dữ liệu mặc định khỏi triển khai?. Nhập y để xác nhận.
  • Không cho phép đăng nhập gốc MariaDB từ các kết nối từ xa? Nhập y để xác nhận.
  • Tải lại các đặc quyền của bảng và áp dụng các thay đổi? Nhập y và nhấn ENTER.
Bây giờ bạn đã bảo mật MariaDB và định cấu hình mật khẩu gốc, hãy chuyển sang tạo cơ sở dữ liệu và người dùng mới cho Pydio Cells.

Đăng nhập vào máy chủ MariaDB bằng lệnh bên dưới. Nhập mật khẩu gốc MariaDB của bạn khi được nhắc.
Mã:
sudo mariadb -u root -p
Chạy các truy vấn sau để tạo cơ sở dữ liệu MariaDB và người dùng mới cho Pydio Cells. Trong ví dụ này, bạn sẽ tạo một cơ sở dữ liệu cells mới với người dùng pydio. Ngoài ra, hãy đảm bảo thay đổi mật khẩu sau bằng mật khẩu của riêng bạn.
Mã:
CREATE DATABASE cells;
CREATE USER 'pydio'@'localhost' IDENTIFIED BY 'p4ssw0rd';
GRANT ALL PRIVILEGES ON cells.* to 'pydio'@'localhost';
FLUSH PRIVILEGES;

data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22717%22%20height=%22252%22%3E%3C/svg%3E


Tiếp theo, chạy truy vấn sau để xác minh quyền cho người dùng pydio. Đảm bảo rằng người dùng pydio có thể truy cập vào các ô cơ sở dữ liệu.
Mã:
SHOW GRANTS FOR 'pydio'@'localhost';
Cuối cùng, nhập quit để thoát khỏi máy chủ MariaDB.


data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22198%22%3E%3C/svg%3E

Thêm người dùng Pydio​

Trong phần này, bạn sẽ tạo một người dùng Linux mới để chạy Pydio Cells. Lệnh này cũng sẽ tải một số biến môi trường toàn cục cho Pydio.

Để tạo người dùng pydio mới, hãy chạy lệnh sau.
Mã:
sudo useradd -m -s /bin/bash pydio
Bây giờ hãy chạy lệnh sau để tạo các thư mục bắt buộc /opt/pydio/bin và /var/cells sẽ được Pydio Cells sử dụng.
Mã:
sudo mkdir -p /opt/pydio/bin /var/cells
sudo chown -R pydio: /opt/pydio /var/cells
Tạo một tập lệnh hồ sơ bash mới /etc/profile.d/cells-env.sh và thực thi bằng lệnh bên dưới. Tệp này sẽ được người dùng tự động tải.
Mã:
sudo touch /etc/profile.d/cells-env.sh
sudo chmod +x /etc/profile.d/cells-env.sh
Mở /etc/profile.d/cells-env.sh bằng lệnh nano editor.
Mã:
sudo nano /etc/profile.d/cells-env.sh
Thêm cấu hình sau để tạo biến môi trường cho Pydio Cells.
Mã:
export CELLS_WORKING_DIR=/var/cells
export CELLS_BIND=127.0.0.1:8080
export CELLS_EXTERNAL=https://cells.howtoforge.local
Khi hoàn tất, hãy lưu và thoát khỏi tệp.

Dưới đây là các biến môi trường chi tiết cho Pydio Cells:
  • CELLS_WORKING_DIR: thư mục làm việc mặc định cho Pydio.
  • CELLS_BIND: nơi Pydio Cells sẽ chạy. Trong ví dụ này, Pydio sẽ chạy ở 127.0.0.1:8080.
  • CELLS_EXTERNAL: tên miền bên ngoài mà máy khách có thể truy cập để truy cập cài đặt Pydio Cells của bạn.

Tải xuống Pydio Cells​

Bây giờ bạn đã cài đặt và cấu hình các phụ thuộc, đồng thời tạo một người dùng mới cho Pydio. Bây giờ bạn có thể tiến hành tải xuống Pydio vào hệ thống Rocky Linux của mình.

Tải xuống và cài đặt Pydio Cells vào /opt/pydio/bin/cells bằng lệnh sau. Pydio Cells là một chương trình nhị phân duy nhất mà bạn có thể cài đặt trên đường dẫn nhị phân.
Mã:
export distribId=cells
wget -O /opt/pydio/bin/cells https://download.pydio.com/latest/${distribId}/release/{latest}/linux-amd64/${distribId}
Sau khi tải xuống, hãy thực thi chương trình bằng lệnh bên dưới.
Mã:
chmod a+x /opt/pydio/bin/cells
Bây giờ hãy chạy lệnh bên dưới để cho phép chương trình /opt/pydio/bin/cells liên kết và chạy trong cổng đặc quyền. Sau đó, tạo liên kết tượng trưng của Pydio Cells tới đường dẫn bin hệ thống.
Mã:
sudo setcap 'cap_net_bind_service=+ep' /opt/pydio/bin/cells
sudo ln -s /opt/pydio/bin/cells /usr/local/bin/cells
Tiếp theo, đăng nhập với tư cách người dùng pydio và xác minh các biến môi trường khả dụng bằng lệnh sau. Đảm bảo rằng mỗi biến môi trường được trỏ đến giá trị thích hợp như trong tệp /etc/profile.d/cells-env.sh.
Mã:
su - pydio

echo $CELLS_WORKING_DIR
echo $CELLS_BIND
echo $CELLS_EXTERNAL

data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22448%22%20height=%22187%22%3E%3C/svg%3E


Cuối cùng, bạn có thể xác minh phiên bản Pydio Cells bằng lệnh bên dưới.
Mã:
cells version

data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22566%22%20height=%22180%22%3E%3C/svg%3E


Như được hiển thị bên dưới, Pydio Cells 4.3.5 đã được cài đặt trên hệ thống Rocky Linux của bạn.

Cài đặt Pydio Cells thông qua Dòng lệnh​

Bây giờ rằng bạn đã tải xuống Pydio Cells, bạn có thể tiếp tục cấu hình cài đặt Pydio Cells thông qua dòng lệnh. Theo cách này, bạn có thể dễ dàng cài đặt Pydio từ thiết bị đầu cuối của mình.

Chạy lệnh cells bên dưới để cấu hình cài đặt Pydio Cells thông qua dòng lệnh.
Mã:
cells configure --cli
Bây giờ bạn sẽ được hỏi về một số cấu hình bên dưới:
  • Kết nối cơ sở dữ liệu: chọn qua TCP, sau đó nhập thông tin chi tiết về máy chủ cơ sở dữ liệu MariaDB, cổng, người dùng và mật khẩu của bạn.
  • Cấu hình MongoDB: Nhập n cho số.
  • Cấu hình người dùng quản trị: nhập tên người dùng và mật khẩu quản trị của bạn cho Pydio Cells.
  • Vị trí lưu trữ mặc định: nhấn ENTER để sử dụng mặc định và tiếp tục.
Sau khi mọi thứ được cấu hình xong, quá trình cài đặt sẽ bắt đầu. Khi hoàn tất, bạn sẽ nhận được thông báo 'Cài đặt hoàn tất'.


data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22679%22%3E%3C/svg%3E

Chạy Pydio Cells dưới dạng Dịch vụ Systemd​

Trong phần này, bạn sẽ tạo một tệp dịch vụ systemd mới sẽ được sử dụng để chạy Pydio Cells. Với lệnh này, bạn có thể dễ dàng quản lý Pydio Cells thông qua tiện ích lệnh systemctl.

Tạo tệp dịch vụ systemd mới /etc/systemd/system/cells.service bằng lệnh nano editor sau.
Mã:
sudo nano /etc/systemd/system/cells.service
Thêm cấu hình bên dưới để thiết lập Pydio Cells thành dịch vụ systemd. Bạn cũng có thể thấy Pydio sẽ chạy trong người dùng pydio và hãy đảm bảo điều chỉnh các biến môi trường bằng cài đặt của bạn.
Mã:
[Unit]
Description=Pydio Cells
Documentation=https://pydio.com
Wants=network-online.target
After=network-online.target
AssertFileIsExecutable=/opt/pydio/bin/cells

[Service]
User=pydio
Group=pydio
PermissionsStartOnly=true
AmbientCapabilities=CAP_NET_BIND_SERVICE
ExecStart=/opt/pydio/bin/cells start
Restart=on-failure
StandardOutput=journal
StandardError=inherit
LimitNOFILE=65536
TimeoutStopSec=5
KillSignal=INT
SendSIGKILL=yes
SuccessExitStatus=0
WorkingDirectory=/home/pydio

# Add environment variables
Environment=CELLS_WORKING_DIR=/var/cells
Environment=CELLS_BIND=127.0.0.1:8080
Environment=CELLS_EXTERNAL=https://cells.howtoforge.local

[Install]
WantedBy=multi-user.target
Khi bạn hoàn tất, hãy lưu và thoát tệp.

Bây giờ hãy chạy lệnh bên dưới để tải lại trình quản lý systemd.
Mã:
sudo systemctl daemon-reload
Sau đó, hãy khởi động và bật dịch vụ cells bằng lệnh sau lệnh.
Mã:
sudo systemctl start cells
sudo systemctl enable cells
Cuối cùng, hãy xác minh trạng thái dịch vụ của ô bằng lệnh bên dưới. Bạn nên chạy dịch vụ cells trên hệ thống của mình.
Mã:
sudo systemctl status cells

data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22232%22%3E%3C/svg%3E

Cấu hình Proxy ngược httpd​

Bây giờ Pydio Cells đang chạy, bạn sẽ cần tạo cấu hình httpd mới sẽ được sử dụng như một proxy ngược. Ngoài ra, bạn cần tạo chứng chỉ SSL/TLS để bảo mật cài đặt của mình.

Đầu tiên, hãy tạo một thư mục mới /var/www/html/cells/public_html bằng lệnh bên dưới.
Mã:
sudo mkdir -p /var/www/html/cells/public_html
sudo chown -R apache:apache /var/www/html/cells/public_html
Tạo chứng chỉ SSL/TLS bằng lệnh certbot bên dưới. Đảm bảo thay đổi địa chỉ email và tên miền đích của cài đặt Pydio Cells của bạn.
Mã:
sudo certbot certonly --agree-tos --email [emailprotected] --no-eff-email --webroot -w /var/www/html/cells/public_html -d cells.howtoforge.local
Sau khi quá trình hoàn tất, hãy tạo tệp máy chủ ảo httpd mới /etc/httpd/conf.d/cells.conf bằng lệnh trình chỉnh sửa nano sau.
Mã:
sudo nano /etc/httpd/conf.d/cells.conf
Chèn cấu hình sau và đảm bảo thay đổi tên miền đích của bạn cài đặt.
Mã:
ServerName cells.howtoforge.local

RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}

RewriteCond %{SERVER_NAME} =cells.howtoforge.local
RewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI} [END,NE,R=permanent]



ServerName cells.howtoforge.local
AllowEncodedSlashes On
RewriteEngine On

# be aware of this
# Allow reverse proxy via self-signed certificates
SSLProxyEngine On
SSLProxyVerify none
SSLProxyCheckPeerCN off
SSLProxyCheckPeerName off
SSLProxyCheckPeerExpire off

## The order of the directives matters.
# If Cells is not running with https, consider using ws instead of wss
ProxyPassMatch "/ws/(.*)" wss://localhost:8080/ws/$1 nocanon

## This rewrite condition is required if using Cells-Sync
# RewriteCond %{HTTP:Content-Type} =application/grpc [NC]
# RewriteRule /(.*) h2://localhost:8080/$1 [P,L]

ProxyPass "/" "https://127.0.0.1:8080/"
ProxyPassReverse "/" "https://127.0.0.1:8080/"

ErrorLog /var/log/httpd/error.log
CustomLog /var/log/httpd/access.log combined

SSLCertificateFile /etc/letsencrypt/live/cells.howtoforge.local/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/cells.howtoforge.local/privkey.pem
#Include /etc/letsencrypt/options-ssl-apache.conf
Khi hoàn tất, hãy lưu tệp và thoát.

Bây giờ, hãy chạy lệnh bên dưới để xác minh cú pháp httpd của bạn. Sau đó, khởi động lại dịch vụ httpd để áp dụng các thay đổi của bạn.
Mã:
sudo apachectl configtest
sudo systemctl restart httpd
Nếu bạn có cú pháp httpd phù hợp, bạn sẽ thấy đầu ra Syntax OK.


data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22532%22%20height=%22145%22%3E%3C/svg%3E


Cuối cùng, hãy khởi chạy trình duyệt web của bạn và truy cập tên miền Pydio Cells, chẳng hạn như https://ceels.howtoforge.local/. Nếu cài đặt thành công, bạn sẽ thấy trang đăng nhập Pydio Cells.

Nhập tên người dùng và mật khẩu quản trị mà bạn đã tạo, sau đó nhấp vào ENTER.


data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22535%22%3E%3C/svg%3E


Sau khi đăng nhập, bạn sẽ thấy bảng điều khiển người dùng Pydio Cells như sau:


data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22495%22%3E%3C/svg%3E

Kết luận​

Xin chúc mừng! Bây giờ bạn đã cài đặt thành công Pydio Cells trên máy chủ Rocky Linux 9. Bạn đã cài đặt Pydio Cells với máy chủ cơ sở dữ liệu MariaDB và proxy ngược httpd. Ngoài ra, bạn đã bảo mật cài đặt của mình bằng chứng chỉ SSL/TLS từ Letsencrypt.
 
Back
Bên trên