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 03:00 | Nová verze

    Po 9 týdnech vývoje od vydání Linuxu 6.12 oznámil Linus Torvalds vydání Linuxu 6.13. Přehled novinek a vylepšení na LWN.net: první a druhá polovina začleňovacího okna a Linux Kernel Newbies. Odstraněn byl souborový systém ReiserFS.

    Ladislav Hagara | Komentářů: 0
    včera 16:11 | IT novinky

    19. ledna 2038 přeteče hodnota time_t na 32bitových systémech, na vyřešení problému roku 2038 (Y2K38) tedy zbývá 13 let. Např. Debian v uplynulém roce přešel na 64bitový čas. Bernhard Wiedemann z openSUSE sdílí chyby v sestavení rozšířeného softwaru.

    Fluttershy, yay! | Komentářů: 0
    včera 15:44 | Nová verze

    Byla vydána druhá opravná verze 21.2 v dubnu loňského roku vydané verze 21 multimediálního centra Kodi (dříve XBMC, Wikipedie) s kódovým označením Omega.

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

    TikTok ve Spojených státech v sobotu večer místního času přerušil činnost. Uživatelé čínskou firmou vlastněné sociální sítě dostali zprávu, že aplikaci kvůli zákazu nelze používat. TikTok je momentálně nedostupný v obchodech s aplikacemi Google Play a App Store. Podle zákona přijatého loni a potvrzeného v pátek soudem měla platforma do dneška přerušit spojení se svou mateřskou společností ByteDance, která sídlí v Číně, nebo činnost v

    … více »
    Ladislav Hagara | Komentářů: 1
    18.1. 23:00 | Nová verze

    Wings 3D, tj. open source 3D modelovací program naprogramovaný v programovacím jazyce Erlang zaměřený na modelování pomocí subdivision a inspirovaný programy Nendo a Mirai od Izware, byl vydán v nové opravné verzi 2.4.1. Ke stažení již také ve formátu Flatpak z Flathubu.

    Ladislav Hagara | Komentářů: 0
    18.1. 22:22 | Nová verze

    Webový prohlížeč Dillo byl vydán ve verzi 3.2.0. Přidává podporu vzorců v SVG, obrázků ve WebP, změny velikosti stránky či možností posouvání. Nedávno oslavil 25. výročí vzniku.

    Fluttershy, yay! | Komentářů: 0
    18.1. 01:33 | Zajímavý software

    Hra Mini Thief je na Steamu zdarma napořád, když aktivaci provedete do 24. ledna do 19.00 [ProtonDB].

    Ladislav Hagara | Komentářů: 0
    16.1. 22:00 | IT novinky

    Certifikační autorita Let's Encrypt oznámila, že bude volitelně nabízet krátkodobé certifikáty s šestidenní platností a navíc s možností vystavit je na IP adresu. Zvolit typ certifikátu bude možné v certifikačním profilu ACME.

    Ladislav Hagara | Komentářů: 9
    16.1. 21:22 | IT novinky

    Herní konzole Nintendo Switch 2 byla oficiálně potvrzena. Vyjde letos. Trailer na YouTube. Více ve středu 2. dubna na Nintendo Direct.

    Ladislav Hagara | Komentářů: 4
    16.1. 17:33 | Nová verze

    Byl vydán Linux Mint 22.1 s kódovým jménem Xia. Podrobnosti v přehledu novinek a poznámkách k vydání. Linux Mint 22.1 bude podporován do roku 2029.

    Ladislav Hagara | Komentářů: 0
    Rozcestník

    Dotaz: cron a PHP

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

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