abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
dnes 01:00 | Nová verze

Známý šifrovaný komunikátor Signal od verze 3.30.0 již nevyžaduje Google Play Services. Autoři tak po letech vyslyšeli volání komunity, která dala vzniknout Google-free forku LibreSignal (dnes již neudržovaný). Oficiální binárky jsou stále distribuované pouze přes Google Play, ale lze použít neoficiální F-Droid repozitář fdroid.eutopia.cz s nezávislými buildy Signalu nebo oficiální binárku stáhnout z Google Play i bez Google účtu

… více »
xm | Komentářů: 1
včera 23:14 | Nová verze

Po třech týdnech od vydání první RC verze byla vydána první stabilní verze 17.01.0 linuxové distribuce pro routery a vestavěné systémy LEDE (Linux Embedded Development Environment), forku linuxové distribuce OpenWrt. Přehled novinek v poznámkách k vydání. Dotazy v diskusním fóru.

Ladislav Hagara | Komentářů: 3
včera 17:28 | Bezpečnostní upozornění

Byly zveřejněny informace o bezpečnostní chybě CVE-2017-6074 v Linuxu zneužitelné k lokální eskalaci práv. Jde o chybu v podpoře DCCP (Datagram Congestion Control Protocol). Do linuxového jádra se dostala v říjnu 2005. V upstreamu byla opravena 17. února (commit). Bezpečnostní chyba byla nalezena pomocí nástroje syzkaller [Hacker News].

Ladislav Hagara | Komentářů: 2
včera 15:00 | Zajímavý software

Společnost Valve vydala novou beta verzi SteamVR. Z novinek lze zdůraznit oficiální podporu Linuxu. Další informace o podpoře této platformy pro vývoj virtuální reality v Linuxu v diskusním fóru. Hlášení chyb na GitHubu.

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

Po necelém roce od vydání verze 0.67 byla vydána verze 0.68 populárního telnet a ssh klienta PuTTY. Podrobnosti v přehledu změn. Řešeny jsou také bezpečnostní chyby.

Ladislav Hagara | Komentářů: 0
21.2. 21:32 | Nasazení Linuxu

Canonical představuje nejnovější verzi chytré helmy DAQRI s Ubuntu pro rozšířenou realitu. K vidění bude příští týden v Barceloně na veletrhu Mobile World Congress 2017.

Ladislav Hagara | Komentářů: 0
21.2. 21:31 | Pozvánky

Pro zájemce o hlubší znalosti fungování operačních systémů připravila MFF UK nový předmět Pokročilé operační systémy, v rámci něhož se vystřídají přednášející nejen z řad pracovníků fakulty, ale dorazí také odborníci ze společností AVAST, Oracle, Red Hat a SUSE. Tento předmět volně navazuje na kurz Operační systémy ze zimního semestru, ale pokud máte praktické zkušenosti odjinud (například z přispívání do jádra Linuxu) a chcete si

… více »
Martin Děcký | Komentářů: 6
21.2. 21:30 | Pozvánky

Czech JBoss User Group Vás srdečně zve na setkání JBUG v Brně, které se koná ve středu 1. března 2017 v prostorách Fakulty Informatiky Masarykovy Univerzity v místnosti A318 od 18:00. Přednáší Tomáš Remeš a Matěj Novotný na téma CDI 2.0 - New and Noteworthy. Více informací na Facebooku a na Twitteru #jbugcz.

mjedlick | Komentářů: 0
20.2. 23:45 | Zajímavý software

Na blogu Qt bylo představeno Qt 3D Studio. Jedná se o produkt dosud známý pod názvem NVIDIA DRIVE™ Design Studio. NVIDIA jej věnovala Qt. Jedná se o několik set tisíc řádků zdrojového kódu. Qt 3D Studio bude stejně jako Qt k dispozici jak pod open source, tak pod komerční licencí. Ukázka práce s Qt 3D Studiem na YouTube.

Ladislav Hagara | Komentářů: 10
20.2. 17:50 | Komunita

Nadace The Document Foundation (TDF) zastřešující vývoj svobodného kancelářského balíku LibreOffice slaví 5 let od svého oficiálního vzniku. Nadace byla představena 28. září 2010. Formálně byla založena ale až 17. února 2012.

Ladislav Hagara | Komentářů: 0
Jak se stavíte k trendu ztenčování přenosných zařízení (smartphony, notebooky)?
 (13%)
 (2%)
 (72%)
 (3%)
 (10%)
Celkem 688 hlasů
 Komentářů: 66, poslední včera 18:57
    Rozcestník

    Dotaz: Pristup k souboru vytvorenemu v PHP

    21.3.2014 22:33 Ladislav P
    Pristup k souboru vytvorenemu v PHP
    Přečteno: 480×

    Ahoj, mam problem, ktery se snazim rozlousknout a mozna uz se motam v kruhu, tak bych se chtel zeptat zde. Cil je PHP skriptem na webovem serveru vytvorit soubor v tmp a pomoci ftp ho stahnout do jineho adresare. Soubor vytvorim, ma prava 644, vlastnikem je wwwrun, ale ftp mi tvrdi, ze tam zadny takovy soubor neni. Pri testech jsem dosel zhruba k takovemu zapisu, abych si overil, kde je chyba:

    shell_exec ("touch /tmp/aa.aa");  # je jedno, jakym zpusobem soubor pomoci PHP vytvorim

    shell_exec ("ls -la /tmp"); #v poradku, soubor vidim s wwwrun:www 644

    ftp_get ($conn_id,$local,$remote,FTP_BINARY); #FTP mi tvrdi, ze soubor neexistuje

    shell_exec ("ls -la /tmp"); vse vidim, soubor je tam stale

     

    FTP user ma pristup do /tmp. Co je ale uplne divoky a co mi hlava nebere je to, ze kdyz z bashe soubor v /tmp vytvorim a dam mu vlastnika wwwrun:www a 644, tak vse funguje. OS OpenSuse 13.1 x64, Apache standardni instalace. Kde je zakopanej pes?

     

    Diky,L

    Odpovědi

    22.3.2014 11:10 Šangala | skóre: 56 | blog: Dutá Vrba - Wally
    Rozbalit Rozbalit vše Re: Pristup k souboru vytvorenemu v PHP
    Nelze odpovědět, nedostatek informaci např. $local,$remote je skryto, dej víc i s výpisy.
    To, že trpíš stihomamem, ještě neznamená, že po tobě nejdou. ⰞⰏⰉⰓⰀⰜⰉ ⰗⰞⰅⰜⰘ ⰈⰅⰏⰉ ⰒⰑⰎⰉⰁⰕⰅ ⰏⰉ ⰒⰓⰄⰅⰎ ·:⁖⁘⁙†
    22.3.2014 13:21 Ladislav P
    Rozbalit Rozbalit vše Re: Pristup k souboru vytvorenemu v PHP

    OK, tady je ten skript, spoustim ho browserem:

    <?php
    $remote="/tmp/xx.xx";
    $local="/dd/aa.aa"; $ftp_server="localhost";
    $ftp_user="lpf";
    $ftp_pass="lacko"; $conn_id=ftp_connect($ftp_server);
    # Soubor $remote2 jsem vytvoril rucne v bashi, zmenil mu vlastnika na wwwrun:www a 644
    $remote2="/tmp/yy.yy";
    #vytvorim soubor $remote
    shell_exec("touch $remote");
    $output=shell_exec("ls -la /tmp");
    echo "<pre>ls -la /tmp $output</pre>"; if (ftp_login($conn_id,$ftp_user,$ftp_pass)) {
    echo "login OK";
        if (ftp_get($conn_id,$local,$remote,FTP_BINARY)) {
    echo "YES";
    }else{
    echo "NO";
        }
    }
    $output=shell_exec("ls -la /tmp");
    echo "<pre> ls -la /tmp $output</pre>";
    ftp_close($conn_id);
    ?>

    A jeho vystup:

    ls -la /tmp total 8
    drwxrwxrwt  2 root   root 4096 Mar 22 12:51 .
    drwxr-xr-x 25 root   root 4096 Mar 18 21:11 ..
    -rw-r--r--  1 wwwrun www     0 Mar 22 12:53 xx.xx
    

    login OK NO

     ls -la /tmp total 8
    drwxrwxrwt  2 root   root 4096 Mar 22 12:51 .
    drwxr-xr-x 25 root   root 4096 Mar 18 21:11 ..
    -rw-r--r--  1 wwwrun www     0 Mar 22 12:53 xx.xx

    Cilize soubor v tempu existuje minimalne do druheho ls. Nicmene ftp (resp. apache error log) tvrdi, ze nikoliv:
    [php5:error] [pid 12253] [client ::1:38763] PHP Warning: ftp_get(): Failed to open file. in /srv/www/htdocs/test.php on line 18
    Vtipny je, ze celou dobu v /tmp existuje soubor remote2 /tmp/yy.yy:
    
    -rw-r--r--  1 wwwrun www       0 Mar 21 21:45 yy.yy
    a prikazy ls ho nevypisi. 
    A kdyz vymenim v ftp_getu $remote za $remote2, tak vse funguje. Urcite to bude nejaka blbost, ale jsem v koncich :)
    
                
    24.3.2014 20:05 Šangala | skóre: 56 | blog: Dutá Vrba - Wally
    Rozbalit Rozbalit vše Re: Pristup k souboru vytvorenemu v PHP
    Snad že v PHP /tmp není stejný /tmp, není PHP chroot-otavné?
    To, že trpíš stihomamem, ještě neznamená, že po tobě nejdou. ⰞⰏⰉⰓⰀⰜⰉ ⰗⰞⰅⰜⰘ ⰈⰅⰏⰉ ⰒⰑⰎⰉⰁⰕⰅ ⰏⰉ ⰒⰓⰄⰅⰎ ·:⁖⁘⁙†
    25.3.2014 20:40 Ladislav P
    Rozbalit Rozbalit vše Re: Pristup k souboru vytvorenemu v PHP
    Dik za myslenku, muzes to trochu rozvest? PHPko pouziva systemovy tmp pro http upload.
    25.3.2014 21:09 Šangala | skóre: 56 | blog: Dutá Vrba - Wally
    Rozbalit Rozbalit vše Re: Pristup k souboru vytvorenemu v PHP
    Nevím co bych měl rozvést, připadá mi, že pracuješ pokaždé s jiným '/tmp', tedy jediné co mě napadlo je, někde nějaký chroot. No a když se na to tak dívám znovu, tak bych řekl celkem jistě, že ftp-ko bude určitě chroot-ované, to přece obvykle i neobvykle nemá přístup na '/'.
    To, že trpíš stihomamem, ještě neznamená, že po tobě nejdou. ⰞⰏⰉⰓⰀⰜⰉ ⰗⰞⰅⰜⰘ ⰈⰅⰏⰉ ⰒⰑⰎⰉⰁⰕⰅ ⰏⰉ ⰒⰓⰄⰅⰎ ·:⁖⁘⁙†
    25.3.2014 21:52 Ladislav P
    Rozbalit Rozbalit vše Re: Pristup k souboru vytvorenemu v PHP
    Nene, to ftpko je moje a ma (a ted neresme jak moc je to spatne) pristup k /, cilize do systemoveho /tmp ma pristup. A i pisu, ze kdyz soubor vytvorim rucne s uvedenymi atributy v /tmp tak ho ftpko vidi. V pripade, ze tamtez vytvorim soubor pomoci php pres apache, tak ho nevidi.
    26.3.2014 09:02 GeorgeWH | skóre: 35
    Rozbalit Rozbalit vše Re: Pristup k souboru vytvorenemu v PHP
    vytvor ten subor cez php a ptom ho pohladaj na disku. ako uz bolo spomenute, 100% nebude v /tmp ...
    25.3.2014 05:49 Matlák
    Rozbalit Rozbalit vše Re: Pristup k souboru vytvorenemu v PHP
    OT: Nebylo by lepší ten soubor vytvořit v tmp pod adresářem, ke kterému má přístup apache a stáhnout ho odtamtud standardně přes HTTP?
    25.3.2014 05:53 Matlák
    Rozbalit Rozbalit vše Re: Pristup k souboru vytvorenemu v PHP
    A ještě mě napadá - zkoušels jsi LIST nad tím ftp (třeba v nějakém klientu, například ftp ? :-))
    25.3.2014 20:46 Kit | skóre: 37 | Brno
    Rozbalit Rozbalit vše Re: Pristup k souboru vytvorenemu v PHP
    Promiň, ale stále mi není jasné: Proč do toho motáš FTP? Je tam nutné?
    Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
    25.3.2014 21:59 Ladislav P
    Rozbalit Rozbalit vše Re: Pristup k souboru vytvorenemu v PHP
    Prominu :). Je tam nutny. Skoro si myslim, ze tim vypisem toho skriptu jsem to tady trochu zneprehlednil. V zasade jde o to, jak to, ze se prave to FTPko chova jinak k souboru vytvorenemu pomoci php/apache a jinak k souboru vytvorenemu rucne na to same misto se stejnymi vlastnostmi (vlastnik, prava). A protoze to cele zni jako totalni nesmysl, tak za tim vsim bude nejaka blbost, kterou uspesne prehlizim uz docela dlouho.
    25.3.2014 22:16 Kit | skóre: 37 | Brno
    Rozbalit Rozbalit vše Re: Pristup k souboru vytvorenemu v PHP
    Jde mi o to, proč ten soubor nestáhneš přes HTTP. Tím by spousta problémů zmizela.
    Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
    2.4.2014 19:59 Ladislav P
    Rozbalit Rozbalit vše Re: Pristup k souboru vytvorenemu v PHP
    Hmmm, tak jste meli pravdu s tim, ze PHP resp. Apache pouziva vlastni tmp, aspon teda OpenSuse 13.1. Pouziva tzv. privatni tmp, ve vysledku PHP pak pouziva /tmp/systemd-private-???????/tmp/. Nevite nekdo, jak z Apache dostat jmeno tohoto tmp adresare pomoci PHPka? To jmeno se po kazdem restartu Apache meni. Neco jako sys_get_temp_dir pochopitelne nefunguje:(. Dik,L.
    2.4.2014 20:26 MadCatX
    Rozbalit Rozbalit vše Re: Pristup k souboru vytvorenemu v PHP
    Překážky, na které narážíte naznačují, že ten problém řešíte nesprávným způsobem. Proč potřebujete webovou aplikací vytvořit dočasný soubor přístupný přes FTP?
    2.4.2014 20:50 Ladislav P
    Rozbalit Rozbalit vše Re: Pristup k souboru vytvorenemu v PHP
    Ale vzdyt o to vubec nejde. Nyni preci tu otazku mohu polozit takto: Jak zjistim pomoci PHP, jaky tmp adresar je pouzivan webovym serverem v ramci celeho filesystem? Lze to vubec? A ocenuji kazdeho, kdo ma cas a chut odpovedet na otazku. L.
    2.4.2014 21:31 MadCatX
    Rozbalit Rozbalit vše Re: Pristup k souboru vytvorenemu v PHP
    Úplně spolehlivě to IMHO zjistit nelze. Ten webový server může běžet třeba v chrootu.
    2.4.2014 21:35 Šangala | skóre: 56 | blog: Dutá Vrba - Wally
    Rozbalit Rozbalit vše Re: Pristup k souboru vytvorenemu v PHP
    To, že trpíš stihomamem, ještě neznamená, že po tobě nejdou. ⰞⰏⰉⰓⰀⰜⰉ ⰗⰞⰅⰜⰘ ⰈⰅⰏⰉ ⰒⰑⰎⰉⰁⰕⰅ ⰏⰉ ⰒⰓⰄⰅⰎ ·:⁖⁘⁙†
    AraxoN avatar 3.4.2014 10:22 AraxoN | skóre: 45 | blog: slon_v_porcelane | Košice
    Rozbalit Rozbalit vše Re: Pristup k souboru vytvorenemu v PHP
    Ja len doplním pre toho kto otázku položil:

    Odpoveď je síce správna, ale otázka nie. Tieto funkcie by Ti boli platné ak by si používal tmpfile(). Ty ale ten súbor vytváraš cez shell_exec() a cestu si tam dávaš napevno. To znamená, že Ti to beží v chroot-e. Takže si buď vypneš chroot, čo neodporúčam, pretože tam je kvôli bezpečnosti a v Tvojom prípade je asi dobre, že tam je. Alebo musíš zmeniť logiku tej svojej aplikácie.
    A fine is a tax for doing wrong. A tax is a fine for doing well.
    3.4.2014 11:46 Lucius
    Rozbalit Rozbalit vše Re: Pristup k souboru vytvorenemu v PHP

    Založit nové vláknoNahoru

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

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