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í
×

    dnes 16:44 | Komunita

    openSUSE komunita vybírá nová loga. Jedním z cílů je odlišit se od SUSE. Aktuálně probíhá hlasování o logu openSUSE a čtyř distribucí Tumbleweed, Leap, Slowroll a Kalpa.

    Ladislav Hagara | Komentářů: 0
    dnes 13:22 | Nová verze

    Raspberry Pi OS, oficiální operační systém pro Raspberry Pi, byl vydán v nové verzi 2023-12-05. Přehled novinek v příspěvku na blogu a poznámkách k vydání. Nově jej lze používat také s tmavým tématem.

    Ladislav Hagara | Komentářů: 0
    dnes 08:00 | Humor

    Dnes je to 10 let, co byla vytvořena decentralizovaná kryptoměna Dogecoin. Autoři Billy Markus a Jackson Palmer ji původně zamýšleli jako vtip. Znakem kryptoměny je pes Shiba-Inu známý z internetových memů.

    JZD | Komentářů: 10
    dnes 07:00 | Nová verze

    Google Chrome 120 byl prohlášen za stabilní. Nejnovější stabilní verze 120.0.6099.62 přináší řadu oprav a vylepšení (YouTube). Opraveno bylo 10 bezpečnostních chyb. Vylepšeny byly také nástroje pro vývojáře (YouTube).

    Ladislav Hagara | Komentářů: 0
    včera 20:55 | Nová verze

    Byla vydána nová verze 2023.4 linuxové distribuce navržené pro digitální forenzní analýzu a penetrační testování Kali Linux (Wikipedie). Přehled novinek se seznamem nových nástrojů v oficiálním oznámení. Vypíchnout lze podporu Cloud ARM64, Vagrant Hyper-V a Raspberry Pi 5.

    Ladislav Hagara | Komentářů: 0
    včera 17:00 | IT novinky

    Společnosti IBM, Meta a dalších vice než 50 zakládajících členů (bez Microsoftu a OpenAI) vytvořili mezinárodní alianci AI Alliance pro spolupráci na vývoji a rozvoji otevřené, bezpečné a odpovědné umělé inteligence.

    Ladislav Hagara | Komentářů: 16
    včera 14:44 | IT novinky

    Služba pro hlídání uniklých hesel Have I Been Pwned oslavila 10. výročí. Troy Hunt ji spustil 4. prosince 2013 (Twitter).

    Ladislav Hagara | Komentářů: 3
    včera 06:00 | Humor

    Programovací jazyk HTML.

    Ladislav Hagara | Komentářů: 5
    4.12. 23:00 | Upozornění

    Podpora TORu v Debianu 11 Bullseye a 10 Buster byla ukončena. Doporučuje se přechod na Debian 12 Bookworm.

    Ladislav Hagara | Komentářů: 0
    4.12. 22:33 | IT novinky

    Příkaz "opakuj donekonečna" je nově v rozporu s podmínkami používání ChatGPT. Příkaz vedl k prozrazení trénovacích dat [/.].

    Ladislav Hagara | Komentářů: 7
     (39%)
     (13%)
     (49%)
    Celkem 72 hlasů
     Komentářů: 1, poslední 4.12. 22:13
    Rozcestník

    Dotaz: cron a PHP

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

    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: 68 | 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: 2
    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: 2
    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: 68 | 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: 68 | 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: 68 | 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: 2
    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.