Hướng dẫn cài NextCloud trên Ubuntu trong 5′

NextCloud

Trong hướng dẫn này, chúng tôi sẽ giải thích chi tiết, Cách cài đặt NextCloud trên Ubuntu 24.04 LTS. Đây là hướng dẫn từng bước chi tiết. Trong quá trình cài đặt, chúng tôi tập trung vào việc tăng hiệu suất và bảo mật của hệ thống.

Nextcloud là gì?

Nextcloud là một nền tảng cộng tác tự lưu trữ được thiết kế để nâng cao năng suất thông qua các dịch vụ tích hợp như Files, Talk, Groupware và Office. Nó cung cấp chức năng tương tự như Dropbox, Office 365 hoặc Google Drive khi sử dụng với các bộ ứng dụng văn phòng như Collabora Online hoặc OnlyOffice.Nextcloud có bốn sản phẩm chính.Tập tincung cấp dịch vụ lưu trữ và đồng bộ hóa tệp tin tự lưu trữ.Nói chuyệncung cấp dịch vụ trò chuyện và hội nghị truyền hình/âm thanh riêng tư.Phần mềm nhómbao gồm các công cụ năng suất như Lịch và Thư, vàVăn phòngcung cấp bộ ứng dụng văn phòng trực tuyến để chỉnh sửa tài liệu cùng lúc.

DataOnline cung cấp VPS giá rẻ cài đặt sẵn nextcloud

Nextcloud có thể được lưu trữ trên đám mây hoặc tại chỗ, cung cấp các tùy chọn triển khai linh hoạt. Nó cho phép lưu trữ tài liệu trên máy chủ riêng hoặc trung tâm dữ liệu đáng tin cậy, đảm bảo khả năng kiểm soát và bảo mật cao hơn. Dưới đây chúng tôi cung cấp hướng dẫn từng bước về Cách cài đặt NextCloud trên Ubuntu 24.04 LTS.

nextcloud

Cài đặt NextCloud Bước 1: cài web server Nginx

apt -y install nginx

Cài đặt NextCloud Bước 2: thay đổi hostname

Vi /etc/nginx/sites-available/default

line 46 : change to your hostname

server_name duongdt.org;

Cài đặt NextCloud Bước 3: khởi động lại web server

Systemctl status nginx

Nếu hiện như này là được!

Cài đặt NextCloud Bước 4: Cài php

apt -y install php8.1 php8.1-mbstring php-pear

kiểm tra phiên bản

Cài PHP-FPM

apt -y install php-fpm

cấu hình fpm php

Khởi động lại fpm

systemctl restart php8.1-fpm nginx

Tạo 1 trang php để kiểm tra

echo ‘

Cài đặt NextCloud Bước 5: cài đặt DB mariaDB

apt -y install mariadb-server

Cài đặt NextCloud Bước 6: cài các module yêu cầu php

apt -y install php-pear php8.1-mbstring php8.1-intl php8.1-gd php8.1-zip php8.1-mysql php8.1-bcmath php8.1-gmp php8.1-opcache php-imagick php8.1-curl php-apcu unzip

Cài đặt NextCloud Bước 7: Tạo mới next cloud

vi /etc/php/8.1/fpm/pool.d/nextcloud.conf

thêm các thông tin như sau vào file:

;; create new
[nextcloud]
user = www-data
group = www-data
listen.owner = www-data
listen.group = www-data
listen = /run/php/nextcloud.sock
listen.allowed_clients = 127.0.0.1
pm = dynamic
pm.max_children = 50
pm.start_servers = 5
pm.min_spare_servers = 5
pm.max_spare_servers = 35
env[HOSTNAME] = $HOSTNAME
env[PATH] = /usr/local/bin:/usr/bin:/bin
env[TMP] = /tmp
env[TMPDIR] = /tmp
env[TEMP] = /tmp
php_value[session.save_handler] = files
php_value[session.save_path] = /var/lib/php/sessions
;; maybe you need to configure parameters below if users want to upload large files
php_value[max_execution_time] = 3600
php_value[memory_limit] = 2G
php_value[post_max_size] = 2G
php_value[upload_max_filesize] = 20G
php_value[max_input_time] = 3600
php_value[max_input_vars] = 2000
php_value[date.timezone] = Asia/Tokyo
php_value[opcache.enable] = 1
php_value[opcache.memory_consumption] = 128
php_value[opcache.interned_strings_buffer] = 8
php_value[opcache.max_accelerated_files] = 10000
php_value[opcache.revalidate_freq] = 1
php_value[opcache.save_comments] = 1

Khởi động lại fpm

systemctl restart php8.1-fpm

Cài đặt NextCloud Bước 8: tạo user và db cho nextcloud

Mysql

MariaDB [(none)]> create database nextcloud;

MariaDB [(none)]> grant all privileges on nextcloud.* to nextcloud@'localhost' identified by 'your_password';

MariaDB [(none)]>exit;

Cài đặt NextCloud Bước 9: cấu hình nginx cho Nextcloud (paste dưới block server)

vi /etc/nginx/sites-available/default 
fastcgi_read_timeout 3600;

    proxy_read_timeout 3600;

    fastcgi_hide_header X-Powered-By;

     add_header Referrer-Policy "no-referrer" always;

    add_header X-Content-Type-Options "nosniff" always;

    add_header X-Download-Options "noopen" always;

    add_header X-Frame-Options "SAMEORIGIN" always;

    add_header X-Permitted-Cross-Domain-Policies "none" always;

    add_header X-Robots-Tag "none" always;

    add_header X-XSS-Protection "1; mode=block" always;

 
    location ^~ /nextcloud {

           client_max_body_size 2G;

           fastcgi_buffers 64 4K;

            gzip on;

           gzip_vary on;

           gzip_comp_level 4;

           gzip_min_length 256;

           gzip_proxied expired no-cache no-store private no_last_modified no_etag auth;

           gzip_types application/atom+xml application/javascript application/json application/ld+json application/manifest+json application/rss+xml application/vnd.geo+json application/vnd.ms-fontobject application/x-font-ttf application/x-web-app-manifest+json application/xhtml+xml application/xml font/opentype image/bmp image/svg+xml image/x-icon text/cache-manifest text/css text/plain text/vcard text/vnd.rim.location.xloc text/vtt text/x-component text/x-cross-domain-policy;

           location /nextcloud {

                         rewrite ^ /nextcloud/index.php;

           }

           location ~ ^\/nextcloud\/(?:build|tests|config|lib|3rdparty|templates|data)\/ {

                         deny all;

           }

                         location ~ ^\/nextcloud\/(?:\.|autotest|occ|issue|indie|db_|console) {

                         deny all;

           }

           location ~ ^\/nextcloud\/(?:index|remote|public|cron|core\/ajax\/update|status|ocs\/v[12]|updater\/.+|oc[ms]-provider\/.+|.+\/richdocumentscode\/proxy)\.php(?:$|\/) {

                         include snippets/fastcgi-php.conf;

                         fastcgi_pass unix:/run/php/nextcloud.sock;

                         fastcgi_param modHeadersAvailable true;

                         fastcgi_param front_controller_active true;

                         fastcgi_intercept_errors on;

                         fastcgi_request_buffering off;

           }

           location ~ ^\/nextcloud\/(?:updater|oc[ms]-provider)(?:$|\/) {

                         try_files $uri/ =404;

                         index index.php;

           }

           location ~ ^\/nextcloud\/.+[^\/]\.(?:css|js|woff2?|svg|gif|map)$ {

                         try_files $uri /nextcloud/index.php$request_uri;

                         add_header Cache-Control "public, max-age=15778463";

                         add_header Referrer-Policy "no-referrer" always;

                         add_header X-Content-Type-Options "nosniff" always;

                         add_header X-Download-Options "noopen" always;

                         add_header X-Frame-Options "SAMEORIGIN" always;

                         add_header X-Permitted-Cross-Domain-Policies "none" always;

                         add_header X-Robots-Tag "none" always;

                         add_header X-XSS-Protection "1; mode=block" always;

                         access_log off;
           }
           location ~ ^\/nextcloud\/.+[^\/]\.(?:png|html|ttf|ico|jpg|jpeg|bcmap|mp4|webm)$ {

                         try_files $uri /nextcloud/index.php$request_uri;
                        access_log off;
           }
     }

Download NextCLoud về:

wget https://download.nextcloud.com/server/releases/latest.zip -P /var/www/html/

Giai nén:

unzip /var/www/html/latest.zip -d /var/www/html/

Thay đổi quyền truy cập:

chown -R www-data. /var/www/html/nextcloud

Khởi động lại web server:

systemctl restart nginx

Sau đó, truy cập tai trình duyệt theo đường dẫn <ip_domain>/nextcloud

NextCloud

Màn hình hiển thị như này là thành công!

Để lại một bình luận

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *