====== Owncloud 8 ======
==== Instalace na Oracle Linux 7.1 ====
Nejprve si připravíme dostatečně velký mounpoint pro data.
/dev/mapper/vg_data_01-lv_owncloud_data /var/www/html/owncloud/data xfs nodev,nosuid,noexec,rw,auto,nouser,async 0 0
Dodáme potřebné repository
ol7_x86_64_optional_latest
ol7_x86_64_latest
wget http://download.opensuse.org/repositories/isv:/ownCloud:/community/RedHat_RHEL-7/isv:ownCloud:community.repo -O /etc/yum.repos.d/isv:ownCloud:community.repo
Vyřešíme konflikty mezi mariadb a mysql-community a nainstalujeme OC
yum erase mysql-community-libs mysql-community-common
yum install net-snmp arpwatch mgetty postfix mariadb-server
yum install owcloud
==== Konfigurace mariadb ====
Pro produkci se doporučuje z výkonnostních důvodů provozovat owncloud nad jinou db, než nad defaultní sqlite, proto provedeme konfiguraci ''mariadb''.
mysql_install_db --user=mysql
systemctl enable mariadb
systemctl start mariadb
/usr/bin/mysql_secure_installation
mysql -uroot -p
CREATE USER 'username'@'localhost' IDENTIFIED BY 'password';
CREATE DATABASE IF NOT EXISTS owncloud;
GRANT ALL PRIVILEGES ON owncloud.* TO 'username'@'localhost' IDENTIFIED BY 'password';
Následně přistoupíme k owncloudu pomocí http. Vybereme mariadb a založíme administrátora owncloudu. Následně vše zkontrolujeme v ''./config/config.php''.
==== Konfigurace owncloudu ====
=== HTTPS ===
Nainstalujeme do apache SSL modul a zajistíme přesměrování veškeré nešifrované komunikace na ''https''. Zároveň nesmíme zapomenout vydat důvěryhodný certifikát a nakonfigurovat direktivy ''SSLCertificateFile'', ''SSLCertificateKeyFile'', ''SSLCertificateChainFile''.
yum install mod_ssl
systemctl restart httpd
ServerName file.oksystem.cz
Redirect permanent / https://file.oksystem.cz/
Přesměrování na https kompletně nezamezí útokům man-in-the-middle. Proto nastavíme následující direktivu, která instruuje prohlížeč, aby nenavazoval žádné http spojení.
ServerName file.oksystem.cz
Header always add Strict-Transport-Security "max-age=15768000"
==== Záloha ====
Pro kompletní zálohu je třeba zálohovat následující tři části:
* Adresář s konfigurací ''./config/*''
* Adresář s daty ''./data/*''
* Databáze
=== SQLITE ===
sqlite3 data/owncloud.db .dump > owncloud-sqlbkp_`date +"%Y%m%d"`.bak
=== MariaDB ===
mysqldump --lock-tables -h [server] -u [username] -p[password] [db_name] > owncloud-sqlbkp_`date +"%Y%m%d"`.bak
==== Obnova ze zálohy ====
Stejně jako u zálohy jde o tři části. Složky s daty a konfigurací překopírujeme. Databázi importujeme pomocí následujících příkazů.
=== SQLITE ===
rm data/owncloud.db
sqlite3 data/owncloud.db < owncloud-sqlbkp.bak
=== MariaDB ===
mysql -h [server] -u [username] -p[password] [db_name] < owncloud-sqlbkp.bak
==== Theming ====
Do ''config.php'' přidáme direktivu ''theme'', kterou musíme doplnit i po každém upgradu.
'theme' => 'nazev',
Vytvoříme stejnojmenný adresář jako vytvářené téma ''./owncloud/themes/nazev/core'' a přidáme do něj soubory, které chceme přepisovat.
==== Načtení dat z FS pro konkrétního uživatele ====
Pokud došlo k přidání dat přes filesystem, lze jejich načtení owncloudem vyvolat příkazem:
su - -s /bin/sh -c "php /usr/share/owncloud/console.php files:scan matt" apache