abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    včera 23:22 | Nová verze

    Hudební přehrávač Amarok byl vydán v nové major verzi 3.0 postavené na Qt5/KDE Frameworks 5. Předchozí verze 2.9.0 vyšla před 6 lety a byla postavená na Qt4. Portace Amaroku na Qt6/KDE Frameworks 6 by měla začít v následujících měsících.

    Ladislav Hagara | Komentářů: 2
    včera 21:44 | Komunita

    Ubuntu 24.10 bude Oracular Oriole (věštecká žluva).

    Ladislav Hagara | Komentářů: 1
    včera 20:22 | Nová verze

    Byla vydána nová verze 2.45.0 distribuovaného systému správy verzí Git. Přispělo 96 vývojářů, z toho 38 nových. Přehled novinek v příspěvku na blogu GitHubu a v poznámkách k vydání. Vypíchnout lze počáteční podporu repozitářů, ve kterých lze používat SHA-1 i SHA-256.

    Ladislav Hagara | Komentářů: 0
    včera 13:33 | IT novinky

    Před 25 lety, ve čtvrtek 29. dubna 1999, byla spuštěna služba "Úschovna".

    Ladislav Hagara | Komentářů: 0
    včera 01:00 | Nová verze

    Byla vydána nová verze 24.04.28 s kódovým názvem Time After Time svobodného multiplatformního video editoru Shotcut (Wikipedie) a nová verze 7.24.0 souvisejícího frameworku MLT Multimedia Framework. Nejnovější Shotcut je vedle zdrojových kódů k dispozici také ve formátech AppImage, Flatpak a Snap.

    Ladislav Hagara | Komentářů: 0
    28.4. 16:33 | Nová verze Ladislav Hagara | Komentářů: 0
    28.4. 03:22 | Zajímavý článek

    V aktuálním příspěvku na blogu počítačové hry Factorio (Wikipedie) se vývojář s přezývkou raiguard rozepsal o podpoře Linuxu. Rozebírá problémy a výzvy jako přechod linuxových distribucí z X11 na Wayland, dekorace oken na straně klienta a GNOME, změna velikosti okna ve správci oken Sway, …

    Ladislav Hagara | Komentářů: 0
    28.4. 00:11 | Nová verze

    Rakudo (Wikipedie), tj. překladač programovacího jazyka Raku (Wikipedie), byl vydán ve verzi #171 (2024.04). Programovací jazyk Raku byl dříve znám pod názvem Perl 6.

    Ladislav Hagara | Komentářů: 7
    27.4. 17:44 | Nová verze

    Společnost Epic Games vydala verzi 5.4 svého proprietárního multiplatformního herního enginu Unreal Engine (Wikipedie). Podrobný přehled novinek v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    26.4. 17:11 | Nová verze

    Byl vydán Nextcloud Hub 8. Představení novinek tohoto open source cloudového řešení také na YouTube. Vypíchnout lze Nextcloud AI Assistant 2.0.

    Ladislav Hagara | Komentářů: 12
    KDE Plasma 6
     (75%)
     (8%)
     (2%)
     (15%)
    Celkem 882 hlasů
     Komentářů: 4, poslední 6.4. 15:51
    Rozcestník

    Sdílení Mozilla kalendáře přes WebDAV na Red Hat / CentOS

    10.1.2006 13:00 | Přečteno: 3694× | poslední úprava: 13.1.2006 14:01

    1. díl - rozběhnutí WebDAV

    Obecný úvod:

    Úvodem bych chtěl poděkovat za pěkný článek. Asi před půl rokem jsem dospěl k podobnému závěru, že totiž možnost sdílení kalendářů a možnost společného plánování by byla ve firmě kde pracuji víc než užitečná.

    Jako nejlepší variantu jsem vyhodnotil kalendář pro Mozillu dostupný zde nebo zde. Vybral jsem si rozšíření do Mozilla Thunderbirdu, protože považuji za výhodné mít v kalendáři zapnutá upozornění e-mailem, což - pokud vím v Sunbirdu zatím možné není. Kalendář pro Thunderbird se však dá spouštět samostatně (i bez Thunderbirdu) a funkce upozorňování e-mailem je přitom zachována (pokud je kalendář spuštěn).

    Abych zozběhl sdílení kalendáře přes WebDAV, pokusil jsem se najít nějaký manuál. Většinou jsem se dozvěděl, že je to velmi jednduché a to mne povzbudilo. Brzy jsem však zjistil, že to zase tak jednoduché není, protože manuály jsou pro jiné distribuce a po několika neúspěšných pokusech jsem musel začít řešit "nalehavější" věci...

    Během toho půl roku jsem se k WebDAVu několikrát asi tak na 10 minut vrátil, abych zjistil, že už si nepamatuju co jsem posledně nastavil. Po novém roce se siutace trochu uklidnila a tak jsem začal od začátku ;-).

    Snažil jsem si ulehčit siutaci a zeptat se známých. Ani to nepomohlo. WebDAV prý z důvodu zabezpečení přístupů ke sdílení vyhodnotili jako nepoužitelný. Znovu jsem začal pátrat na webu a protože už jsem věděl, že že kdo hledá ve spěchu nic nenajde tentokrát jsem tolik nespěchal a tak jsem našel. WebDAV běží a protože to příště chci mít po ruce a také proto, že by to mohlo někomu ušetřit práci, rozhodl sem se to "pověsit" sem.

    a) Ověříme si, zda máme nainstalované potřebné balíčky

    U Red Hatu 9 balíček Apache (httpd-2.0x) už obsahuje apache WebDAV moduly. Nejprve si ověříme, že máme balíček httpd-2.0 instalován:

    # rpm -qa | grep httpd
    httpd-2.0.40-21.5 

    A že httpd-2.0 poskytuje mod_dav:

    # rpm -q --provides httpd | grep dav
    mod_dav.so
    mod_dav_fs.so

    Defaultní konfigurační soubor Apache (v Red Hatu /etc/httpd/conf/httpd.conf již obsahuje instrukce podporující WebDav.

    Při problémech je možné porovnat obsah vašeho httpd.conf s tímto odkazem

    Jako základní autentifikační metodu použijeme autentifikaci s použitím SSL. Proto si ověříme, že máme nainstalovány openssl a mod_ssl:

    # rpm -qa | grep -i ssl
    openssl096b-0.9.6b-12
    openssl-devel-0.9.7a-20
    openssl095a-0.9.5a-19
    perl-Crypt-SSLeay-0.45-7
    pyOpenSSL-0.5.1-8
    docbook-style-dsssl-1.76-8
    openssl-0.9.7a-20
    openssl096-0.9.6-23.9
    openssl-perl-0.9.7a-20
    mod_ssl-2.0.40-21.5

    b) Nastavení SSL- vytvoření certifikátu

    Pokud ještě na našem serveru není na nakonfigurováno SSL, vytvoříme SSL certifikát pro náš počítač. Red Hat obsahuje soubor make, který tento proces usnadní.

    Jdeme do adresáře, který obsahuje soubor make a vytvoříme certifikát a key soubor (.pem) pro náš počítač. Pojmenujeme ho jako [něco].pem:

    # cd /etc/httpd/conf
    # make www.myhost.org.pem
    umask 77 ; \
    PEM1=`/bin/mktemp /tmp/openssl.XXXXXX` ; \
    PEM2=`/bin/mktemp /tmp/openssl.XXXXXX` ; \
    /usr/bin/openssl req -newkey rsa:1024 -keyout $PEM1 -nodes -x509 -days 365 -out $PEM2 ; \
    cat $PEM1 > www.myhost.org.pem ; \
    echo "" >> www.myhost.org.pem ; \
    cat $PEM2 >> www.myhost.org.pem ; \
    rm -f $PEM1 $PEM2
    Generating a 1024 bit RSA private key
    ...........................................++++++
    ...........++++++
    writing new private key to '/tmp/openssl.c7ucXb'
    -----

    Budeme požádáni o vložení informací, které budou začleněny do našeho certifikátu (požadavku).

    Některé řádky můžeme ponechat prázdné. V některých polích budou defaultní hodnoty, Pokud stiskneme „enter '.', pole zůstanou prázdná.

    Country Name (2 letter code) [GB]:CZ
    State or Province Name (full name) [Berkshire]:Liberecký
    Locality Name (eg, city) [Newbury]:Liberec
    Organization Name (eg, company) [My Company Ltd]:firma
    Organizational Unit Name (eg, section) []:IT
    Common Name (eg, your name or your server's hostname) []:www.myhost.org/
    Email Address []:jmeno@neco.cz 

    Nyní přesuneme certifikát do adresáře pro certifikáty:

    # mv /etc/httpd/conf/www.myhost.org.pem /etc/httpd/conf/ssl.crt/

    To napovídá umístění certifikátu v v konfiguračním souboru Apache - SSL:

    /etc/httpd/conf.d/ssl.conf.

    Pokud nepotřebujeme defaultní příkazy pro SSLCertificateFile a SSLCertificateKeyFile, tak je zakomentujeme křížkem # na začátku těchto řádků. Pak vložíme SSLCertificate File směrnici, která odkazuje na náš nový certifikát:

    SSLCertificateFile /etc/httpd/conf/ssl.crt/www.myhost.org.pem

    SSLCertificateKeyFile směrnice není nezbytná, protože klíč je obsažen v cert .pem souborech.

    Spusťíme nebo restartujeme apache:

    # service httpd start

    Jestliže služba nenaběhne, najdeme příčinu v logu /var/log/httpd/.

    Předpokládejme, že apache nastartoval. Pro přístup použijme webový prohlížeč:

    https://www.myhost.org/

    Protože používáme certifikát, který jsme si sami podepsali pravděpodobně obdržíme varování o neznámé autoritě. To je v pořádku.

    c) Vytvoření WebDAV adresáře

    Musíme vytvořit adresář, kam bude apache ukládat soubory přesWebDAV (každý uživatel bude mít podadresář v tomto adresáři). Webdav adresář musí patřit do účtu služby apache. V Red Hat je tato služba pravděpodobně "apache". Jestliže apache běží, můžete zjistit jeho účet v seznamu běžících procesů:

    # ps axu | grep httpd root 1262 0.0 0.0 81048 884 ? S Jan06 0:42 /usr/sbin/httpd - apache 26102 0.0 0.2 82524 2380 ? S Jan29 0:00 /usr/sbin/httpd - apache 26103 0.0 0.2 82528 2392 ? S Jan29 0:00 /usr/sbin/httpd - apache 26104 0.0 0.2 82528 2896 ? S Jan29 0:00 /usr/sbin/httpd - apache 26105 0.0 0.2 82528 2400 ? S Jan29 0:00 /usr/sbin/httpd - apache 26106 0.0 0.2 82528 2432 ? S Jan29 0:00 /usr/sbin/httpd - apache 26107 0.0 0.2 82524 2372 ? S Jan29 0:00 /usr/sbin/httpd - apache 26108 0.0 0.2 82524 2424 ? S Jan29 0:00 /usr/sbin/httpd - apache 26109 0.0 0.2 82524 2404 ? S Jan29 0:00 /usr/sbin/httpd - root 32025 0.0 0.0 1740 596 pts/0 S 03:26 0:00 grep httpd

    Nebo můžete zkontrolovat výpis pro „User“ a „Group“ v konfiguračním souboru Apache (zde jen výběr):

    # grep "User " /etc/httpd/conf/httpd.conf | grep -v ^
    # User apache
    # grep "Group " /etc/httpd/conf/httpd.conf | grep -v ^
    # Group apache

    My použijeme pro WebDAV adresář /var/www/webdav

    # mkdir /var/www/webdav

    Ten je vně adresáře /var/www/html, který Apache používá pro své dokumenty (např. webové stránky). Později vytvoříme instrukci (Alias) v souboru ssl.conf, kterou řekneme apachi, kde webdav nalezne.

    Nyní změníme vlastnictví a učiníme webdav adresář čitelný pro účet služby apache:

    # chown root:apache /var/www/webdav
    # chmod 750 /var/www/webdav
    
    a v tomto adresáři vytvoříme podadresáře pro jednotlivé uživatele.

    d) Ověřování uživatelů

    Autentifikace Je několik způsobů jak může Apache ověrovat uživatele. My budeme používat příkaz httpasswd pro vytvoření souboru pro autentifikaci uživatelů, terý se jmenuje passwd.dav. Vytvoříme místo pro umístění souboru passwd.dav a nastavíme mu práva tak, aby ho mozla číst pouze služba apache:

    # mkdir /etc/httpd/passwd
    # chown root:apache /etc/httpd/passwd
    # chmod 750 /etc/httpd/passwd 

    Nyní použijeme příkaz htpasswd pro vytvoření souboru a vložení prvního uživatele:

    # htpasswd -c /etc/httpd/passwd/passwd.dav franta
    New password: 
    Re-type new password: 
    Adding password for user franta 
    

    POZOR!Volba -c se používá pouze poprvé pro vytvoření souboru passwd.dav. Pokud použijeme volbu -c znovu, přepíšeme tak bez varování soubor passwd.dav (a tím ztratíme každé zatím vytvořené heslo).

    Teď nastavíme vlastnictví a práva tak, že pouze apache může tento soubor číst:

    # chown root:apache /etc/httpd/passwd/passwd.dav
    # chmod 640 /etc/httpd/passwd/passwd.dav

    e) Uživatelské adresáře

    Vytvoříme adresář pro uživatele frantu pro ukládání jeho dat přes webdav:

    # mkdir /var/www/webdav/franta

    a změníme vlastnictví a práva tohoto adresáře tak, aby do něj bylo možné přistupovat jen přes apache:

    # chown apache:apache /var/www/webdav/franta
    # chmod 750 /var/www/webdav/franta 
    

    POZOR: mod_dav předpokládá, že bude mít exkluzivní přístup k souborům pouze přes WebDAV; povolování přístupů pro úpravy těchto souborů ostatními se nedoporučuje. Více zde.

    f) Nastavení oprávnění ke vstupu do adresáře WebDAV pro uživatele

    V konfiguračním SSL souboru Apache /etc/httpd/conf.d/ssl.conf vložíme někam mezi [VirtualHost _default_:443] a [/VirtualHost] následující:

    Alias /webdav/ "/var/www/webdav/" 
    [Directory /var/www/webdav] 
    DAV on 
    AuthType Basic 
    AuthName "WebDAV Storage" 
    AuthUserFile /etc/httpd/passwd/passwd.dav 
    [/Directory]

    Poznámka: Soubor ssl.conf používá syntaxi se závorkami, které se používají u html formátování. Jejich použití zde není umožněno :-(. Proto jsem je zde ve výpisu nahradil hranatými [ ] závorkami. Při editaci souboru ssl.conf je však nutné jeho syntaxi zachovat a použít odpovídající "špičaté" závorky.


    Příkaz Alias říká Apachi, kde má hledat pro požadavky pro /webdav/

    Příkaz DAV on Zapíná WebDAV pro adresář (a jeho podadresáře).

    Příkaz Auth* specifikuje, že přístup pro přístup kohokoli do adresáře webdav bude použita základní autentifikace za použití souboru hesel, který jsme vytvořili dříve.

    Pod něj vložíme směrnice pro každý WebDAV uživatelský adresář:

    [Directory /var/www/webdav/franta/]
    require user franta [/Directory]

    Nyní editaci uložíme, ukončíme náš editor a restartujte apache:

    # service httpd restart
    Pokud se start nepovede, podíváme se do logu ;-).

    g) Test autentifikace přes SSL

    Vytvoříme testovací soubor ve WebDAV uživatelském adresáři a změníme vlastníka a práva pro apache:

    # echo 'hello world!' > /var/www/webdav/franta/test.txt
    # chown apache:apache /var/www/webdav/franta/test.txt
    # chmod 640 /var/www/webdav/franta/test.txt

    Zkusíme otevřít testovací soubor ve webovém prohlížeči bez použití SSL:

    http://www.myhost.org/webdav/franta/test.txt

    Obdržíme chybové hlášení 404 (objekt není nalezen).

    Pokud tomu tak není, může to být způsobeno např. tím, že adresář webdav je umístěn někde uvnitř kořenového adresáře pro dokumenty apache - tj. např: /var/www/html/webdav).

    Nyní zkusíme přístup k testouvacímu souboru za použití SSL:

    https://www.myhost.org/webdav/franta/test.txt

    Můžeme obdržet certifikační varování. Po jeho akceptování se objeví přihlašovací dialog. Zadámee přihlašovací informace tak, jak jsme je vytvořili dříve.

    Pokud máme vše správně, uvidíme ve svém prohlížeči toto:

    hello world!

    V tomto bodě Máme WebDAV připraven k ukládání dat. Pro to je třeba nějaký webdav klient jako je např. Mozilla Calendar.

           

    Hodnocení: 89 %

            špatnédobré        

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    Komentáře

    Vložit další komentář

    10.1.2006 15:56 Pavel 'lingeek' Szalbot | skóre: 54 | Třinec
    Rozbalit Rozbalit vše Re: Sdílení Mozilla kalendáře přes WebDAV na Red Hat / CentOS
    Nemám moc čas to číst, ale délka vypadá slibně - proč to nevydat jako článek?
    Math, as Barbie says, is hard.
    10.1.2006 15:57 Pavel 'lingeek' Szalbot | skóre: 54 | Třinec
    Rozbalit Rozbalit vše Re: Sdílení Mozilla kalendáře přes WebDAV na Red Hat / CentOS
    Hmm, tak ono už vyšlo něco podobného;-).
    Math, as Barbie says, is hard.
    10.1.2006 20:06 Non_E | skóre: 24 | blog: hic_sunt_leones | Pardubice
    Rozbalit Rozbalit vše Re: Sdílení Mozilla kalendáře přes WebDAV na Red Hat / CentOS
    Skutečně nefungují ostrézávorky přes entity? V komentářích ano, ale blog tady nemám, tak nemůžu posoudit.
    <  =  &lt;
    >  =  &gt;
    
    Only Sith deals in absolutes.
    10.1.2006 23:01 LuděkS | skóre: 31 | blog: publish | Liberec
    Rozbalit Rozbalit vše Re: Sdílení Mozilla kalendáře přes WebDAV na Red Hat / CentOS
    No, když jsem to zadával, tak i když jsem to vložil mezi značky pre nebo code, vždy mi to hlásilo, že např. "Značka DIRECTORY není povolena!", takže jsem to musel dát do nějakých jiných závorek. Např.[/Directory]. Nevím, možná je způsob, jak to napsat ale nepřišel jsem na něj. Pokud mi poradíte, budu rád. Díky!

    PS: Ale dá se to vydržet i bez toho ;-).

    wake avatar 11.1.2006 08:22 wake | skóre: 30 | blog: wake | Praha
    Rozbalit Rozbalit vše Re: Sdílení Mozilla kalendáře přes WebDAV na Red Hat / CentOS
    autentifikace neexistuje. to, co myslíte, je autentizace.
    Tento příspěvek má hlavičku i patičku!
    11.1.2006 10:20 Honza
    Rozbalit Rozbalit vše Re: Sdílení Mozilla kalendáře přes WebDAV na Red Hat / CentOS
    11.1.2006 11:02 LuděkS | skóre: 31 | blog: publish | Liberec
    Rozbalit Rozbalit vše Re: Sdílení Mozilla kalendáře přes WebDAV na Red Hat / CentOS
    Ano, taky jsem to zvažoval. Myslím, že slovo autentifikace lze také použít. Díval jsem se do slovníku a na internet a mělo by být možné použít oboje. Ale klidně si tam dosaďte autentizaci. Myslím, že podstatné je, zda to funguje. Přesto děkuji za připomínku.
    wake avatar 18.1.2006 00:05 wake | skóre: 30 | blog: wake | Praha
    Rozbalit Rozbalit vše Re: Sdílení Mozilla kalendáře přes WebDAV na Red Hat / CentOS
    dobře. výraz autentifikace mne tahá za oči (a připomíná mi ratifikaci a jiné operace nad tělesem parlamentu). byl byste prosím tak laskav a používal výraz autentizace jež se podobá spíše očistné deratizaci ? ... ;-)
    Tento příspěvek má hlavičku i patičku!
    10.2.2006 13:44 Martin Vlasak | skóre: 9 | blog: Muj_prvni_blog | Liberec
    Rozbalit Rozbalit vše Re: Sdílení Mozilla kalendáře přes WebDAV na Red Hat / CentOS
    Zdravim, mam problem s nastaveni WEBDAVu.
    DavLockDB /var/lock/DavLock
    
    <Directory "/srv/www/htdocs/kalendar">
    
    #    <IfModule mod_dav.c>
          Dav On
    #    </IfModule>
    
        AllowOverride FileInfo AuthConfig Limit
        Options MultiViews Indexes SymLinksIfOwnerMatch IncludesNoExec
        
    
        Order allow,deny
        Allow from all
        
        AuthName "Kalendar"
        AuthType Basic
        AuthUserFile /srv/www/htdocs/kalendar/.htpasswd
        AuthGroupFile /dev/null
        <Limit GET PUT POST DELETE PROFIND PROPATCH MKCOL COPY MOVE LOCK UNLOCK>
          Require valid-user    
        </Limit>
    </Directory>
      
    Tak to mam nastaveny adresar, kde bych chtel pouzit WEBDAV. Kdyz pouziji program litmus, tak skonci v druhym kroku hlaskou - server nepodporuje MKCOL.
    xxx:/home/ads # litmus http://xxx..cz/kalendar xxx xxxxx
    -> running `basic':
     0. init.................. pass
     1. begin................. FAIL (Could not create new collection `/kalendar/litmus/' for tests: 500 Internal Server Error
    Server must allow `MKCOL /kalendar/litmus/' for tests to proceed)
    <- summary for `basic': of 2 tests run: 1 passed, 1 failed. 50.0%
    See debug.log for network/debug traces.
    V logu se objevy
    [Thu Feb 09 17:12:28 2006] [error] [client xxx] The locks could not be queried for verification against a possible "If:" header.  [500, #0]
    [Thu Feb 09 17:12:28 2006] [error] [client xxx] Could not open the lock database.  [500, #400]
    [Thu Feb 09 17:12:28 2006] [error] [client xxx] (13)Permission denied: Could not open property database.  [500, #1] 

    Mam SUSE 10.0 + APACHE instalovany z instalacnich CD. Dekuji za jakoukoliv radu a pomoc. Martin

    Založit nové vláknoNahoru

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.