Az ownCloud telepítése Ubuntu alá

Az ownCloud nyílt forrású felhő szolgáltatás, mely PHP+ajax alapokon nyugszik, vagyis platformfüggetlen. (UPDATE) – írta: Honkydoo, 10 éve

Bevezetés

A fórumon felmerült az igény, hogy valaki leírja az owncloud server telepítésének menetét, és én pedig magamra vállaltam a feladatot.

A telepítés egy Ubuntu 13.10 x64-es rendszerre íródott, de kis ügyességgel más rendszerre is átvihető.

Mi az ownCloud? Egy nyílt forrású felhő szolgáltatás, mely PHP+ajax alapokon nyugszik, vagyis platformfüggetlen. Jó hír továbbá, hogy próbál a kliens programjaival is az lenni. Azért írom, hogy csak próbál, mert jelenleg Windows Phone 8-ra nincs kliens program, de kis trükkel, megoldható az is.

Telepítés

1. A tároló felvétele a listára:

wget http://download.opensuse.org/repositories/isv:ownCloud:desktop/xUbuntu_13.10/Release.key
apt-key add - < Release.key

echo 'deb http://download.opensuse.org/repositories/isv:ownCloud:desktop/xUbuntu_13.10/ /' >> /etc/apt/sources.list.d/owncloud-client.list
apt-get update

2. Az owncloud server telepítése
apt-get install owncloud

Ha még nincs telepítve a mysql, akkor települni fog, és kérni fog egy root jelszót. Ezt adjuk meg, más kérdés valószínűleg nem lesz a telepítés során.

Beállítás

Írjuk be a böngészőbe a következőt:
http://localhost/owncloud

Ha ez a kép fogad minket, még egy parancsot ki kell adni.
sudo chown www-data /etc/owncloud

Ezzel az owncloud mappa a webserver tulajdonába kerül.

Most a következő kép fogad minket.

Érdemes külön usert létrehozni mysql-ben az ownCloud-nak.
Lépjünk be a mysql console-jába a következő paranccsal:
mysql -u root -p

A jelszónak, a telepítéskor megadott jelszót adjuk meg.

Majd hozzunk létre egy felhasználót az ownCloudnak.
CREATE USER 'owncloud_usr'@'localhost' IDENTIFIED BY '[jelszó]';

Hozzunk létre az adatbázist.
CREATE DATABASE IF NOT EXISTS owncloud_db;

Végül adjunk jogokat a usernek.
Fontos! A következő parancs egy soros!
GRANT ALL PRIVILEGES ON owncloud_db.* TO 'owncloud_usr'@'localhost' IDENTIFIED BY '[jelszó]';

Majd lépjünk ki.
quit

Most lépjünk vissza a böngészőbe.
Állítsuk be a kívánt felhasználónevet és a jelszót a felhőnknek.
Adjuk meg az adatbázisunk adatait. (owncloud_usr, [jelszó], owncloud_db)

Majd nyomjunk a beállítások befejezésére.

Ha ez megvan jelentkezünk be..

Távoli elérés

Gondolom,nem csak az otthoni hálózatból akarjuk elérni a felhőnket, és ha nincs fix IP-nk, érdemes beállítani valamilyen dinamikus DNS kiszolgálót.
Ez lényegében egy DNS server, ami a gépünkön található kliens segítségével IP címet rendel a DNS névhez.

1. Látogassunk el a no-IP.com-ra

2. Regisztráljunk be.

3. Aktiváljuk a kapott e-mail-lel a fiókunkat.

4. Ha ezzel megvagyunk, töltsük le a no-IP klienst a gépükre.

5. Tömörítsük ki. tar xf noIP-duc-linux.tar.gz

6. Majd menjünk bele a kitömörített könyvtárba. cd noIP-2.1.9-1/

7. Adjuk ki a bűvös parancsokat:
make
sudo make install

8. Ez után kérni fogja a kliens a fiókunk felhasználónevét (e-mail cím) és jelszavát, ha ezt megadtuk, kérni fogja még a frissítési időt. Ha ezeket megadtuk készen vagyunk.

Jegyezzük meg a DNS címünket, mert még szükség lesz rá.

Biztonság

UPDATE: Ha valakinek a lentebb leírtakkal nem működne az ssl beállítás, akkor itt egy leírás ami talán segíthet.

A kívánt owncloud klienssel a program már használható, de én jobbnak láttam a https kapcsolat beállítását.

1. Először is aktiváljuk az SSL modult.
sudo a2enmod ssl

2. Indítsuk újra az apache-t.
sudo service apache2 restart

3. Hozzunk létre egy könyvtárat, ahol a tanúsítványokat tároljuk.
sudo mkdir /etc/apache2/ssl

4. Generáljuk le a tanúsítványokat.
Fontos! A következő parancs egy soros!
sudo openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /etc/apache2/ssl/apache.key -out /etc/apache2/ssl/apache.crt

Common Name-nek (CN) adjuk meg a DNS címünket.

5. Állítsuk be az apache-ot.
sudo nano /etc/apache2/sites-available/default-ssl

Adjuk hozzá a következő sorokat:
ServerName [DNS cím]:443

SSLEngine on
SSLCertificateFile /etc/apache2/ssl/apache.crt
SSLCertificateKeyFile /etc/apache2/ssl/apache.key

6. Lépjünk ki, majd indítsuk újra az apache-ot
sudo service apache2 reload

Most már csak a Port Forwarding-ot kell elvégezni a routeren, vagyis a külső 443-as portot a server 443-as portjára kell állítani és kész.

Vagyis ha beírjuk a böngészőbe, hogy https://[localhost vagy dns cím vagy ip cím]/owncloud
és elfogadjuk a tanúsítványt, akkor mennie kell.

Befejezés

Megpróbáltam a legjobb tudásom szerint összeállítani a cikket. Remélem, nincsenek benne túl nagy malőrök. Ja, és köszönöm, hogy elolvastad! :)

Források

[link] [link] [link]

UPDATE:
Eszembe jutott egy egyszerű kis trükk, amivel lehet javítani a belső hálózati kliensek sebességét. Nos ha véletlenül gigabit van otthon, és a leírásom szerint csináltátok meg a telepítést/beállítást, akkor feltűnhet, hogy hiába van otthon gigabites router nem megy annyira gyorsan a szinkronizáció...
Ennek oka, hogy a DDNS cím a router külső címére mutat, és mi belül vagyunk, azaz a routernek mindig el kell végeznie a routolást.. Ezt meg lehet spórolni, mégpedig úgy, hogy a belső kliensen állítjuk be, hogy a DDNS címünk a belső a server belső fix ipjére mutasson. Ehhez ubuntun a hosts fájlt kell szerkeszteni:

sudo nano /etc/hosts

A fájlban be van írva már a localhost, ezt hagyjuk benne, és írjuk a következő sorba a "példa" szerint a szerverünk belső fix ip címét, és utána a DDNS címet.
Mentsünk, majd ürítsük a dns cachet, indítsuk újra a routert is, és elvileg ha mindent jól csináltunk már a belső hálózaton keresztül megy a kommunikáció az owncloud server és a kliens között. :))

Itt elérkeztem ahhoz a ponthoz, hogy az atom porci "határait" feszegetem. :) Elkelne már egy erősebb alaplap..

Azóta történt

  • StartSSL és Apache

    Hitelesített SSL tanúsítvány ingyen weblapodhoz: inkább te is okulj utóbbi hónapok adatkezelési botrányaiból!

  • SaltStack: központosított szervervezérlési alapok

    Egy kevésbé ismert szoftver, amivel jelentősen le tudom rövidíteni a szerver üzemeltetési és telepítési feladataimat.

  • TP-LINK WDS Bridge

    Gyenge a jel, nagy a távolság, szakadozik a kapcsolat? Oldjuk meg a Wifi hatótávnövelését harmadáron!

Előzmények