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 15:00 | IT novinky

    Spoluzakladatel a předseda správní rady americké softwarové společnosti Oracle Larry Ellison vystřídal spoluzakladatele automobilky Tesla a dalších firem Elona Muska na postu nejbohatšího člověka světa. Hodnota Ellisonova majetku díky dnešnímu prudkému posílení ceny akcií Oraclu odpoledne vykazovala nárůst o více než 100 miliard dolarů a dosáhla 393 miliard USD (zhruba 8,2 bilionu Kč). Hodnota Muskova majetku činila zhruba 385 miliard dolarů.

    Ladislav Hagara | Komentářů: 0
    včera 21:22 | Nová verze

    Bylo vydáno Eclipse IDE 2025-09 aneb Eclipse 4.37. Představení novinek tohoto integrovaného vývojového prostředí také na YouTube.

    Ladislav Hagara | Komentářů: 0
    včera 18:22 | IT novinky

    T-Mobile od 15. září zpřístupňuje RCS (Rich Communication Services) zprávy i pro iPhone.

    Ladislav Hagara | Komentářů: 2
    včera 13:22 | IT novinky

    Společnost ARM představila platformu Arm Lumex s Arm C1 CPU Cluster a Arm Mali G1-Ultra GPU pro vlajkové chytré telefony a počítače nové generace.

    Ladislav Hagara | Komentářů: 0
    včera 05:44 | Nová verze

    Unicode Consortium, nezisková organizace koordinující rozvoj standardu Unicode, oznámila vydání Unicode 17.0. Přidáno bylo 4 803 nových znaků. Celkově jich je 159 801. Přibylo 7 nových Emoji.

    Ladislav Hagara | Komentářů: 0
    9.9. 21:00 | IT novinky Ladislav Hagara | Komentářů: 14
    9.9. 18:33 | Nová verze

    Realtimová strategie Warzone 2100 (Wikipedie) byla vydána ve verzi 4.6.0. Podrobný přehled novinek, změn a oprav v ChangeLogu na GitHubu. Nejnovější verzi Warzone 2100 lze již instalovat také ze Snapcraftu a Flathubu.

    Ladislav Hagara | Komentářů: 1
    9.9. 12:22 | IT novinky

    Polské vývojářské studio CD Projekt Red publikovalo na Printables.com 3D modely z počítačové hry Cyberpunk 2077.

    Ladislav Hagara | Komentářů: 1
    9.9. 11:44 | Pozvánky

    Organizátoři konference LinuxDays 2025 vydali program a zároveň otevřeli registrace. Akce se uskuteční 4. a 5. října na FIT ČVUT v pražských Dejvicích, kde vás čekají přednášky, workshopy, stánky a spousta šikovných lidí. Vstup na akci je zdarma.

    Petr Krčmář | Komentářů: 7
    8.9. 22:00 | IT novinky

    Uživatelé komunikátoru Signal si mohou svá data přímo v Signalu bezpečně zálohovat a v případě rozbití nebo ztráty telefonu následně na novém telefonu obnovit. Zálohování posledních 45 dnů je zdarma. Nad 45 dnů je zpoplatněno částkou 1,99 dolaru měsíčně.

    Ladislav Hagara | Komentářů: 0
    Pro otevření více webových stránek ve webovém prohlížečí používám
     (83%)
     (7%)
     (2%)
     (2%)
     (4%)
     (2%)
    Celkem 163 hlasů
     Komentářů: 12, poslední včera 13:00
    Rozcestník

    Dotaz: cron a PHP

    8.4.2009 16:14 david
    cron a PHP
    Přečteno: 502×

    dobrý den, mám dotaz

    zadal jsem do cronu příkaz na spuštění

     00 16 * * * root lynx -dump http://www.xyz.ccz/platba.php 
    
    a bohuzel uvnitř tohoto php kodu je systemovy přikaz
    system(´iptables -t nat .....´)
    který se me pohužel nespustí, nevíte prosím radu?
    dekuji david
    

    Odpovědi

    8.4.2009 16:20 Filip Jirsák | skóre: 67 | blog: Fa & Bi
    Rozbalit Rozbalit vše Re: cron a PHP
    Jsou dvě možnosti -- buď se vám nespouští ten příkaz z cronu, nebo je chyba ve skriptu na serveru. Zjistíte to snadno -- zkuste adresu zadat ručně do prohlížeče a ověřte si, zda se skript na serveru spustil. Aby vám šlo spustit iptables na serveru, musí webserver běžet pod rootem.
    8.4.2009 16:23 kraken
    Rozbalit Rozbalit vše Re: cron a PHP
    sudo je riesenie....
    8.4.2009 16:25 dejvic | skóre: 3
    Rozbalit Rozbalit vše Re: cron a PHP

    jak prosím se sudo?

    8.4.2009 16:29 kraken
    Rozbalit Rozbalit vše Re: cron a PHP
    man sudoers
    syntax: user-pod-ktorym-bezi-webserver ALL=(ALL) NOPASSWD: /sbin/iptables

    zjednodusene ukazky:
    apache ALL=(ALL) NOPASSWD: /sbin/iptables
    www-data ALL=(ALL) NOPASSWD: /sbin/iptables
    8.4.2009 20:25 david
    Rozbalit Rozbalit vše Re: cron a PHP

    muze me nekdo prosim prelozit do s tim prikazem sudo.

    moc se v linuxu nevyznam, potrebuji prave na jednom serveru zprovoznit pravidelné spousteni toho skriptu

     

    tento prikaz nejde

     

    $shellOutput = system('iptables -t nat -I PREROUTING -p tcp --dport 80 -s ${'.trim($row_usr["ip_1"]).'} -j DNAT --to-destination 10.0.0.1', $retval);
     

    uživatel ktery spousti webserver je www-data

     

    dekuji moc

    8.4.2009 16:24 dejvic | skóre: 3
    Rozbalit Rozbalit vše Re: cron a PHP

    příkaz z cronu se vykoná, protože vykonává další činnosti které pak vidim v logu, tak usuzuji ze to bězi správně, krom tedy toho iptables, to se nespusti.

    8.4.2009 16:31 Filip Jirsák | skóre: 67 | blog: Fa & Bi
    Rozbalit Rozbalit vše Re: cron a PHP
    Pak je problém v tom, že web server (správně) neběží s právy roota. Nejlepší bude použít pro spuštění sudo, také byste mohl spuštění iptables delegovat do nějakého externího procesu, který by se spouštěl z binárky se suid bitem, nebo v nejhorším případě provozovat celý web server pod rootem.
    8.4.2009 21:26 pht | skóre: 48 | blog: pht
    Rozbalit Rozbalit vše Re: cron a PHP
    Pak je navíc zbytečné pouštět ten lynx pod rootem.
    In Ada the typical infinite loop would normally be terminated by detonation.
    8.4.2009 21:50 david
    Rozbalit Rozbalit vše Re: cron a PHP

    tak jsem vlozil do sudoers

    www-data ALL=(ALL) NOPASSWD: /sbin/iptables

     

    a upravil prikaz v php kodu

    $shellOutput = system('sudo iptables -t nat -I PREROUTING -p tcp --dport 80 -s ${'.trim($row_usr["ip_1"]).'} -j DNAT --to-destination 10.0.0.1', $retval);

    a stale nic.

     

    tak jsem jeste kouknul do error logu apache a tam vylezlo toto

    sh: ${172.20.13.20}: bad substitution

     

    tak jsem z toho uz magor, prosiiim help, dekuji moc.

    david

    8.4.2009 22:00 moira | skóre: 30 | blog: nesmysly
    Rozbalit Rozbalit vše Re: cron a PHP
    ze by { a } ?
    Překladač ti nikdy neřekne: "budeme kamarádi"
    8.4.2009 22:30 david
    Rozbalit Rozbalit vše Re: cron a PHP

    díky - už to píše správný příkaz

    ale zase chyba v errol.logu

    sh: iptables: command not found

    ? díky

    8.4.2009 22:32 Ash | skóre: 53
    Rozbalit Rozbalit vše Re: cron a PHP
    /sbin/iptables
    (www-data nemá /sbin v $PATH)
    8.4.2009 22:30 Ash | skóre: 53
    Rozbalit Rozbalit vše Re: cron a PHP
    $shellOutput = system('sudo iptables -t nat -I PREROUTING -p tcp --dport 80 -s '.trim($row_usr["ip_1"]).' -j DNAT --to-destination 10.0.0.1', $retval);
    8.4.2009 22:43 david
    Rozbalit Rozbalit vše Re: cron a PHP

    tak super uz jsem zase dále :-)

    >>> sudoers file: syntax error, line 18 <<<
    sudo: parse error in /etc/sudoers near line 18

     

    obsah sudoers

     

    # /etc/sudoers
    #
    # This file MUST be edited with the 'visudo' command as root.
    #
    # See the man page for details on how to write a sudoers file.
    #

    Defaults    env_reset

    # Host alias specification

    # User alias specification

    # Cmnd alias specification

    # User privilege specification
    root        ALL=(ALL) ALL
    www-data     ALL=(ALL) NOPASSWD: /sbin/iptables

    9.4.2009 09:11 dustin | skóre: 63 | blog: dustin
    Rozbalit Rozbalit vše Re: cron a PHP

    Manuálová stránka sudoers je poměrně nepřehledná, ale na webu jsou mraky návodů, např. http://www.cyberciti.biz/tips/allow-a-normal-user-to-run-commands-as-root.html . Pokud neumíš anglicky, zkus některý z překladových nástrojů, např. Google Translate Firefox extension, která vrátí http://translate.google.com/translate?hl=en&sl=en&tl=cs&u=http://www.cyberciti.biz/tips/allow-a-normal-user-to-run-commands-as-root.html

    Řekl bych, že na posledním řádku nemá být (ALL) za rovnítkem.

    9.4.2009 08:20 Filip Jirsák | skóre: 67 | blog: Fa & Bi
    Rozbalit Rozbalit vše Re: cron a PHP
    To je zbytečné vždy, protože Lynx k serveru přistupuje přes HTTP, takže úplně stejně ten skript můžete spustit z Windows na druhém konci světa. A tam byste roota od toho serveru sháněl těžko...
    9.4.2009 08:49 david
    Rozbalit Rozbalit vše Re: cron a PHP

    takže tim myslite ze se to nepovede rozebehnout?

    9.4.2009 09:12 Filip Jirsák | skóre: 67 | blog: Fa & Bi
    Rozbalit Rozbalit vše Re: cron a PHP
    Ne, tím myslím, že vůbec nezáleží na tom, v jakém prohlížeči tu příslušnou stránku otevřete. Rozběhnout se to jistě podaří, stačí si nastudovat, jak funguje a jak se konfiguruje sudo.
    9.4.2009 09:15 dustin | skóre: 63 | blog: dustin
    Rozbalit Rozbalit vše Re: cron a PHP

    Proč by to nešlo, když nastavíš ty sudoers? Samozřejmě že uživatel, pod kterým běží www klient, je nepodstatný, ten jen po síti iniciuje tu akci. Klíčový je uživatel, pod kterým běží www server. Pokud mu přes sudo umožníš provádět danou akci pod rootem, musí to fungovat.

    Nejlepší je sudo testovat rovnou pod daným uživatelem. Až to rozchodíš, můžeš to ladit v PHP. V ubuntu se přepni na roota přes

    sudo -i

    Pak se přepni na www-data přes

    su www-data

    A můžeš testovat konfigurace sudoers. Je to jednoduché, není důvod to vzdát.

    9.4.2009 09:19 david
    Rozbalit Rozbalit vše Re: cron a PHP

    tak pánové všem děkuji za tipy, už se povedlo,

    vše už bylo ok, jen to stačilo otevrit pres visudo a ulozit.

    nechapu ale funguje :-)

     

    díky všem za ochotu a dobré rady. david

    21.4.2009 10:55 dejvic | skóre: 3
    Rozbalit Rozbalit vše Re: cron a PHP

    Vazeni stale se me nedari

    spoustim z cronu skript ve kterem je prikaz

    $shellOutput = system('sudo /sbin/iptables -t nat -D PREROUTING -p tcp --dport 80 -s '.trim($row_usr["ip_1"]).' -j DNAT --to-destination 10.0.0.1', $retval);
     

    v error.logu apache2 me to napise at se kouknu na iptables -h

    jinou hlasku ne.

     

    a kdyz si spustim skript z prikazove radky tak to napise

    BAD ARGUMENT 'DNAT' BAD ARGUMENT 'DNAT'

     

    Přitom samotný příkaz když si pustim tak funguje v pořadku, nevite prosim radu.

    dekuji david

    21.4.2009 14:28 dustin | skóre: 63 | blog: dustin
    Rozbalit Rozbalit vše Re: cron a PHP

    Ten příkaz si naformátuj předem mimo volání system() a vypiš přes print. Uvidíš tak, co se opravdu volá, můžeš si jej i zkusit spustit bokem. Složitější skládání příkazu a jeho spuštění bez předchozí bez kontroly (navíc pod rootem !!) není úplně nejlepší cesta.

    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.