Tin tức, hướng dẫn và chia sẻ về công nghệ

Nextcloud [Part 1] – Cài đặt Nextcloud trên CentOS 7

Hướng dẫn cài đặt NextCloud version 17.0.0 trên Centos 7.6

Mục lục

  1. Chuẩn bị môi trường
  2. Cài đặt dịch vụ Web
  3. Cài đặt MariaDB
  4. Cài đặt PHP 7.2
  5. Cài đặt NextCloud
  6. Cấu hình Nextcloud
  7. Cấu hình Let’s Encyrpt cho NextCloud

1. Chuẩn bị môi trường

Trên môi trường Lab, các bạn có thể sử dụng máy NextCloud với cấu hình nhỏ và dùng IP Local. Tuy nhiên trên môi trường thực tế, máy NextCloud cần có IP Public và domain để sử dụng Office online của Collabora.

Với môi trường Lab, các bạn chuẩn bị như sau :

  • OS : Centos 7
  • RAM : 2GB
  • Disk : 30GB
  • CPU : 2 core
  • Kết nối Internet

Login với user root. Thực hiện Update :

yum install -y epel-release
yum update -y 

Mở firewalld cho traffic của httpd (web) đi qua

firewall-cmd --permanent --zone=public --add-service=http 
firewall-cmd --permanent --zone=public --add-service=https
firewall-cmd --reload

Cấu hình disable SElinux

sudo setenforce 0
sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/sysconfig/selinux
sed -i 's/SELINUX=permissive/SELINUX=disabled/g' /etc/sysconfig/selinux
sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config
sed -i 's/SELINUX=permissive/SELINUX=disabled/g' /etc/selinux/config

Reboot máy :

init 6

2. Cài đặt Web

Cài đặt dịch vụ Web

yum -y install httpd 

Khởi động httpd và cấu hình khởi động dịch vụ cùng hệ thống

systemctl start httpd.service
systemctl enable httpd.service

Kiểm tra bằng cách truy cập với IP của NextCloud

http://your_server_IP_address/

3. Cài đặt MariaDB

Thêm Repo của MariaDB 10.2

cat << EOF > /etc/yum.repos.d/MariaDB.repo
[mariadb]
name = MariaDB
baseurl = http://yum.mariadb.org/10.2/centos7-amd64
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
gpgcheck=1
EOF

Cài đặt MariaDB Server

yum install MariaDB-server -y

Khởi động mariadb và cấu hình khởi động dịch vụ cùng hệ thống

systemctl start mariadb
systemctl enable mariadb

Cài đặt mật khẩu root cho MariaDB

sudo mysql_secure_installation

Mặc đinh mật khẩu root của mysql sẽ để trống. Bước này có thể có hoặc không có tùy nhu cầu của Administrators

Tạo DB và user : nextcloud / nextcloudpassword

mysql -u root -p
CREATE DATABASE nextcloud;
CREATE USER 'nc_user'@'localhost' IDENTIFIED BY 'nextcloudpassword';
GRANT ALL PRIVILEGES ON nextcloud.* TO 'nc_user'@'localhost';
FLUSH PRIVILEGES;
exit

4. Cài đặt PHP

yum install -y http://rpms.remirepo.net/enterprise/remi-release-7.rpm
yum install -y yum-utils
yum-config-manager --enable remi-php72
yum install php php-mysql php-dom php-mbstring php-gd php-ldap php-pdo php-json php-xml php-zip php-curl php-mcrypt php-pear php-intl setroubleshoot-server -y 

5. Cài đặt NextCloud

Download NextCloud

yum install wget -y 
wget https://download.nextcloud.com/server/releases/nextcloud-17.0.0.zip -O /opt/nextcloud.zip

Giải nén

yum install unzip -y 
unzip /opt/nextcloud.zip -d /var/www/
rm -f /opt/nextcloud.zip

Phân quyền

sudo chmod 755 -R /var/www/nextcloud/
sudo chown apache. -R /var/www/nextcloud/

Bổ sung config cho httpd

cat << EOF >> /etc/httpd/conf.d/nextcloud.conf

<VirtualHost *:80>

ServerAdmin admin@yourdomain.com
DocumentRoot /var/www/nextcloud
#ServerName yourdomain.com 
#ServerAlias www.yourdomain.com

<Directory /var/www/html/nextcloud>
Options +FollowSymlinks
AllowOverride All

<IfModule mod_dav.c>
Dav off
</IfModule>

SetEnv HOME /var/www/nextcloud
SetEnv HTTP_HOME /var/www/nextcloud
</Directory>

ErrorLog /var/log/httpd/nextcloud-error_log
CustomLog /var/log/httpd/nextcloud-access_log common

</VirtualHost>
EOF

Reload lại httpd

sudo systemctl restart httpd 

6. Truy cập và Cấu hình NextCloud

https://server_domain_or_IP/

Tạo tài khoản nextcloud admin với thông tin :

  • user : nc_admin
  • pass : nextcloudpassword

Kết nối tài khoản MariaDB đã tạo phía trên. Chọn Database là MySQLMariaDB. Điền thông tin về các database như sau :

  • nc_user
  • nextcloudpassword
  • nextcloud
  • localhost

Đợi NextCloud xác thực thông tin tài khoản

Giao diện đăng nhập

Giao diện người dùng

7. Cấu hình Let’s Encrypt cho Nextcloud

Bạn nên đầu tư 1 domain cho máy chủ NextCloud của mình.

Máy chủ NextCloud cần có domain để có thể thực hiện cấu hình HTTPS và cấu hình kết nối tới máy chủ Collabora Online nhằm sử dụng Office.

Ở đây ta giả dụ máy test đã có domain với tên là : demo.nextcloudvn.com . Ta sẽ cấu hình Let’s Encrypt để cung cấp SSL và https cho máy chủ NextCloud.

yum install -y mod_ssl python-certbot-apache

Cấu hình sinh Cert với domain :

certbot --apache -d demo.nextcloudvn.com --non-interactive --agree-tos --email manhdinh1994@gmail.com

Kiểm tra việc truy cập với domain.

Domain đã được bảo vệ với certificate của Let’s Encrypt.

Như vậy là bạn đã thực hiện cài đặt thành công NextCloud trên Centos 7. Tại bài viết tiếp theo team #cloud365 sẽ hướng dẫn cài đặt NextCloud trên Ubuntu 18.04.

Xin cảm ơn các bạn đã theo dõi !


1 Comment

  1. quoc thi

    mình muốn cấu hình tích hợp AD với nextcloud ntn nhỉ

Leave a Reply

Your email address will not be published. Required fields are marked *