Owncloud15. Mar '14
Sissejuhatus
Käesolev juhend on mõeldud IT-juhile kes soovib oma haridusasutusse paigaldada OwnCloud serverit. OwnCloud on Dropbox ning osaliselt Google Drive funktsionaalsust asendav avatud lähtekoodiga tarkvara, mida on võimalik paigaldada oma riistvarale.
Põhilised argumendid OwnCloudi paigaldamiseks oma rauale on privaatsus, turvalisus, kettaruum ning kiirus asutuse sees. Käesoleva artikliga püüakski lahti seletada kuidas OwnCloudi paigaldada saab. Analoogseid lahendusi on teisigi, nagu Seafile 1 ja Syncthing 2.
Riistvara valik
OwnCloudi jaoks sobib tavaline PC tüüpi server või kettakast, milles on vähemalt kaks ketast selleks, et andmeid jooksvalt duubeldada erinevatele ketastele kui üks ketas peaks ära surema. Kettakasti ostmisel soovitan võtta x86 baasil rauda kuna ARM protsessori baasil kettakastidega on tükk tegemist enne kui selle saab panna tegema täpselt seda mida vaja, nagu näiteks Debiani või Ubuntut jooksutama.
QNAP TS-451 on näide energiasäästliku Intel Haswell x86 protsessoritega kettakastist mille peaks 500€ eest kätte saama. See kettakast paaritatuna kahe 4TB Western Digital Red (5-aastane garantii) 4 kettaga peaks kogu koosluse hinna jätma 1000€ sisse. Kettakastil on kaks SO-DIMM mälupesa mis peaks jätma kasvuruumi kui hiljem on vaja mälu juurde lisada.
Important
RAID kontrolleriga võib lutsu visata
Tavalise PC baasil kettakasti ehitades soovitaksin mina igasuguseid RAID kontrollereid vältida, kuna RAID kontrolleri tootja seob teid konkreetse firmaga ning ühe kontrolleriga loodud RAID massiivi ei saa teise kontrolleri tootja omaga kasutada. Kui nüüd aastatevanune masin sureb siis, kuidas ketastelt andmeid kätte saada plaanid? Sellises situatsioonis muutub tavaliseks sobiva kontrolleri ja püsivaraga RAID kontrolleri jahtimine eBays krõbeda hinna eest. 5
Ettevalmistused
Järgnev puudutab eelkõige Tallinna Haridusameti alla kuuluvaid koole. Esiteks tee omale selgeks kellega suhelda kui mingi probleem on:
Sisevõrgu IP-sid ning masinanimesid hallatakse Windowsi puhul Active Directory kaudu ning Tallinna koolides osutab vastavat teenust Atea, juhul kui ei ole kasutusel kohalikku Active Directory teenust.
Paljude koolide kodulehti haldab Almic, antud juhul ei puutu nemad kuidagi asjasse!
EENeti koolidele eraldatud väliseid IP aadresse ning portide edastamist haldab Elion.
Väljapoolt maja paistvat blah.edu.ee domeeni haldab EENet.
Tasuta SSL sertifikaate saab ka EENetilt.
Selleks et protseduur kõige libedamalt sujuks:
Eralda IP aadress OwnCloud masina jaoks, a'la 10.254.xxx.4. Vajadusel võib seda teha Atea Active Directorys, et välistada IP aadressi konflikt.
Küsi Elionilt portide 22 (SSH), 80 (HTTP) ning 443 (HTTPS) edastamist sisevõrgus asuvale OwnCloud masina IP aadressile 10.254.xxx.4 ning küsi samas ka üle mis on sinu asutuse välisvõrgu IP aadress 195.250.188.xxx.
Domeeninime owncloud.xxx.edu.ee seostamiseks kirjuta EENetile vastavasisuline kiri kus on ära märgitud välisvõrgu IP aadress 195.250.188.xxx ning soovitav domeeninimi owncloud.xxx.edu.ee.
Kui soovid kasutada olemasolevaid kasutajakontosid Active Directoryst tee OwnCloudi jaoks kasutajakonto, vajadusel helista Ateasse ning lase neil see teha. Seda kasutajakontot hakkab OwnCloud kasutama kasutajate ning gruppide pärimiseks Active Directoryst.
Tee kindlaks, et e-postiaadress admin@xxx.edu.ee toimib ning on kasutuskõlblik. Vajadusel helista Ateasse ning küsi edasisuunamist.
Tee kindlaks et teie asutus on liitunud EENeti TERENA sertifikaatide teenusega, nende formaalsustega võib natuke aega minna. Üks osa formaalsusest on leping EENeti ning asutuse vahel sertifikaatidega majandamiseks, teine osa on IT-juhi isikutuvastus, et infojuhi e-posti taga tõepoolest peitub inimene kellel on luba toimetada asutuse xxx.edu.ee (alam)domeenidega. Ilma SSL sertifikaadita on raskendatud Windowsis WebDav ressursside haakimine
Operatsioonisüsteemi paigaldus
Kui füüsilisse masinasse pole veel operatsioonisüsteemi paigaldatud, paigalda sinna Debian. Järgnevalt loo ownCloud jaoks oma konteiner
ownCloud varamu lisamine
OwnCloud on nõnda kiirelt arenev tarkvara, mistõttu Ubuntu ja Debiani varamutes olev versioon on ammu aegunud.
Esmalt veendu, et oleks paigaldatud curl:
apt-get install curl
Ubuntu 14.04 LTS jaoks kõige värskema ownCloudi versiooni saab ownCloudi ametlikust tarkvarapakettide varamust:
echo "deb http://download.owncloud.org/download/repositories/stable/Ubuntu_14.04/ /" | \
sudo tee /etc/apt/sources.list.d/owncloud.list
curl https://download.owncloud.org/download/repositories/stable/Ubuntu_14.04/Release.key | \
sudo apt-key add -
sudo apt-get update
Debian 8 jessie jaoks varamu sisse lülitamine:
echo "deb http://download.owncloud.org/download/repositories/stable/Debian_8.0/ /" > \
/etc/apt/sources.list.d/owncloud.list
curl https://download.owncloud.org/download/repositories/stable/Debian_8.0/Release.key | \
apt-key add -
apt-get update
Paigaldus
Veendu, et allalaadimiseks pakutaks 8.x või hilisemat versiooni:
apt-cache policy owncloud
Paigaldamiseks:
apt-get install owncloud mysql-server php5-ldap
Järgi juhiseid ekraanil ning jäta meelde MySQL andmebaasi jaoks loodud kasutaja ja parool. Neid on hiljem vaja OwnCloudi andmebaasi seadistamiseks. Peale paigaldust ava /owncloud oma serveri aadressilt, näiteks http://127.0.0.1/owncloud/ ning veebiliideses loo administraator-kasutaja OwnCloud jaoks kasutades MySQL andmebaasi. Selle kasutajakontoga saab seda OwnCloud paigaldust seadistada.
Sidumine AD-ga
Kuna koolil on tavaliselt Active Directory, LDAP vms paigaldus juba olemas on mõistlik kasutada olemasolevaid kasutajakontosid selle asemel, et omakorda OwnCloudi kasutajakontosid tekitama hakata.
Logi sisse OwnCloudi veebiliidesesse admin kontoga. Vasakult ülevalt Rakendused all klõpsa ikoonil Rakendused. Otsi vasakult nimekirjast üles LDAP user and group backend ning klõpsa nupul Lülita sisse. Paremal kasutaja nime alt ava Admin vaade ning otsi üles LDAP liidese konfiguratsiooni paneel.
Atea kasutab Windows Server 2003 baasil Active Directoryt ning selle puhul konfiguratsioon näeb välja umbestäpselt järgnev. Juhis eeldab, et domeenikontrollerisse on OwnCloudi jaoks loodud kasutajakonto, mille abil OwnCloud saab kasutajate infot pärimas käia, vajadusel konsulteerige Atea tehnikutega.
Oma ownCloud kasutajale vastava distinguished name leiad siis, kui Active Directory Users and Computers vaates lülitad View all sisse Advanced Features:
Nüüd saad kasutaja objekti vaates avada Attribute Editor kaardi ning sealt kopeerida distinguishedName välja väärtuse:
Silumine
Owncloud hoiab oma logi tavaliselt /var/www/owncloud/data/owncloud.log all, kui on probleeme siis aitab logi vaatamine:
tail -f /var/www/owncloud/data/owncloud.log
Klientrakendus
Graafiline klientrakendus võimaldab kasutajanime ning parooliga OwnCloud serverist kohalikku masinasse sünkroniseerida faile.
Ubuntu tööjaama puhul lisa ownCloud klientrakenduste varamu:
echo "deb http://download.opensuse.org/repositories/isv:/ownCloud:/desktop/xUbuntu_14.04 /" | \
sudo tee /etc/apt/sources.list.d/owncloud-client.list
curl http://download.opensuse.org/repositories/isv:/ownCloud:/community/xUbuntu_14.04/Release.key | \
sudo apt-key add -
sudo apt-get update
Paigalda rakendus:
sudo apt-get install owncloud-client
Tarkvara Windows, Mac OS X, iPhone ja Android jaoks leiab ownCloudi veebist 6.
SSL sertifikaadi paigaldus
Käesolev sektsioon puudutab eelkõige production serveri seadistamist haridusasutuses, kus HTTPS peaks olema peale surutud. Sellisel juhul saab EENetilt taodelda tasuta TLS sertifikaati millega ühendust serveriga turvata.
Loo võtmete jaoks kataloog ning genereeri sinna sertifikaadi allkirjastamispäring:
mkdir /etc/apache2/ssl
openssl genrsa -out /etc/apache2/ssl/owncloud-xxx-edu-ee.key 2048
openssl req -new -sha256 -key /etc/apache2/ssl/owncloud-xxx-edu-ee.key -out /etc/apache2/ssl/owncloud-xxx-edu-ee.csr
chmod 600 /etc/apache2/ssl/owncloud-xxx-edu-ee.key
Kopeeri allkirjastamispäringu faili /etc/apache2/ssl/owncloud-xxx-edu-ee.csr sisu, logi sisse EENeti TERENA keskkonnas, klõpsa Apply for Certifciate nupul ning kleebi faili sisu tekstiväljale:
Nüüd jää ootele kuni sertifikaadile allkiri antakse ja saab jätkata sertifikaadi paigaldusega.
Klõpsa Certificate pem format lingil ning laadi alla fail, see on nüüd su owncloud.xxx.edu.ee veebiserveri sertifikaat, aseta see /etc/apache2/ssl/owncloud-xxx-edu-ee.crt failina veebiserverisse. Klõpsa Certificate Chain pem format lingil, need on su sertifitseerimiskeskuse sertifikaatide ahel, aseta see /etc/apache2/ssl/terena-bundle.crt failina veebiserverisse. Lisa veebiserveri konfiguratsioon failis /etc/apache2/sites-enabled/000-default.conf:
<VirtualHost *:80>
ServerName owncloud.xxx.edu.ee
RewriteEngine On
RewriteRule ^/?(.*) https://%{SERVER_NAME}/$1 [R,L]
</VirtualHost>
<VirtualHost *:443>
ServerName owncloud.xxx.edu.ee
ServerAdmin admin@xxx.edu.ee
DocumentRoot /var/www/owncloud
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
SSLEngine on
SSLCertificateKeyFile /etc/apache2/ssl/owncloud-xxx-edu-ee.key
SSLCertificateFile /etc/apache2/ssl/owncloud-xxx-edu-ee.crt
SSLCertificateChainFile /etc/apache2/ssl/terena-bundle.crt
</VirtualHost>
Lülita sisse Apache2 moodulid:
sudo a2enmod ssl
sudo a2enmod rewrite
Taaskäivita veebiserver:
sudo service apache2 restart