Thứ Bảy, Tháng Sáu 15, 2024
Google search engine
HomelinuxapacheCách cài đặt Nextcloud với Apache và Let's Encrypt SSL trên Ubuntu...

Cách cài đặt Nextcloud với Apache và Let's Encrypt SSL trên Ubuntu 22.04 LTS

Cách cài đặt Nextcloud với Apache và Let’s Encrypt SSL trên Ubuntu 22.04 LTS

Nextcloud là giải pháp đồng bộ hóa và chia sẻ tệp mã nguồn mở, miễn phí giúp bạn lưu trữ tài liệu cá nhân, tệp, ảnh và các tài liệu khác của mình ở một vị trí trung tâm. Nó rất giống với các giải pháp lưu trữ đám mây khác như Dropbox, Google Drive, iCloud,… Bạn nên chuyển sang NextCloud nếu lo lắng về quyền riêng tư vì bạn có thể cài đặt Nextcloud trên máy chủ của riêng mình. Bạn có thể tải tệp và tài liệu khác lên máy chủ Nextcloud của mình rồi đồng bộ hóa tất cả chúng với máy tính để bàn, máy tính xách tay hoặc điện thoại thông minh của bạn.

Trong hướng dẫn này, chúng tôi sẽ chỉ cho bạn cách cài đặt Nextcloud trên máy chủ Ubuntu 22.04.

Yêu cầu

  • Máy chủ chạy Ubuntu 22.04.
  • Tên miền hợp lệ được trỏ đến IP máy chủ.
  • Mật khẩu gốc được định cấu hình trên máy chủ của bạn.

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

Trước khi bắt đầu, ngăn xếp LAMP phải được cài đặt trên máy chủ của bạn. Nếu chưa được cài đặt, bạn có thể cài đặt nó bằng lệnh sau:

apt install apache2 mariadb-server php php-cli php-fpm php-json php-intl php-imagick php-pdo php-mysql php-zip php-gd php-mbstring php-curl php-xml php-pear php-bcmath apache2 libapache2-mod-php -y

Sau khi cài đặt tất cả các gói, hãy chỉnh sửa tệp cấu hình PHP và thay đổi một số cài đặt mặc định:

nano /etc/php/8.1/apache2/php.ini

Thay đổi các dòng sau:

date.timezone = UTC
memory_limit = 512M
upload_max_filesize = 500 triệu
post_max_size = 500 triệu
max_execution_time = 300

Lưu và đóng tệp, sau đó khởi động lại dịch vụ Apache để áp dụng các thay đổi:

systemctl restart apache2

Tạo cơ sở dữ liệu cho Nextcloud

Nextcloud sử dụng cơ sở dữ liệu MariaDB làm phần phụ trợ cơ sở dữ liệu, vì vậy bạn sẽ cần tạo cơ sở dữ liệu và người dùng trong MariaDB.

Đầu tiên, kết nối với trình bao MariaDB bằng lệnh sau:

mysql

Khi bạn đã kết nối với MariaDB, hãy tạo cơ sở dữ liệu và người dùng bằng lệnh sau:

CREATE DATABASE nextcloud;
CREATE USER 'nextcloud'@'localhost' identified by 'password';

Tiếp theo, cấp tất cả các đặc quyền cho cơ sở dữ liệu Nextcloud bằng lệnh sau:

GRANT ALL PRIVILEGES ON nextcloud.* TO 'nextcloud'@'localhost';

Tiếp theo, xóa các đặc quyền và thoát khỏi MariaDB bằng lệnh sau:

FLUSH PRIVILEGES;
QUIT;

Tải xuống Nextcloud

Tại thời điểm viết bài, phiên bản mới nhất của Nextcloud là 24.0.1. Bạn có thể tải xuống bằng lệnh sau:

wget https://download.nextcloud.com/server/releases/nextcloud-24.0.1.zip

Sau khi quá trình 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:

unzip nextcloud-24.0.1.zip

Tiếp theo, di chuyển thư mục đã giải nén đến thư mục gốc của Apache bằng lệnh sau:

mv nextcloud /var/www/html/

Tiếp theo, thay đổi quyền sở hữu và quyền của thư mục Nextcloud bằng lệnh sau:

chown -R www-data:www-data /var/www/html/nextcloud
chmod -R 775 /var/www/html/nextcloud

Tạo máy chủ ảo Apache cho Nextcloud

Tiếp theo, bạn sẽ cần tạo tệp cấu hình máy chủ ảo Apache cho Nextcloud. Bạn có thể tạo nó bằng lệnh sau:

nano /etc/apache2/sites-available/next.conf

Thêm các dòng sau:

<VirtualHost *: 80>
     ServerAdmin [email được bảo vệ]
     DocumentRoot / var / www / html / nextcloud
     ServerName next.example.com
     ErrorLog /var/log/apache2/nextcloud-error.log
     CustomLog /var/log/apache2/nextcloud-access.log kết hợp
 
    <Thư mục / var / www / html / nextcloud>
	Tùy chọn + Theo dõi
	AllowOverride Tất cả
        Yêu cầu tất cả được cấp
 	SetEnv HOME / var / www / html / nextcloud
 	SetEnv HTTP_HOME / var / www / html / nextcloud
 	<IfModule mod_dav.c>
  	  Dav tắt
        </IfModule>
    </Directory>
</VirtualHost>

Lưu và đóng tệp, sau đó kích hoạt máy chủ ảo Apache và các mô-đun Apache bắt buộc khác bằng lệnh sau:

a2ensite next
a2enmod rewrite dir mime env headers

Tiếp theo, khởi động lại dịch vụ Apache để áp dụng các thay đổi:

systemctl restart apache2

Bạn cũng có thể kiểm tra trạng thái của Apache bằng lệnh sau:

systemctl status apache2

Bạn sẽ nhận được trạng thái Apache trong đầu ra sau:

? apache2.service - Máy chủ Apache HTTP
     Đã tải: đã tải (/lib/systemd/system/apache2.service; đã bật; cài đặt trước của nhà cung cấp: đã bật)
     Hoạt động: hoạt động (đang chạy) kể từ Thứ Sáu 2022-06-17 15:04:27 UTC; 4 giây trước
       Tài liệu: https://httpd.apache.org/docs/2.4/
    Quá trình: 16746 ExecStart = / usr / sbin / apachectl start (code = exited, status = 0 / SUCCESS)
   PID chính: 16750 (apache2)
      Nhiệm vụ: 6 (giới hạn: 2292)
     Bộ nhớ: 14,7M
        CPU: 98ms
     CGroup: /system.slice/apache2.service
             ?? 16750 / usr / sbin / apache2 -k start
             ?? 16751 / usr / sbin / apache2 -k start
             ?? 16752 / usr / sbin / apache2 -k start
             ?? 16753 / usr / sbin / apache2 -k start
             ?? 16754 / usr / sbin / apache2 -k start
             ?? 16755 / usr / sbin / apache2 -k start

17 tháng 6 15:04:27 ubuntu2204 systemd [1]: Khởi động Máy chủ Apache HTTP ...

Truy cập Giao diện Web Nextcloud

Bây giờ, hãy mở trình duyệt web của bạn và truy cập giao diện người dùng web Nextcloud bằng URL http://next.example.com . Bạn sẽ thấy màn hình sau:

NextCloud Admin Login

Configure Nextcloud database

Xác định tên người dùng, mật khẩu, cơ sở dữ liệu quản trị của bạn và nhấp vào nút Cài đặt . Sau khi Nextcloud được cài đặt, bạn sẽ thấy màn hình sau: Quảng cáo

Recommended NextCloud apps

Nhấp vào Cài đặt ứng dụng được đề xuất để cài đặt tất cả các ứng dụng cần thiết. Bạn sẽ thấy màn hình sau:

Tasks after install

Nhấp vào Tất cả các tệp . Bạn sẽ thấy trình quản lý lưu trữ Nextcloud trên màn hình sau:

NextCloud GUI

Nhấp vào Ảnh của bạn . Bạn sẽ thấy trình quản lý ảnh Nextcloud trên màn hình sau:

NextCloud photo

Bật SSL trên Nextcloud

Bạn cũng nên bật SSL trên miền Nextcloud để liên lạc an toàn. Đầu tiên, cài đặt gói Certbot bằng lệnh sau:

apt-get install python3-certbot-apache -y

Sau khi cài đặt, hãy chạy lệnh sau để bảo mật trang web của bạn bằng Let’s Encrypt SSL:

certbot --apache -d next.example.com

Bạn sẽ được yêu cầu cung cấp email của mình và chấp nhận điều khoản dịch vụ như hình dưới đây:

Lưu nhật ký gỡ lỗi vào /var/log/letsencrypt/letsencrypt.log
Các plugin đã chọn: Authenticator độc lập, Trình cài đặt Không có
Nhập địa chỉ email (được sử dụng để gia hạn khẩn cấp và thông báo bảo mật) (Nhập 'c' vào
hủy): [email được bảo vệ]

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Vui lòng đọc Điều khoản Dịch vụ tại
https://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ại
https://acme-v02.api.letsencrypt.org/directory
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
(A) gree / (C) ancel: A

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Bạn có sẵn sàng chia sẻ địa chỉ email của mình với Biên giới Điện tử không
Foundation, đối tác sáng lập của dự án Let's Encrypt và tổ chức phi lợi nhuận
tổ chức phát triển Certbot? Chúng tôi muốn gửi cho bạn email về công việc của chúng tôi
mã hóa web, tin tức EFF, chiến dịch và các cách hỗ trợ tự do kỹ thuật số.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
(Y) es / (N) o: Y
Các plugin đã chọn: Authenticator apache, Installer apache
Lấy chứng chỉ mới
Thực hiện các thử thách sau:
http-01 thách thức cho next.example.com
Đã bật mô-đun ghi lại Apache
Đang chờ xác minh ...
Làm sạch những thách thức
Đã tạo vhost SSL tại /etc/apache2/sites-available/next-le-ssl.conf
Đã bật mô-đun Apache socache_shmcb
Đã bật mô-đun ssl Apache
Triển khai chứng chỉ tới VirtualHost /etc/apache2/sites-available/next-le-ssl.conf
Bật trang web khả dụng: /etc/apache2/sites-available/next-le-ssl.conf

Tiếp theo, chọn chuyển hướng lưu lượng HTTP sang HTTPS như hình dưới đây:

Vui 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 thay đổi nào đối với cấu hình máy chủ web.
2: Chuyển hướng - Thực hiện tất cả các yêu cầu chuyển hướng đến quyền truy cập HTTPS an toàn. Chọn cái này cho
các trang web mới hoặc nếu bạn tự tin rằng trang web của mình hoạt động trên HTTPS. Bạn có thể hoàn tác điều này
thay đổi bằng cách chỉnh sửa cấu hình máy chủ web của bạn.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Chọn số thích hợp [1-2] rồi [enter] (nhấn 'c' để hủy): 2

Nhập 2 và nhấn Enter để cài đặt SSL Let’s Encrypt cho trang web của bạn:

Đã bật mô-đun ghi lại Apache
Chuyển hướng vhost trong /etc/apache2/sites-enabled/next.conf thành ssl vhost trong /etc/apache2/sites-available/next-le-ssl.conf

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Xin chúc mừng! Bạn đã kích hoạt thành công https://next.example.com

Bạn nên kiểm tra cấu hình của mình tại:
https://www.ssllabs.com/ssltest/analyze.html?d=next.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/next.example.com/fullchain.pem
   Tệp khóa của bạn đã được lưu tại:
   /etc/letsencrypt/live/next.example.com/privkey.pem
   Chứng chỉ của bạn sẽ hết hạn vào 2022-09-21. Để có được một cái mới hoặc đã được tinh chỉnh
   phiên bản của chứng chỉ này 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ả * trong số
   chứng chỉ của bạn, hãy chạy "gia hạn certbot"
 - Nếu bạn thích Certbot, hãy cân nhắc ủng hộ 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

Sự kết luận

Xin chúc mừng! bạn đã cài đặt thành công Nextcloud với Apache và Let’s Encrypt SSL trên Ubuntu 22.04. Giờ đây, bạn có thể tải lên tệp, tài liệu và ảnh của mình, đồng thời đồng bộ hóa chúng với máy tính, máy tính xách tay và thiết bị di động của bạn.

admin
adminhttps://khanhle.id.vn/
Mình là Khánh, ngành Mạng truyền thông cũng có thể làm web
RELATED ARTICLES

LEAVE A REPLY

Please enter your comment!
Please enter your name here

- Advertisment -
Google search engine

Most Popular

Recent Comments