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 18:55 | IT novinky

    Dnešním dnem lze již také v Česku nakupovat na Google Store (telefony a sluchátka Google Pixel).

    Ladislav Hagara | Komentářů: 2
    včera 18:33 | IT novinky

    Apple představil (keynote) iPad Pro s čipem Apple M4, předělaný iPad Air ve dvou velikostech a nový Apple Pencil Pro.

    Ladislav Hagara | Komentářů: 0
    včera 17:11 | Nová verze

    Richard Biener oznámil vydání verze 14.1 (14.1.0) kolekce kompilátorů pro různé programovací jazyky GCC (GNU Compiler Collection). Jedná se o první stabilní verzi řady 14. Přehled změn, nových vlastností a oprav a aktualizovaná dokumentace na stránkách projektu. Některé zdrojové kódy, které bylo možné přeložit s předchozími verzemi GCC, bude nutné upravit.

    Ladislav Hagara | Komentářů: 0
    včera 13:44 | Komunita

    Free Software Foundation zveřejnila ocenění Free Software Awards za rok 2023. Vybráni byli Bruno Haible za dlouhodobé příspěvky a správu knihovny Gnulib, nováček Nick Logozzo za front-end Parabolic pro yt-dlp a tým Mission logiciels libres francouzského státu za nasazování svobodného softwaru do praxe.

    Fluttershy, yay! | Komentářů: 0
    včera 13:11 | IT novinky

    Před 10 lety Microsoft dokončil akvizici divize mobilních telefonů společnosti Nokia a pod značkou Microsoft Mobile ji zanedlouho pohřbil.

    Ladislav Hagara | Komentářů: 2
    6.5. 21:33 | Komunita

    Fedora 40 release party v Praze proběhne v pátek 17. května od 18:30 v prostorách společnosti Etnetera Core na adrese Jankovcova 1037/49, Praha 7. Součástí bude program kratších přednášek o novinkách ve Fedoře.

    Ladislav Hagara | Komentářů: 5
    6.5. 21:11 | IT novinky

    Stack Overflow se dohodl s OpenAI o zpřístupnění obsahu Stack Overflow pro vylepšení OpenAI AI modelů.

    Ladislav Hagara | Komentářů: 1
    6.5. 17:55 | Nová verze

    AlmaLinux byl vydán v nové stabilní verzi 9.4 (Mastodon, 𝕏). S kódovým názvem Seafoam Ocelot. Přehled novinek v příspěvku na blogu a v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    6.5. 17:11 | IT novinky

    Před 50 lety, 5. května 1974 v žurnálu IEEE Transactions on Communications, Vint Cerf a Bob Kahn popsali protokol TCP (pdf).

    Ladislav Hagara | Komentářů: 0
    6.5. 13:44 | Zajímavý článek

    Bylo vydáno do češtiny přeložené číslo 717 týdeníku WeeklyOSM přinášející zprávy ze světa OpenStreetMap.

    Ladislav Hagara | Komentářů: 0
    Podle hypotézy Mrtvý Internet mj. tvoří většinu online interakcí boti.
     (63%)
     (8%)
     (14%)
     (16%)
    Celkem 133 hlasů
     Komentářů: 9, poslední včera 22:07
    Rozcestník

    Dotaz: Apache spousteni bash skriptu

    29.7.2006 23:58 Zmije
    Apache spousteni bash skriptu
    Přečteno: 248×
    Zdravim. Pár dní se marně snažím vymyslet jak vytvořit php stránku, ze které by bylo možné měnit některá nastavení iptables. Jde mi hlavně o to aby uživatelé mohli měnit parametry připojení (především připojit a odpojit net popř. nastavit si mac adresu). Je mi jasné že se to neobejde bez menší či větší bezpečnostní trhliny, ale to mi tak zvlášť nevadí protože nemám veřejné ip ani žádné cennosti na routru a počitám s tim. Napadlo mě několik možností: spouštět příkazi rovnou z apache(problémy s právy), spouštět bashovský skript,nebo zapisovat do souboru či databáze mysql a nasledně pomocí bash. skriptu číst. Jaké řěšení byste mi doporučovali (kromě vykašlat se na to a webadmina - chci si to zkusit sám). Četl jsem tady už pár podobných diskuzí, ale nikde to nebylo dořešené. Děkuji za odpověď a omlouvám se za neelegantní řešení.

    Odpovědi

    30.7.2006 01:34 Marian Krucina | skóre: 13
    Rozbalit Rozbalit vše Re: Apache spousteni bash skriptu
    man sudo

    Nastav pro uživatele, pod kterým běží apache, aby mohl spouštět nez hesla skript, nebo rovnou iptables. Zapis aktualniho nastaveni do db nebo souboru by taky nebylo na skodu pro obnoveni stavu po restartu.

    Bezpečnostní trhlina to byt nemusi, ale musíš důkladně kontrolovat vstupy od uživatele. Asi nejbezpečnejší by bylo:

    php >> sudo >> skript >> iptables

    A kontrola by byla v php a ve skriptu.
    31.7.2006 15:08 Zmije
    Rozbalit Rozbalit vše Re: Apache spousteni bash skriptu
    Takže apt-get sudo, načež jsem musel dát apt-get upqrade, pak jsem měl menší problém s tím že jsem editoval jiný sudores než je /etc/sudores a ale po půl dni mě to došlo (mám poněkud delší vedení).
    Toto je můj /etc/sudores
    # /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.
    #
    
    # Host alias specification
    
    # User alias specification
    
    # Cmnd alias specification
    
    # User privilege specification
    root	ALL=(ALL) ALL
    server ALL=(ALL) NOPASSWD: ALL
    Opravdu to funguje, ale asi by bylo lepší omezit práva Apache(mimochodem to pod kterým uživatelem poběží jsem nastavil v httpd.conf, klíčovými slovy User server, a Group users, ale User root nastavit nejde) pouze na soubor /etc/network/webconfig, ve kterém bude obslužný bash. skript, ale to zatím bohužel neumím.
    Mám ještě jeden lamerský dotaz: jak předám z php do bash skriptu a naopak proměné?
    V php bude něco jako exec("sudo /etc/network/webconfiq")
    Jak tam přidám řtěz_tam a řetěz_zpět a jak to přečtu a odešlu v bashi?
    31.7.2006 15:11 zabza | skóre: 52 | blog: Nad_sklenkou_cerveneho
    Rozbalit Rozbalit vše Re: Apache spousteni bash skriptu
    PHP sice neznám, ale existují i jiné funkce než exec()... Překvapivě slouží přesně k tomu co chcete :-)
    31.7.2006 19:10 Zmije
    Rozbalit Rozbalit vše Re: Apache spousteni bash skriptu
    Omlouvám se za svoji tupost, ale anqlina není moje silná stránka. Prostě sem z toho nějak nevyčet jakou fci mám použit. Zkoušel sem i systém, ale nějak se mi nepodařilo tu proměnou předat.
    Tady je výpis php kódu:
    $data="neco";
    $cmd = "sudo /etc/network/webconfig $data";
    system($cmd,$return_value);
    echo $return_value;
     ($return_value == 0) or die("returned an error: $cmd");
    
    data je proměná kterou chci předat do skriptu v bashi:
    #! /bin/bash
    echo "$data"
    
    Ale nic se mi nevrací, respektive se mi vraci hodnota 0 protože operace proběhla úspěšně.
    Jak by se to řešilo kdybych chtěl předat více proměných tam i zpět?
    31.7.2006 20:09 oron | skóre: 27
    Rozbalit Rozbalit vše Re: Apache spousteni bash skriptu
    toto by ti malo pomoct http://www.mensik.cz/beranka/dashboard.html
    31.7.2006 21:10 zabza | skóre: 52 | blog: Nad_sklenkou_cerveneho
    Rozbalit Rozbalit vše Re: Apache spousteni bash skriptu
    on je ten manual i česky (ale mě se v tom blbě hledá, a fakt jako programátoři co neumí anglicky... to musí být rarita, ne? teda vlastně člověk v čr pod třicet, který neumí anglicky - _to_ musí být rarita, ne?)

    http://cz.php.net/manual/cs/ref.exec.php
    31.7.2006 21:13 zabza | skóre: 52 | blog: Nad_sklenkou_cerveneho
    Rozbalit Rozbalit vše Re: Apache spousteni bash skriptu
    jinak tam má být něco jako (fakt php neumím :-))
    $cmd = '/bin/ls';
    $vysl = system($cdm, $ret);
    print $vysl;
    

    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.