NextCloud là giải pháp lưu trữ tệp miễn phí, mã nguồn mở và là giải pháp thay thế cho giải pháp lưu trữ tệp mã nguồn mở khác là OwnCloud. Điểm khác biệt chính của NextCloud so với OwnCloud là NextCloud hoàn toàn là mã nguồn mở. NextCloud là máy chủ ứng dụng chia sẻ tệp tự lưu trữ cho phép bạn lưu trữ danh bạ, hình ảnh và tài liệu cá nhân từ một vị trí tập trung. NextCloud giúp bạn không cần sử dụng phần mềm lưu trữ đám mây của bên thứ ba như Dropbox để lưu trữ tài liệu.
NextCloud đi kèm với nhiều tính năng, một số tính năng được liệt kê dưới đây:
Sau khi cập nhật hệ thống, hãy khởi động lại hệ thống để áp dụng những thay đổi sau:
Tiếp theo, hãy đăng nhập bằng người dùng root và tiến hành bước tiếp theo.
Trước tiên, hãy cài đặt máy chủ Apache và MariaDB bằng lệnh sau:
Sau khi cài đặt hoàn tất, hãy khởi động dịch vụ Apache và MariaDB và cho phép chúng khởi động khi khởi động bằng cách chạy lệnh sau:
Tiếp theo, bạn cũng sẽ cần cài đặt PHP và các mô-đun cần thiết khác vào hệ thống của mình. Tôi sẽ cài đặt phiên bản PHP 7.2 gần đây từ Ondrej Repository.
Thêm kho lưu trữ OndrejDebian:
Bạn có thể cài đặt tất cả chúng bằng cách chạy lệnh sau:
Sau khi cài đặt tất cả các gói, hãy mở tệp php.ini và thực hiện một số thay đổi bên trong tệp đó.
Thực hiện các thay đổi sau:
Trả lời tất cả các câu hỏi như sau:
Sau khi MariaDB được bảo mật, hãy đăng nhập vào bảng điều khiển MariaDB bằng lệnh sau:
Nhập mật khẩu root của bạn khi được nhắc, sau đó tạo cơ sở dữ liệu cho Nextcloud:
Tiếp theo, tạo tên người dùng và mật khẩu cho Nextcloud bằng lệnh sau:
Thay thế 'mypassword' bằng mật khẩu an toàn của riêng bạn. Tiếp theo, cấp quyền cho cơ sở dữ liệu Nextcloud bằng lệnh sau:
Tiếp theo, chạy lệnh FLUSH PRIVILEGES để MariaDB tải lại bảng quyền:
Cuối cùng, thoát khỏi shell MariaDB bằng lệnh sau:
Sau khi cơ sở dữ liệu của bạn được thiết lập đúng cách, bạn có thể tiến hành bước tiếp theo.
Và một thư mục dữ liệu nơi Nextcloud sẽ lưu trữ các tệp đã tải lên của bạn.
Tiếp theo, bạn sẽ cần tạo một tệp máy chủ ảo apache cho NextCloud. Bạn có thể thực hiện việc này bằng cách tạo tệp nextcloud.conf như sau:
Thêm các dòng sau:
Thay thế tên miền example.com bằng tên miền mong muốn của bạn. Lưu và đóng tệp, sau đó bật tệp máy chủ ảo NextCloud và tắt tệp máy chủ ảo mặc định bằng lệnh sau:
Để bật SSL bằng Let's encrypt, chúng ta sẽ cài đặt ứng dụng khách Let's encrypt certbot.
Và bật mô-đun Apache SSL bằng lệnh:
Cuối cùng, khởi động lại dịch vụ Apache để áp dụng các thay đổi này:
Bây giờ chúng ta có thể yêu cầu chứng chỉ SSL miễn phí từ let's encrypt và để chương trình certbot cấu hình apache vhost cho SSL. Xin lưu ý rằng tên miền Internet của bạn phải có thể truy cập được từ internet và trỏ đến máy chủ của bạn đã có Bản ghi A DNS để sử dụng Let's encrypt. Chạy lệnh certbot để yêu cầu chứng chỉ SSL mới:
Thay thế example.com bằng tên miền hoặc tên miền phụ của máy chủ Nextcloud (vhost) của bạn.
Chọn ở đây nếu bạn muốn chia sẻ địa chỉ email của mình với EFF. Cá nhân tôi không thích chia sẻ email của mình, vì vậy tôi đã chọn 'N' ở đây.
Nếu máy chủ Nextcloud chỉ có thể truy cập được bằng HTTPS (được khuyến nghị vì lý do bảo mật), hãy chọn '2' ở đây. Khi bạn muốn có thể truy cập Nextcloud bằng HTTP và HTTPS, hãy chọn '1'.
Chứng chỉ SSL Let's encrypt miễn phí đã được cấp thành công.
Tải trình cài đặt web Nextcloud xuống thư mục gốc của trang web và đặt quyền phù hợp cho tệp đã tải xuống.
Để thực hiện, trước tiên hãy cài đặt ufw bằng lệnh sau:
Tiếp theo, cho phép cổng 80 và 443 thông qua UFW và cũng là cổng 22 SSH bằng lệnh sau:
Mở các cổng tiếp theo trong tường lửa nếu bạn cần. Sau đó, bật Tường lửa:
Chọn 'y' khi lệnh hỏi xem Tường lửa có được bật hay không.
Cuối cùng, hãy mở trình duyệt web của bạn và điều hướng đến URL:
Thay example.com bằng tên miền của riêng bạn. Bạn sẽ thấy màn hình sau:
Thay thế từ 'nextcloud' bằng dấu chấm (.) vào trường nhập vì chúng ta muốn cài nextcloud vào thư mục hiện tại và nhấn nút 'Next'.
Bước cài đặt đầu tiên đã hoàn tất thành công. Nhấp vào 'Next' để tiếp tục.
Nhập tên người dùng và mật khẩu mong muốn cho người dùng quản trị viên Nextcloud và đặt đường dẫn dữ liệu thành '/var/nextcloud/data'.
Cung cấp tất cả thông tin bắt buộc như tên cơ sở dữ liệu, tên người dùng cơ sở dữ liệu và mật khẩu, sau đó nhấp vào nút Hoàn tất thiết lập. Bạn sẽ thấy Bảng điều khiển NextCloud trên màn hình sau:
Để cài đặt máy khách NextCloud, bạn sẽ cần thêm kho lưu trữ NextCloud vào hệ thống của mình. Bạn có thể thực hiện việc này bằng cách chạy lệnh sau:
Sau khi cài đặt xong máy khách NextCloud, hãy khởi chạy nó từ Ubuntu Dash, bạn sẽ thấy màn hình sau:
Tại đây, hãy cung cấp địa chỉ máy chủ của bạn và nhấp vào nút Tiếp theo, bạn sẽ thấy màn hình sau:
Cung cấp thông tin xác thực máy chủ NextCloude của bạn và nhấp vào nút Tiếp theo, bạn sẽ thấy màn hình sau:
Bây giờ, hãy nhấp vào nút Kết nối, bạn sẽ thấy màn hình sau:
Tại đây, nhấp vào Thư mục cục bộ, bạn sẽ thấy màn hình sau:
Xin chúc mừng! Máy chủ và Máy khách NextCloud của bạn đã được cài đặt và cấu hình. Bây giờ bạn có thể dễ dàng đồng bộ dữ liệu từ máy khách NextCloud cục bộ của mình với máy chủ NextCloud.
NextCloud đi kèm với nhiều tính năng, một số tính năng được liệt kê dưới đây:
- Cho phép chúng tôi quản lý người dùng và nhóm bằng OpenID hoặc LDAP.
- Cho phép chúng tôi truy cập, đồng bộ hóa và chia sẻ dữ liệu hiện có của bạn trên Dropbox, FTP và NAS.
- Liệt kê các trình duyệt/thiết bị được kết nối trong trang cài đặt cá nhân. Cho phép người dùng ngắt kết nối trình duyệt/thiết bị.
- Hỗ trợ hai hệ thống plugin xác thực yếu tố.
- Cho phép chúng tôi chia sẻ tệp với người dùng khác, tạo và gửi liên kết công khai được bảo vệ bằng mật khẩu.
- Thông báo cho bạn qua điện thoại và máy tính để bàn khi ai đó trên máy chủ chia sẻ tệp trực tiếp với bạn.
- Hỗ trợ khả năng giám sát, tìm kiếm toàn văn bản, xác thực Kerberos và hội nghị truyền hình âm thanh/video.
- Đồng bộ hóa tệp với máy chủ Nextcloud từ máy khách Desktop và máy khách Mobile.
Yêu cầu
- Máy chủ chạy Debian 9 trên hệ thống của bạn.
- Thiết lập địa chỉ IP tĩnh trên hệ thống của bạn.
- Thiết lập mật khẩu gốc trên hệ thống của bạn.
- Tên miền hoặc tên miền phụ mà bạn muốn sử dụng cho Nextcloud phải trỏ đến địa chỉ IP đã có để sử dụng cho Nextcloud và nhận chứng chỉ SSL Let's encrypt miễn phí.
Bắt đầu
Đầu tiên, hãy đăng nhập vào máy chủ của bạn với tư cách là người dùng gốc. Hãy bắt đầu bằng cách cập nhật hệ thống của bạn lên phiên bản ổn định mới nhất. Bạn có thể thực hiện việc này bằng cách chạy lệnh sau:
Mã:
apt-get update -y
apt-get upgrade -y
Mã:
reboot
1 Cài đặt Máy chủ LAMP
NextCloud chạy bằng Apache, MySQL và PHP. Vì vậy, bạn sẽ cần cài đặt tất cả các thành phần này vào hệ thống của mình.Trước tiên, hãy cài đặt máy chủ Apache và MariaDB bằng lệnh sau:
Mã:
apt-get install apache2 mariadb-serverapt-transport-https -y
Mã:
systemctl start apache2
systemctl enable apache2
systemctl start mariadb
systemctl enablemariadb
Thêm kho lưu trữ OndrejDebian:
Mã:
wget -q https://packages.sury.org/php/apt.gpg -O- | apt-key add -
echo "deb https://packages.sury.org/php/ stretch main" | tee /etc/apt/sources.list.d/ondrej.list
apt-get update
Mã:
apt-get install libapache2-mod-phpphp7.2php7.2-xmlphp7.2-curl php7.2-gd php7.2 php7.2-cgi php7.2-cliphp7.2-zip php7.2-mysql php7.2-mbstring wget unzip -y
Mã:
sudo nano /etc/php/7.2/apache2/php.ini
Mã:
memory_limit = 512Mupload_max_filesize = 200Mmax_execution_time = 360post_max_size = 200Mdate.timezone = Europe/Berlin
2 Cấu hình MariaDB
Theo mặc định, cài đặt MariaDB không an toàn, vì vậy bạn sẽ cần phải bảo mật nó. Bạn có thể thực hiện việc này bằng cách chạy lệnh sau:
Mã:
mysql_secure_installation
Mã:
# mysql_secure_installation
LƯU Ý: KHUYẾN NGHỊ CHẠY TẤT CẢ CÁC PHẦN CỦA Script này CHO TẤT CẢ CÁC MÁY CHỦ
MariaDB ĐANG SỬ DỤNG TRONG SẢN XUẤT! VUI LÒNG ĐỌC KỸ TỪNG BƯỚC!
Để đăng nhập vào MariaDB để bảo mật, chúng ta cần có
mật khẩu hiện tại cho người dùng root. Nếu bạn vừa cài đặt MariaDB và
chưa đặt mật khẩu root, thì mật khẩu sẽ để trống,
do đó, bạn chỉ cần nhấn enter ở đây.
Nhập mật khẩu hiện tại cho root (enter nếu không có):
OK, mật khẩu đã sử dụng thành công, tiếp tục...
Đặt mật khẩu root đảm bảo rằng không ai có thể đăng nhập vào
người dùng root MariaDB mà không có quyền thích hợp.
Đặt mật khẩu root? [Y/n] y
Mật khẩu mới:
Nhập lại mật khẩu mới:
Mật khẩu đã được cập nhật thành công!
Đang tải lại bảng đặc quyền..
... Thành công!
Theo mặc định, cài đặt MariaDB có một người dùng ẩn danh, cho phép bất kỳ ai
đăng nhập vào MariaDB mà không cần phải tạo tài khoản người dùng cho họ. Điều này chỉ nhằm mục đích thử nghiệm và giúp quá trình cài đặt
diễn ra suôn sẻ hơn một chút. Bạn nên xóa những người dùng này trước khi chuyển sang
môi trường sản xuất.
Xóa người dùng ẩn danh? [Y/n] y
... Thành công!
Thông thường, root chỉ được phép kết nối từ 'localhost'. Điều này
đảm bảo rằng không ai có thể đoán được mật khẩu root từ mạng.
Không cho phép root đăng nhập từ xa? [Y/n] y
... Thành công!
Theo mặc định, MariaDB đi kèm với một cơ sở dữ liệu có tên là 'test' mà bất kỳ ai cũng có thể
truy cập. Điều này cũng chỉ dành cho mục đích thử nghiệm và nên được xóa
trước khi chuyển sang môi trường sản xuất.
Xóa cơ sở dữ liệu thử nghiệm và quyền truy cập vào cơ sở dữ liệu đó? [Y/n] y
- Đang xóa cơ sở dữ liệu thử nghiệm...
... Thành công!
- Đang xóa quyền trên cơ sở dữ liệu thử nghiệm...
... Thành công!
Tải lại các bảng quyền sẽ đảm bảo rằng tất cả các thay đổi được thực hiện cho đến nay
sẽ có hiệu lực ngay lập tức.
Tải lại các bảng quyền ngay bây giờ? [Y/n] y
... Thành công!
Đang dọn dẹp...
Xong! Nếu bạn đã hoàn tất tất cả các bước trên, thì cài đặt MariaDB của bạn hiện đã an toàn.
Cảm ơn bạn đã sử dụng MariaDB!
Mã:
mysql -u root -p
Mã:
CREATE DATABASE nextclouddb;
Mã:
CREATE USER 'nextcloud'@'localhost' IDENTIFIED BY 'mypassword';
Mã:
GRANT ALL PRIVILEGES ON nextclouddb.* TO 'nextcloud'@'localhost';
Mã:
FLUSH PRIVILEGES;
Mã:
quit
3 Cài đặt NextCloud
Tôi sẽ sử dụng trình cài đặt web Nextcloud để cài đặt dễ dàng. Đầu tiên, chúng ta sẽ phải tạo một thư mục để cài đặt Nextcloud:
Mã:
mkdir /var/www/nextcloud
chown www-data:www-data/var/www/nextcloud
chmod 750/var/www/nextcloud
Mã:
mkdir -p/var/nextcloud/data
chown www-data:www-data/var/nextcloud/data
chmod 750 /var/nextcloud/data
Mã:
nano /etc/apache2/sites-available/nextcloud.conf
Mã:
ServerAdmin [emailprotected]DocumentRoot "/var/www/nextcloud"ServerName example.comOptions MultiViews FollowSymlinks
AllowOverride AllOrder allow,denyAllow from allTransferLog /var/log/apache2/nextcloud_access.logErrorLog /var/log/apache2/nextcloud_error.log
Mã:
a2dissite 000-default
a2ensite nextcloud
Mã:
apt-get installcertbot python3-certbot-apache -y
Mã:
a2enmod ssl
Mã:
systemctl restart apache2
Mã:
certbot -dexample.com --apache --agree-tos -m [emailprotected]
Chọn ở đây nếu bạn muốn chia sẻ địa chỉ email của mình với EFF. Cá nhân tôi không thích chia sẻ email của mình, vì vậy tôi đã chọn 'N' ở đây.
Nếu máy chủ Nextcloud chỉ có thể truy cập được bằng HTTPS (được khuyến nghị vì lý do bảo mật), hãy chọn '2' ở đây. Khi bạn muốn có thể truy cập Nextcloud bằng HTTP và HTTPS, hãy chọn '1'.
Chứng chỉ SSL Let's encrypt miễn phí đã được cấp thành công.
Tải trình cài đặt web Nextcloud xuống thư mục gốc của trang web và đặt quyền phù hợp cho tệp đã tải xuống.
Mã:
cd /var/www/nextcloud
wgethttps://download.nextcloud.com/server/installer/setup-nextcloud.php
chown www-data:www-data setup-nextcloud.php
4 Truy cập Giao diện web NextCloud
Sau khi mọi thứ được định cấu hình đúng, bạn sẽ cần cho phép cổng 80 thông qua tường lửa UFW.Để thực hiện, trước tiên hãy cài đặt ufw bằng lệnh sau:
Mã:
apt-get install ufw -y
Mã:
ufw allow 80
ufw allow 443
ufw allow 22
Mã:
ufw enable
Cuối cùng, hãy mở trình duyệt web của bạn và điều hướng đến URL:
Thay example.com bằng tên miền của riêng bạn. Bạn sẽ thấy màn hình sau:
Thay thế từ 'nextcloud' bằng dấu chấm (.) vào trường nhập vì chúng ta muốn cài nextcloud vào thư mục hiện tại và nhấn nút 'Next'.
Bước cài đặt đầu tiên đã hoàn tất thành công. Nhấp vào 'Next' để tiếp tục.
Nhập tên người dùng và mật khẩu mong muốn cho người dùng quản trị viên Nextcloud và đặt đường dẫn dữ liệu thành '/var/nextcloud/data'.
Cung cấp tất cả thông tin bắt buộc như tên cơ sở dữ liệu, tên người dùng cơ sở dữ liệu và mật khẩu, sau đó nhấp vào nút Hoàn tất thiết lập. Bạn sẽ thấy Bảng điều khiển NextCloud trên màn hình sau:
5 Cấu hình Máy khách NextCloud
Tại đây, chúng tôi sẽ cài đặt máy khách NextCloud trên Ubuntu Desktop và kết nối nó với máy chủ NextCloud.Để cài đặt máy khách NextCloud, bạn sẽ cần thêm kho lưu trữ NextCloud vào hệ thống của mình. Bạn có thể thực hiện việc này bằng cách chạy lệnh sau:
Mã:
add-apt-repository ppa:nextcloud-devs/client
Mã:
apt-get update -y
apt-get install nextcloud-client -y
Tại đây, hãy cung cấp địa chỉ máy chủ của bạn và nhấp vào nút Tiếp theo, bạn sẽ thấy màn hình sau:
Cung cấp thông tin xác thực máy chủ NextCloude của bạn và nhấp vào nút Tiếp theo, bạn sẽ thấy màn hình sau:
Bây giờ, hãy nhấp vào nút Kết nối, bạn sẽ thấy màn hình sau:
Tại đây, nhấp vào Thư mục cục bộ, bạn sẽ thấy màn hình sau:
Xin chúc mừng! Máy chủ và Máy khách NextCloud của bạn đã được cài đặt và cấu hình. Bây giờ bạn có thể dễ dàng đồng bộ dữ liệu từ máy khách NextCloud cục bộ của mình với máy chủ NextCloud.