ติดตั้ง ownCloud บน ubuntu 20.04 server

จาก Wiki Opensource

บันทึกนี้ปรับปรุงล่าสุดเมื่อวันที่ 10-09-2564
ดูแลโดย WIBOON

สภาพแวดล้อม

  • ติดตั้ง ownCloud ลงบน ubuntu 20.04 server เลือกใช้กับ MySQL Database


วิธีทำ
อ่านคำแนะนำฉบับภาษาอังกฤษ แนะนำให้ติดตั้งผ่าน repository (http://owncloud.org/install/#instructions-packages) ดังนี้

sudo apt install mysql-server
sudo apt install apache2 php7.4 php7.4-mysql libapache2-mod-php7.4 php7.4-ldap
sudo apt install php7.4-zip php7.4-xml php7.4-intl php7.4-mbstring php7.4-gd php7.4-curl

echo 'deb http://download.opensuse.org/repositories/isv:/ownCloud:/server:/10/Ubuntu_20.04/ /' | sudo tee /etc/apt/sources.list.d/isv:ownCloud:server:10.list

curl -fsSL https://download.opensuse.org/repositories/isv:ownCloud:server:10/Ubuntu_20.04/Release.key | gpg --dearmor | sudo tee /etc/apt/trusted.gpg.d/isv_ownCloud_server_10.gpg > /dev/null

sudo apt update
sudo apt install owncloud-complete-files

สร้าง database ใน MySQL server ดังนี้

sudo mysql -uroot -p
CREATE DATABASE ocdb CHARACTER SET 'UTF8';
CREATE USER 'ocuser'@'localhost' IDENTIFIED BY 'ocpass';    
GRANT ALL PRIVILEGES ON ocdb.* TO 'ocuser'@'localhost'  WITH GRANT OPTION;
FLUSH PRIVILEGES;

เพื่อความสะดวก เข้าใช้งานในโหมด user root

sudo su -

เมื่อต้องการใช้ ubuntu 20.04 server นี้บริการ owncloud อย่างเดียว ชี้ WWW root มาที่ /var/www/owncloud

cd /etc/apache2/sites-available/
cp 000-default.conf owncloud.conf

แก้ไข owncloud.conf

 DocumentRoot /var/www/owncloud

disable site เก่า

a2dissite 000-default.conf

enable site ใหม่

a2ensite owncloud.conf

reload apache web server

systemctl reload apache2


เข้าเบราว์เซอร์ ไปที่ http://server-IP
ใส่ข้อมูลครั้งแรก
Create an admin account
username: admin ตั้งชื่อได้ตามต้องการ
password: ******* ตั้งรหัสผ่านได้ตามต้องการ

Storage & database คลิกสามเหลี่ยมเพื่อเลือก

Data folder ใส่ข้อมูล /var/www/owncloud/data

Configure the database เลือก MySQL/MariaDB

ใส่ข้อมูล
Database user: ocuser
Database password: ocpass
Database name: ocdb
localhost

เมื่อใส่ข้อมูลถูกต้องตามที่สร้าง MySQL Database จะเข้าสู่หน้าเว็บ admin ได้
เมื่อจะให้บริการจริง ให้ติดตั้ง https ตามวิธีของท่าน (หากทดสอบ อาจข้ามขั้นตอนนี้)

หากย้ายเครื่องทดสอบไปสถานที่หลายแห่งให้เพิ่ม IP ใน trusted_domains ที่ไฟล์ config/config.php

ติดตั้งเพิ่ม
Apps > LDAP Integration

ตั้งค่า
Admin > setting... > User Authentication
กำหนดค่า ldap ที่จำเป็น

และ/หรือ อาจจะใช้ App ชื่อ External user support

คลิกที่ Apps แล้วเลือก +Apps
เลือก External user support คลิก Enable
กลับมาที่ Terminal ของ server
ตัวอย่างเป็นการใส่ข้อมูลเกี่ยวกับ External user support ที่เราจะใช้กับ ftp user
sudo vi /var/www/owncloud/config/config.php
เพิ่มข้อมูลในช่วง ####

####
'user_backends' => array (
array (
'class' => 'OC_User_FTP',
'arguments' => array ('ftp server IP'),
),
),
####


เมื่อ login ด้วย username ของ ldap server หรือ ftp server user ก็สามารถใช้ ownCloud ได้