Difference between revisions of "OwnCloud"

From berki WIKI
Jump to: navigation, search
(Linux kliens)
(Linux kliens)
Line 353: Line 353:
 
:[[File:ClipCapIt-161020-231257.PNG|400px]]
 
:[[File:ClipCapIt-161020-231257.PNG|400px]]
  
 
+
Az owncloud biztosít egy dnf repót. Fedora 24-hez az alábbit kell használni: 
 
+
<pre>
 
+
dnf config-manager --add-repo http://download.opensuse.org/repositories/isv:ownCloud:desktop/Fedora_24/isv:ownCloud:desktop.repo
 
+
dnf install owncloud-client
{'password': <'liteon'>}
+
</pre>
 
 
https://www.happyassassin.net/cgit/user_http_external/tree/README.md
 
  
 
===Windows kliens===
 
===Windows kliens===

Revision as of 21:16, 20 October 2016

ClipCapIt-161015-184434.PNG


PHP frissítése

Az OwnCloud 9.x használatához legalább PHP 5.6 ra van szükség. Ehhez fel kell telepíteni a "remi" repozitorikat:

wget http://dl.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rpm
wget http://rpms.famillecollet.com/enterprise/remi-release-6.rpm
rpm -Uvh remi-release-6*.rpm epel-release-6*.rpm

Kapcsoljuk be az alap "remi" repo használatát valamint a php56 repot:
/etc/yum.repos.d/remi.repo

[remi]
name=Les RPM de remi pour Enterprise Linux 6 - $basearch
#baseurl=http://rpms.famillecollet.com/enterprise/6/remi/$basearch/
mirrorlist=http://rpms.famillecollet.com/enterprise/6/remi/mirror
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-remi
...
[remi-php56]
name=Les RPM de remi de PHP 5.6 pour Enterprise Linux 6 - $basearch
#baseurl=http://rpms.famillecollet.com/enterprise/6/php56/$basearch/
mirrorlist=http://rpms.famillecollet.com/enterprise/6/php56/mirror
# WARNING: If you enable this repository, you must also enable "remi"
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-remi

Majd frissítsük a PHP-t.

yum update php*

Ellenőrizzük az php verziót:

# php -v
PHP 5.6.26 (cli) (built: Sep 15 2016 14:57:05) 
Copyright (c) 1997-2016 The PHP Group
Zend Engine v2.6.0, Copyright (c) 1998-2016 Zend Technologies

Telepítés és beállítások

Install

Az OwnCloud biztosít yum repozitorit a telepítéshez. Felteszi a szükséges php csomagokat, valamit a helyére másolja a http fájlokat: /var/www/html/owncloud

ownCloud repos: http://download.owncloud.org/download/repositories/9.1/owncloud/ manual: https://doc.owncloud.org/server/9.1/admin_manual/installation/linux_installation.html#changes-in-owncloud-9

Több repozitory is elérhető.

  • CentOS_6_SCL_PHP54 owncloud-9.1.1-1 -> cseljes csomag php 5.4-el
  • CentOS_6_SCL_PHP54 owncloud-files-9.1.1-1 -> csak a forrás PHP 5.4-hez
  • CentOS_6 owncloud-9.1.1-1 -> teljes csomag > PHP 5.4 [ezt fogjuk mi is használni]. Ez tartalmazza a owncloud-files-9.1.1-1 csomagot is.
  • CentOS_6 owncloud-files-9.1.1-1 -> csak a forrás, a függőségek nem. Részhalmaza a owncloud-9.1.1-1 csomagnak.

Telepítsük a repozitoryt:

# rpm --import https://download.owncloud.org/download/repositories/9.1/CentOS_6/repodata/repomd.xml.key
# wget http://download.owncloud.org/download/repositories/9.1/CentOS_6/ce:9.1.repo -O /etc/yum.repos.d/ce:9.1.repo
# yum clean expire-cache

Majd az összes szükséges fájlt telepíthetjük yum-al:

# yum install owncloud

A telepítés után létrejött a /var/www/html/ownclooud mappa. Ehhez létre fogunk hozni egy apache virtuális hoszt fájt.

Data mappa létrehozása

Biztonsági megfontolásból fontos, hogy a data mappa, ahol a felhasználók fájljait tárolja az ownCloud kívül legyen a /var/www mappában ugyanakkor rendelkezzen a megfelelő SELinux kontextust. A data mappát a /var/owncloud mappába fogjuk tenni:

# mkdir /var/owncloud
# chown root.apache /var/owncloud/

Másoljuk át a jelenlegi data mappa tartalmát. Fontos hogy használjuk a -p kapcsolót, ami hatására megőrzi a jogokat, tulajdonost:

# cp -rp /var/www/html/owncloud/data/ /var/owncloud/data
# chmod 700 /var/owncloud/data

Végezetül állítsuk be az SELinux kontextust, különben az apache nem fog hozzáférni:

# semanage fcontext -a -t httpd_sys_rw_content_t '/var/owncloud/data'
# restorecon '/var/owncloud/data'

Config.php

A /var/www/html/owncloud/config/config.php-ben be kell állítani az adatbázist, a data mappa helyét.

<?php
$CONFIG = array (
  'updatechecker' => false,
  'instanceid' => 'ocg8blb1buhs',
  'passwordsalt' => 'nqdeRpx3jXP9R+7QA5Uh9wZhEkargm',
  'secret' => 'dDPRFMidUmgbTQCPZjMe79vjohVem9rIJC7GOZlrJF5dK/Fz',
  'trusted_domains' => 
  array (
    0 => 'owncloud.berki2.org',
  ),
  'datadirectory' => '/var/owncloud/data',
  'overwrite.cli.url' => 'http://owncloud.berki2.org',
  'dbtype' => 'mysql',
  'version' => '9.1.1.3',
  'dbname' => 'owncloud',
  'dbhost' => 'localhost',
  'dbtableprefix' => 'oc_',
  'dbuser' => 'owncloud',
  'dbpassword' => 'liteon',
  'logtimezone' => 'UTC',
  'installed' => true,
  'mail_smtpmode' => 'php',
  'mail_from_address' => 'owncloud',
  'mail_smtphost' => 'localhost',
  'mail_domain' => 'berki2.org',
   'enable_avatars' => true,
  'logfile' => '/var/log/owncloud.log',
  'loglevel' => '3'
);

Állítsuk be a data mappa helyét, amit fent hoztunk létre, adjuk meg az adatbázis elérhetőségeket valamint az email szerver beállításait.

Apache beállítások

Virtuális hoszt

/etc/httpd/vhosts.d/owncloud.berki.org.80.conf

<VirtualHost *:80>
	ServerAdmin adam@proarcok.com
	ServerName owncloud.berki2.org
    	ServerAlias owncloud.berki2.org
    	ErrorLog logs/owncloud.berki2.org-error_log
    	CustomLog logs/owncloud.berki2.org-access_log common 


 	Redirect permanent / https://owncloud.berki2.org


</VirtualHost>

/etc/httpd/vhosts.d/owncloud.berki.org.443.conf

<VirtualHost *:443>
	ServerAdmin adam@proarcok.com
	ServerName owncloud.berki2.org:443
    	ServerAlias owncloud.berki2.org:443
    	ErrorLog logs/owncloud.berki2.org-error_log
    	CustomLog logs/owncloud.berki2.org-access_log common 

	##Fel evre garantaljuk, hogy HTTPS-en maradunk
	Header always set Strict-Transport-Security "max-age=15768000; includeSubdomains;"


    ##########################
    # SSL beállítások
    ##########################	

	    # SSL parameterek 
	    ##########################	
	    SSLEngine on 

	    # Here, I am allowing only "high" and "medium" security key lengths. 
	    SSLCipherSuite HIGH:MEDIUM 

	    # Here I am allowing SSLv3 and TLSv1, I am NOT allowing the old SSLv2. 
	    SSLProtocol all -SSLv2 

	 
	    # Szerver kulcsok
	    ##########################

	     # Server Certificate: 
	    SSLCertificateFile /etc/httpd/ssl/owncloud.berki2.org-server.cer 

	    # Server Private Key: 
	    SSLCertificateKeyFile /etc/httpd/ssl/owncloud.berki2.org-server.key 

     ############################

	DocumentRoot "/var/www/html/owncloud/"

	#Alias /owncloud "/var/www/html/owncloud/"
	<Directory "/var/www/html/owncloud">
 	 	Options +FollowSymLinks
  		AllowOverride All

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

  		SetEnv HOME /var/www/html/owncloud
  		SetEnv HTTP_HOME /var/www/html/owncloud
	</Directory>

	<Directory "/var/www/html/owncloud/data/">
  	# just in case if .htaccess gets disabled
    	Require all denied
	</Directory>


</VirtualHost>

HSTS

(HTTP Strict Transport Security)
A HSTS egy biztonsági kiegészítése a https protokollnak, amit az RFC 6797 ír le: (https://tools.ietf.org/html/rfc6797 ). Ha a HSTS az apache szerveren be van kapcsolva egy HTTPS alatt kommunikáló virtuális hoszton, akkor a szerver a válaszba elhelyez egy HTST header-t is, amiben egy vállalást tesz arra, hogy legalább az itt megadott ideig (általában fél év) az adott hosztot kizárólag HTTPS alatt fogja futtatni. Ha a kliens (böngésző vagy más mobilos alkalmazás) HSTS képes, akkor el fogja menteni ezt az információt az adott hoszt névhez. Ha bármilyen módon megpróbálná később egy támadó a HTTPS kommunikációt HTTP-re terelni (akár egy hamis oldalon keresztül) a böngésző nem lesz hajlandó kommunikálni HTTP felett amíg a vállalás le nem jár. Sikeres kapcsolat esetén a vállalás ideje mindig újraindul.

A httpd.conf-ban töltsük be a htst modult.
/etc/httpd/conf/httpd.conf

...
LoadModule headers_module modules/mod_headers.so
...

Ezután a HTTPS-es (443) virtuális hoszt konfigurációjába be kell kapcsolni a HSTS header használatát, és meg kell adni a vállalási időt is.
/etc/httpd/vhosts.d/owncloud.berki.org.443.conf

...
   Header always set Strict-Transport-Security "max-age=15768000; includeSubdomains;"
...

A max-age paramétert másodpercben kell megadni, mi fél évet állítunk be.

Indítsuk újra az apache-ot.

# service httpd restart

Majd nyissuk meg megint a https://owncloud.berki2.org oldalt. Nézzük meg a fogadott fejléceket a Firefox fejlesztői eszközben.

ClipCapIt-161015-123931.PNG


A Firefox a HSTS információkat a iteSecurityServiceState.txt fájlban tárolja:

$ cat /home/adam/.mozilla/firefox/61og30yv.default/SiteSecurityServiceState.txt | grep berki2
owncloud.berki2.org:HSTS	0	17089	1492295509620,1,1

Első indítás

Miután készen van a virtuális hosz, első indításkor elvégezhetjük a képernyőn keresztül a rendszer alap beállításait. Navigáljunk a https://owncloud.berki2.org címre.

...


További beállítások

Memória cache bekapcsolása

# yum install php-pecl-zendopcache

Cron job beállítása

Állítsjuk be, hogy az owncloud system cront-t használjon:

ClipCapIt-161015-141119.PNG



Majd hozzuk létre a cron fájlt
/etc/cron.d/owncloud

*/15 * * * * apache /usr/bin/php -f /var/www/html/owncloud/cron.php

És adjunk rá megfelelő jogot:

# chmod 644 ownlcoud

Kiegészítők

Vírus szűrés

Kapcsoljuk be a " Antivirus App for files " kiegészítőt.

ClipCapIt-161015-134436.PNG



Majd konfiguráljuk. A ClamAV-t a socket-en keresztül kell hívja: /var/run/clamav/clamd.sock

ClipCapIt-161015-134336.PNG


SELinux

Ahhoz hogy a HTTP (owncloud) hozzáférjen a ClamAV sockethez (/var/run/clamav/clamd.sock) szükség van egy új SELinux szabályra.
Hozzuk létre a owncloudSELinux.te fájlt.


module mypol 1.0;

require {
	type httpd_t;
	type antivirus_var_run_t;
	class sock_file write;
}

#============= httpd_t ==============
allow httpd_t antivirus_var_run_t:sock_file write;

Majd fordítsuk le és töltsük be:

# checkmodule -M -m -o owncloudSELinux.mod owncloudSELinux.te 
# semodule_package -o owncloudSELinux.pp -m owncloudSELinux.mod 
# semodule -i owncloudSELinux.pp

Tesztelés

Töltsünk le innen egy teszt vírust:

A webes felületen keresztül töltsük fel. A képernyőn megjelenik a figyelmeztetés:

ClipCapIt-161015-134156.PNG


A /var/log/messages fájlban láthatjuk hogy a ClamAV vírusnak titulálta a fájlt:

Oct 15 13:38:08 centostest clamd[1182]: instream(local): Eicar-Test-Signature FOUND

OCC konzol

Az ownCloud-nak van egy parancssori konzola, ahol az összes admin funkció elvégezhető

# sudo -u apache /bin/php /var/www/html/owncloud/occ
...

Felhasználói kézikönyv

Klinesek

Linux kliens

Elsőként az certificate authority-t be kell importálni a linux-ba mint biztonságos kulcs:

# cp berki-ca.pem /etc/pki/ca-trust/source/anchors/
# update-ca-trust extract

A kliens tekintetében két lehetőségünk van. Használhatjuk a gnome-ba beéített OwnCloud klienst.

ClipCapIt-161020-230844.PNG

A Nautilus-ban fog csak megjelenni a megosztás, Krusader-ben nem fog látszani. De a legnagyobb baj vele, hogy valós időben szinkronizál a szerverrel, így bármit módosítunk, meg kell várni, hogy felküldje a szerverre, ezért borzasztó lassú.

Ennél sokkal jobb az OwnCloud oldaláról letölthető kliens, ami okosan, a háttérben szinkronizál egy megadott mappába, amit így a Krusader-ben is láthatunk. Rengeteg finom beállítási lehetőség van benne.

ClipCapIt-161020-231257.PNG

Az owncloud biztosít egy dnf repót. Fedora 24-hez az alábbit kell használni:

dnf config-manager --add-repo http://download.opensuse.org/repositories/isv:ownCloud:desktop/Fedora_24/isv:ownCloud:desktop.repo
dnf install owncloud-client

Windows kliens

Android

Elsőként az andorid fizetős klienst telepítsük föl az Appstore-ból

TipIcon.png

Tip
A link a webes ownlcoud felületen a bal felső sarokban a Personal menüpontban elérhető


Sajnos a fájlok tárolási helye nem megváltoztatható, mindent a belső memóriában fog tárolni. Ezért át kell helyezzük a teljes adat mappáját a belső memóriából az SD kártyára, majd egy szimbolikus linket létrehozni a régi helyre. Ehhez remek Android-os eszközök léteznek, mi a FolderMount alkalmazás ingyenes változatát fogjuk használni: https://play.google.com/store/apps/details?id=com.devasque.fmount&hl=en

ClipCapIt-161020-225328.PNG

De előtte root-olni kell a telefont. Ezt a KingRoot programmal fogjuk megtenni.

ClipCapIt-161020-225806.PNG

A mobil böngészőben navigáljunk a https://kingroot.net/ oldalra.

WarningIcon.png

Warning
Kizárólag innen töltsük le a KingRoot-ot, ha máshonnan töltjük le az vírusos lehet


Majd telepítsük föl, majd futtassuk. Végtelen sokszor újra fog indulni, sokszor ki arra a konklúzióra fog jutni, hogy nem lehet root-olni, ilyenkor újra és újra indítsuk el. Ha a telefon újra indult, akkor ott fut a háttérben, csak hozzuk előtérbe. Addig indítgassuk újra, amíg nem root-olja a telefont.

Ha ez megvan indítsuk el a FolderMount alkalmazást, válasszuk ki az owncloud mappát a: /storage/emulated/0/owncloud, célmappa: /storage/external_SD/..., de ezt magától létrehozza.

ClipCapIt-161020-230328.PNG

A FolderMount magától el fog indulni minden telefon újraindításkor, és fel fogja mount-olni a beállított mappákat.

IPhone