Cách cài đặt NextCloud trên Debian 10

theanh

Administrator
Nhân viên
NextCloud là máy chủ lưu trữ và chia sẻ tệp miễn phí và mã nguồn mở được phân nhánh từ dự án ownCloud. Nó rất giống với các dịch vụ chia sẻ tệp khác như Google Drive, Dropbox và iCloud. NextCloud cho phép bạn lưu trữ tệp, tài liệu, hình ảnh, Phim và Video từ vị trí trung tâm. Với NextCloud, bạn có thể chia sẻ tệp, danh bạ và bất kỳ phương tiện nào khác với bạn bè và khách hàng của mình. NextCloud tích hợp với thư, lịch, danh bạ và các tính năng khác sẽ giúp nhóm của bạn hoàn thành công việc nhanh hơn và dễ dàng hơn. Bạn có thể cài đặt máy khách NextCloud trên máy tính để bàn để đồng bộ hóa tệp với máy chủ Nextcloud của mình. Máy khách để bàn có sẵn cho hầu hết các hệ điều hành bao gồm Windows, macOS, FreeBSD và Linux.

Trong hướng dẫn này, chúng tôi sẽ giải thích cách cài đặt NextCloud và bảo mật nó bằng Let's Encrypt SSL trên Debian 10.

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

  • Máy chủ chạy Debian 10.
  • Tên miền hợp lệ được trỏ bằng IP máy chủ của bạn. trong hướng dẫn này, chúng ta sẽ sử dụng tên miền nextcloud.example.com.
  • Mật khẩu root được cấu hình trên máy chủ của bạn.

Cài đặt Apache, MariaDB và PHP​

NextCloud chạy trên máy chủ web, được viết bằng PHP và sử dụng MariaDB để lưu trữ dữ liệu của họ. Vì vậy, bạn sẽ cần cài đặt Apache, MariaDB, PHP và các gói bắt buộc khác trên hệ thống của mình. Bạn có thể cài đặt tất cả chúng bằng cách chạy lệnh sau:
Mã:
apt-get install apache2 libapache2-mod-php mariadb-server php-xml php-cli php-cgi php-mysql php-mbstring php-gd php-curl php-zip wget unzip -y
Sau khi tất cả các gói được cài đặt, hãy mở tệp php.ini và điều chỉnh một số cài đặt được đề xuất:
Mã:
nano /etc/php/7.3/apache2/php.ini
Thay đổi các cài đặt sau:
Mã:
memory_limit = 512Mupload_max_filesize = 500Mpost_max_size = 500Mmax_execution_time = 300date.timezone = Asia/Kolkata
Lưu và đóng tệp khi bạn hoàn tất. Sau đó, khởi động dịch vụ Apache và MariaDB và cho phép chúng khởi động sau khi khởi động lại hệ thống bằng lệnh sau:
Mã:
systemctl start apache2
 systemctl start mariadb
 systemctl enable apache2
 systemctl enable mariadb
Sau khi hoàn tất, bạn có thể tiến hành bước tiếp theo.

Cấu hình cơ sở dữ liệu cho NextCloud​

Tiếp theo, bạn sẽ cần tạo cơ sở dữ liệu và người dùng cơ sở dữ liệu cho NextCloud. Để thực hiện, hãy đăng nhập vào shell MariaDB bằng lệnh sau:
Mã:
mysql -u root -p
Cung cấp mật khẩu root của bạn khi được yêu cầu, sau đó tạo cơ sở dữ liệu và người dùng bằng lệnh sau:
Mã:
MariaDB [(none)]> CREATE DATABASE nextclouddb;
 MariaDB [(none)]> CREATE USER 'nextclouduser'@'localhost' IDENTIFIED BY 'password';
Tiếp theo, cấp tất cả các quyền cho nextclouddb bằng lệnh sau:
Mã:
MariaDB [(none)]> GRANT ALL ON nextclouddb.* TO 'nextclouduser'@'localhost';
Tiếp theo, flush các quyền và thoát khỏi shell MariaDB bằng lệnh sau:
Mã:
MariaDB [(none)]> FLUSH PRIVILEGES;
 MariaDB [(none)]> EXIT;
Sau khi hoàn tất, bạn có thể tiến hành bước tiếp theo.

Tải xuống NextCloud​

Đầu tiên, hãy truy cập trang tải xuống NextCloud và tải xuống phiên bản NextCloud mới nhất trên hệ thống của bạn. Tại thời điểm viết bài viết này, phiên bản mới nhất của NextCloud là 17.0.1. Bạn có thể tải xuống bằng lệnh sau:
Mã:
wget https://download.nextcloud.com/server/releases/nextcloud-17.0.1.zip
Sau khi tải xuống hoàn tất, hãy giải nén tệp đã tải xuống bằng lệnh sau:
Mã:
unzip nextcloud-17.0.1.zip
Tiếp theo, di chuyển thư mục đã giải nén đến thư mục gốc web Apache:
Mã:
mv nextcloud /var/www/html/
Tiếp theo, cấp quyền thích hợp cho thư mục nextcloud bằng lệnh sau:
Mã:
chown -R www-data:www-data /var/www/html/nextcloud/
 chmod -R 755 /var/www/html/nextcloud/
Sau khi hoàn tất, bạn có thể tiến hành bước tiếp theo.

Cấu hình Apache cho NextCloud​

Tiếp theo, bạn sẽ cần tạo tệp cấu hình máy chủ ảo Apache để phục vụ NextCloud. Bạn có thể tạo tệp này bằng lệnh sau:
Mã:
nano /etc/apache2/sites-available/nextcloud.conf
Thêm các dòng sau:
Mã:
 ServerAdmin [emailprotected] DocumentRoot /var/www/html/nextcloud/ ServerName nextcloud.example.com Alias /nextcloud "/var/www/html/nextcloud/"  Options +FollowSymlinks AllowOverride All Require all granted  Dav off  SetEnv HOME /var/www/html/nextcloud SetEnv HTTP_HOME /var/www/html/nextcloud  ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log combined
Lưu và đóng tệp khi bạn hoàn tất. Sau đó, hãy kích hoạt tệp máy chủ ảo Apache và các mô-đun cần thiết khác bằng các lệnh sau:
Mã:
a2ensite nextcloud.conf
 a2enmod rewrite
 a2enmod headers
 a2enmod env
 a2enmod dir
 a2enmod mime
Cuối cùng, hãy khởi động lại dịch vụ Apache để áp dụng cấu hình mới:
Mã:
systemctl restart apache2

Bảo mật NextCloud bằng Let's Encrypt Free SSL​

NextCloud hiện đã được cài đặt và cấu hình. Tiếp theo, bạn nên bảo mật bằng Let's Encrypt Free SSL. Để thực hiện, trước tiên hãy cài đặt ứng dụng khách Certbot bằng lệnh sau:
Mã:
apt-get install python-certbot-apache -y
Sau khi cài đặt, bạn có thể chạy lệnh sau để cài đặt Chứng chỉ Let's Encrypt cho tên miền nextcloud.example.com của mình.
Mã:
certbot --apache -d nextcloud.example.com
Trong quá trình cài đặt, bạn sẽ được yêu cầu cung cấp địa chỉ email và chấp nhận điều khoản dịch vụ như hiển thị bên dưới:
Mã:
Lưu nhật ký gỡ lỗi vào /var/log/letsencrypt/letsencrypt.logCác plugin đã chọn: Authenticator apache, Installer apacheNhập địa chỉ email (dùng để gia hạn khẩn cấp và thông báo bảo mật) (Nhập 'c' đểhủy): [emailprotected]- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -Vui lòng đọc Điều khoản dịch vụ tạihttps://letsencrypt.org/documents/LE-SA-v1.2-November-15-2017.pdf. Bạn phảiđồng ý để đăng ký với máy chủ ACME tạihttps://acme-v02.api.letsencrypt.org/directory- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -(A)gree/(C)ancel: A- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -Bạn có muốn chia sẻ địa chỉ email của mình với Electronic Frontier Foundation, đối tác sáng lập của dự án Let's Encrypt và tổ chức phi lợi nhuậnphát triển Certbot không? Chúng tôi muốn gửi cho bạn email về công việc của chúng tôimã hóa web, tin tức EFF, các chiến dịch và các cách hỗ trợ tự do kỹ thuật số.- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -(C)ó/(K)ó: CNhận chứng chỉ mớiThực hiện các thử thách sau:Thử thách http-01 cho nextcloud.example.comĐã bật mô-đun ghi đè ApacheĐang chờ xác minh...Dọn dẹp các thử tháchĐã tạo một vhost SSL tại /etc/apache2/sites-available/nextcloud-le-ssl.confTriển khai chứng chỉ tới VirtualHost /etc/apache2/sites-available/nextcloud-le-ssl.confBật trang web khả dụng: /etc/apache2/sites-available/nextcloud-le-ssl.confVui lòng chọn có chuyển hướng lưu lượng HTTP sang HTTPS hay không, xóa quyền truy cập HTTP.- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -1: Không chuyển hướng - Không thực hiện thêm bất kỳ thay đổi nào đối với cấu hình máy chủ web.2: Chuyển hướng - Chuyển hướng tất cả các yêu cầu đến quyền truy cập HTTPS an toàn. Chọn tùy chọn này chocác trang web mới hoặc nếu bạn tin tưởng rằng trang web của mình hoạt động trên HTTPS. Bạn có thể hoàn tácthay đổi này bằng cách chỉnh sửa cấu hình máy chủ web của mình.- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -Chọn số thích hợp [1-2] rồi [enter] (nhấn 'c' để hủy): 2
Tiếp theo, nhập 2 và nhấn Enter để tải xuống và cài đặt chứng chỉ SSL miễn phí cho tên miền của bạn. Sau khi quá trình cài đặt hoàn tất thành công. Bạn sẽ nhận được kết quả sau:
Mã:
Đã bật mô-đun ghi đè ApacheĐang chuyển hướng vhost trong /etc/apache2/sites-enabled/nextcloud.conf sang ssl vhost trong /etc/apache2/sites-available/nextcloud-le-ssl.conf- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -Xin chúc mừng! Bạn đã bật thành công https://nextcloud.example.comBạn nên kiểm tra cấu hình của mình tại:https://www.ssllabs.com/ssltest/analyze.html?d=nextcloud.example.com- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
LƯU Ý QUAN TRỌNG:
 - Xin chúc mừng! Chứng chỉ và chuỗi của bạn đã được lưu tại:
 /etc/letsencrypt/live/example.com/fullchain.pem
 Tệp khóa của bạn đã được lưu tại:
 /etc/letsencrypt/live/example.com/privkey.pem
 Chứng chỉ của bạn sẽ hết hạn vào ngày 2019-10-22. Để có phiên bản
 chứng chỉ mới hoặc đã chỉnh sửa trong tương lai, chỉ cần chạy lại certbot
 với tùy chọn "certonly". Để gia hạn không tương tác *tất cả*
 chứng chỉ của bạn, hãy chạy "certbot renew"
 - Thông tin đăng nhập tài khoản của bạn đã được lưu trong thư mục cấu hình Certbot
 của bạn tại /etc/letsencrypt. Bây giờ, bạn nên sao lưu an toàn thư mục này. Thư mục cấu hình này cũng sẽ chứa các chứng chỉ và khóa riêng do Certbot thu được, do đó, việc sao lưu thường xuyên thư mục này là lý tưởng. - Nếu bạn thích Certbot, vui lòng cân nhắc hỗ trợ công việc của chúng tôi bằng cách: Quyên góp cho ISRG / Let's Encrypt: https://letsencrypt.org/donate Quyên góp cho EFF: https://eff.org/donate-le Sau khi hoàn tất, bạn có thể tiến hành bước tiếp theo. [HEADING=2]Truy cập Giao diện web NextCloud[/HEADING]
NextCloud của bạn hiện đã được định cấu hình và bảo mật bằng Let's Encrypt SSL. Tiếp theo, hãy mở trình duyệt web của bạn và nhập URL [B]https://nextcloud.example.com[/b]. Bạn sẽ được chuyển hướng đến trang sau:





Bây giờ, hãy cung cấp tên người dùng và mật khẩu quản trị viên, Thư mục dữ liệu, Thông tin xác thực cơ sở dữ liệu chính xác và nhấp vào nút [B]Hoàn tất[/b] [B]thiết lập[/b]. Bạn sẽ được chuyển hướng đến bảng điều khiển NextCloud ở trang sau:



Vậy là xong.
[HEADING=2]Kết luận[/HEADING]
Xin chúc mừng! Bạn đã cài đặt và bảo mật thành công NextCloud với Let's Encrypt Free SSL trên Debian 10. Bây giờ bạn có thể dễ dàng chia sẻ tệp, tài liệu và phương tiện với những người dùng khác bằng giao diện web NextCloud.
 
Back
Bên trên