Hướng dẫn cài đặt ownCloud trên CentOS 7

ownCloud là một phần mềm client-server phổ biến để tạo một dịch vụ lưu trữ tệp. Sử dụng nó, các bạn có thể tạo một máy chủ đám mây lưu trữ tập tin riêng thay vì sử dụng các dịch vụ trả phí như Dropbox, OneDrive, pCloud, v.v.

1. Bước 1: Cài đặt LAMP hoặc LEMP

Các bạn có thể lựa chọn cài đặt LAMP hoặc LEMP theo hướng dẫn sau:

  • Hướng dẫn cách cài đặt LAMP trên Centos 7
  • Hướng dẫn cách cài đặt LEMP trên Centos 7

2. Bước 2: Cài đặt ownCloud

Để cài đặt ownCloud trước tiên các bạn cần tạo repo bằng cách tạo file /etc/yum.repos.d/owncloud.repo với nội dung sau

[ce_10.1]
name=OwnCloud Server
type=rpm-md
baseurl=http://download.owncloud.org/download/repositories/production/CentOS_7
gpgcheck=1
gpgkey=http://download.owncloud.org/download/repositories/production/CentOS_7/repodata/repomd.xml.key
enabled=1

Sau đó các bạn chạy lệnh dưới đây để cài đặt ownCloud

yum install owncloud -y

3. Bước 3: Tạo database

Sau khi đã cài đặt ownCloud các bạn sẽ cần tạo database để có thể chạy được ownCloud. Để tạo databse và Mysql user các bạn chạy lần lượt các lệnh sau

mysql -u root
create database owncloud_db;
create user 'owncloud_user'@'localhost' identified BY 'Mật-Khẩu-Mysql';
grant all privileges on owncloud_db.* to owncloud_user@localhost;
flush privileges;
exit

Trong đó

  • owncloud_db: Là tên databsae. Các bạn thay bằng tên các bạn muốn tạo
  • owncloud_user: Mysql user. Các bạn thay bằng user các bạn muốn tạo
  • Mật-Khẩu-Mysql: Mật khẩu mysql. Các bạn thay bằng mật khẩu muốn tạo

Hãy nhớ lưu lại các thông tin này để sử dụng trong bước tiếp theo

4. Bước 4: Tạo virtual host

Tiếp theo các bạn cần tạo virtual host để có thể truy cập ownCloud

  • Đối với Nginx: Tạo file /etc/nginx/conf.d/owncloud.conf
upstream php-handler {
server unix:/var/run/php-fpm.sock;
}

server {
listen 80;
server_name www.owncloud.tgs.com owncloud.tgs.com;
access_log /var/log/owncloud.log;
access_log /var/log/owncloud.bytes bytes;
error_log /var/log/owncloud.error.log;
root /var/www/html/owncloud;
index index.html index.htm index.php;

location /.well-known/(acme-challenge|pki-validation)/ {
root /var/www/html/owncloud;
}

location = /robots.txt {
allow all;
log_not_found off;
access_log off;
}

location = /.well-known/carddav {
return 301 $scheme://$host/remote.php/dav;
}
location = /.well-known/caldav {
return 301 $scheme://$host/remote.php/dav;
}

client_max_body_size 512M;
fastcgi_buffers 8 4K;
fastcgi_ignore_headers X-Accel-Buffering;

error_page 403 /core/templates/403.php;
error_page 404 /core/templates/404.php;

location / {
rewrite ^ /index.php$uri;
}

location ~ ^/(?:build|tests|config|lib|3rdparty|templates|data)/ {
return 404;
}
location ~ ^/(?:.|autotest|occ|issue|indie|db_|console) {
return 404;
}

location ~ ^/(?:index|remote|public|cron|core/ajax/update|status|ocs/v[12]|updater/.+|ocs-provider/.+|ocm-provider/.+|core/templates/40[34]).php(?:$|/) {
fastcgi_split_path_info ^(.+.php)(/.*)$;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param SCRIPT_NAME $fastcgi_script_name;
fastcgi_param PATH_INFO $fastcgi_path_info;
fastcgi_param modHeadersAvailable true;
fastcgi_param front_controller_active true;
fastcgi_read_timeout 180;
fastcgi_pass php-handler;
fastcgi_intercept_errors on;
fastcgi_request_buffering off;
}
location ~ ^/(?:updater|ocs-provider|ocm-provider)(?:$|/) {
try_files $uri $uri/ =404;
index index.php;
}
location ~ .(?:css|js)$ {
try_files $uri /index.php$uri$is_args$args;
add_header Cache-Control "max-age=15778463" always;
add_header X-Content-Type-Options nosniff always;
add_header X-Frame-Options "SAMEORIGIN" always;
add_header X-XSS-Protection "1; mode=block" always;
add_header X-Robots-Tag none always;
add_header X-Download-Options noopen always;
add_header X-Permitted-Cross-Domain-Policies none always;
access_log off;
}

location ~ .(?:svg|gif|png|html|ttf|woff|ico|jpg|jpeg|map|json)$ {
add_header Cache-Control "public, max-age=7200" always;
try_files $uri /index.php$uri$is_args$args;
access_log off;
}
}
  • Đối với Apache: Tạo file /etc/httpd/conf.d/owncloud.conf
<VirtualHost *:80>
ServerName www.owncloud.tgs.com
ServerAlias owncloud.tgs.com
DocumentRoot /var/www/html/owncloud/
ErrorLog /var/log/owncloud_error_log
CustomLog /var/log/owncloud_access_log combined
</VirtualHost>
  • Lưu ý: Thay owncloud.tgs.com bằng tên miền của các bạn

Khởi động lại webserver để virtual host có hiệu lực

service nginx restart

Hoặc

service httpd restart

5. Bước 5: Set Owner

Để tránh các lỗi về phân quyền các bạn tiến hành set owner cho mã nguồn Owncloud

  • Đối với Nginx
chown -R nginx:nginx /var/www/html/owncloud/{.,}*
  • Đối với Apache
chown -R apache:apache /var/www/html/owncloud/{.,}*

6. Bước 6: Cấu hình ownCloud

Để cấu hình ownCloud các bạn truy cập tên miền mà các bạn sử dụng thông qua trình duyệt

6.1. Thiết lập tài khoản admin

Mục đầu tiên sẽ cho phép các bạn thiết lập tài khoản Admin. Tại đây hãy điền tài khoản admin và mật khẩu mà bạn muốn tạo. Lưu ý không nên sử dụng Admin làm tên đăng nhập và nên đặt một mật khẩu đủ mạnh.

6.2. Thiết lập kết nối database

Tiếp theo các bạn click vào liên kết Storage & database và chọn Mysql/Mariadb. Sau đó điền đầy đủ thông tin kết nối Mysql bao gồm: Database userDatabase namepassword mà các bạn đã tạo ở bước 3 và bấm nút Finish Setup

Cuối cùng các bạn có thể login vào Owncloud theo thông tin admin đã tạo để kiểm tra

7. Link tham khảo

Bạn có thể tham khảo thêm tại đây: https://doc.owncloud.com/server/10.4/

Như vậy chúng ta đã cài đặt xong owncloud. Chúc bạn thành công.

0 0 đánh giá
Article Rating
Theo dõi
Thông báo của
guest
0 Comments
Phản hồi nội tuyến
Xem tất cả bình luận