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

včera 17:11 | Komunita

Byly zveřejněny videozáznamy přednášek z Fedora 26 Release Party konané 10. srpna v Praze.

Ladislav Hagara | Komentářů: 0
včera 15:33 | Komunita

Přesně před čtyřiadvaceti lety, 16. srpna 1993, oznámil Ian Murdock vydání "Debian Linux Release".

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

Ve virtualizačním softwaru Xen bylo nalezeno a opraveno 5 bezpečnostních chyb XSA-226 až XSA-230. Nejzávažnější z nich XSA-227 (CVE-2017-12137) umožňuje eskalaci privilegií a ovládnutí celého systému, tj. správce hostovaného systému se může stát správcem hostitelského systému.

Ladislav Hagara | Komentářů: 1
15.8. 22:00 | Zajímavý projekt

V roce 2013 proběhla na Kickstarteru úspěšná kampaň na podporu otevřeného Dobře temperovaného klavíru (Well-Tempered Clavier). Stejný tým s Kimiko Išizaka spustil před týdnem na Kickstarteru kampaň Libre Art of the Fugue na podporu svobodného Umění fugy.

Ladislav Hagara | Komentářů: 2
15.8. 13:55 | Pozvánky

Spolek OpenAlt zve příznivce otevřených technologií a otevřeného přístupu na 143. brněnský sraz, který proběhne v pátek 18. srpna od 18:00 hodin ve sportovním areálu a restauraci BeachPub Sokolák u Brněnské přehrady aneb v hantecu u Prýglu.

Ladislav Hagara | Komentářů: 0
15.8. 10:55 | Nová verze

Byla vydána (pdf) verze 3 průběžně aktualizované (rolling release) linuxové distribuce Solus (Wikipedie). Ke stažení je v edicích Budgie, GNOME a MATE. Z novinek lze zmínit například podporu snapů. Solus 3 obsahuje Firefox 55.0.1, LibreOffice 5.4.0.3, Rhythmbox 3.4.1 nebo Thunderbird 52.2.1. Edice Budgie a GNOME přichází s GNOME MPV 0.12. Edice MATE s VLC 2.2.6.

Ladislav Hagara | Komentářů: 6
14.8. 21:44 | Nová verze

Po více než roce vývoje od vydání verze 1.0 Microsoft oznámil vydání verze 2.0 platformy .NET Core (GitHub). Přehled novinek v poznámkách k vydání a ve videu na Channel 9.

Ladislav Hagara | Komentářů: 0
14.8. 21:11 | Pozvánky

Před dvaceti lety, 15. srpna 1997, poslal Miguel de Icaza do diskusního listu GTK+ email, který je považován za zahájení projektu GNOME. Linux Desktop Meetup pořádá oslavu ve středu 16. srpna od 19:00 v brněnském Charlie's square.

Ladislav Hagara | Komentářů: 18
14.8. 11:55 | IT novinky
Na šampionátu The International 2017 byl představen bot, který poráží profesionální hráče počítačové hry Dota 2. Bot zatím umí jenom zápasy 1v1. Vývojáři pracují na podpoře 5v5. Jedná se o společný projekt organizace OpenAI a společnosti Valve. Více na stránkách OpenAI a na YouTube. Dle Elona Muska je elektronický sport mnohem komplexnější než šachy nebo go [Hacker News].
Ladislav Hagara | Komentářů: 14
14.8. 05:55 | Nová verze

Byla vydána verze 20.0 a krátce na to opravná verze 20.0.1 svobodného softwaru OBS Studio (Open Broadcaster Software, Wikipedie) určeného pro streamování a nahrávání obrazovky počítače. Přehled novinek i s náhledy a animovanými gify v příspěvku na blogu.

Ladislav Hagara | Komentářů: 0
Těžíte nějakou kryptoměnu?
 (4%)
 (2%)
 (17%)
 (77%)
Celkem 339 hlasů
 Komentářů: 21, poslední 13.8. 09:57
    Rozcestník

    Dotaz: Hromadna zmena hesel

    13.8.2008 18:58 ahlstrom | skóre: 2
    Hromadna zmena hesel
    Přečteno: 714×
    Ahoj, potreboval bych v C vytvorit program, ktery vytvori hromadne nove uzivatele a nastavi jim defaultni heslo. Vytvoreni uzivatele probiha pomoci prikazu system() a predani argumentu (prikazu) ktery se ma spustit. U vytvoreni uzivatele spoustim externi prikaz useradd. Nasledne mu chci zmenit heslo pomoci prikazu passwd, jenze on ceka na vstup z prikazove radky.
    snprintf( change_passwd, sizeof( change_passwd ), "passwd %s", login );
    system( change_passwd ); // zde ceka

    Nevite jak mu mam to heslo predat? Tento program pobezi na solarisu ne na linuxu, tudiz prikaz useradd v solarisu neumoznuje pri vytvoreni uzivatele pridat jako parametr heslo. Prilozeny program (viz nize) neni kompletni, protoze jednotlivi uzivatele pro vytvoreni a jejich parametry se budou nacitat z externiho souboru. Tohle je demonstracni priklad. O radu abych si vytvoril skript v perlu nebo bashi nestojim.
    #include < stdio.h>
    
    #define USERADD "/usr/sbin/useradd"
    #define BASH    "/bin/bash"
    
    int main( void )
    {
            char create_user[ 200 ];
            char change_passwd[ 200 ];
    
            const char *uid = "691";
            const char *gid = "100";
            const char *home_dir = "/home/jenik";
            const char *first_name = "Adam";
            const char *last_name = "Jenik";
            const char *login = "jenik";
            const char *password = "heslo";
    
            snprintf( create_user, sizeof( create_user ), "%s -u %s -g %s -d %s -m -s %s -c \"PRAHA / %s %s\" %s", USERADD, uid, gid, home_dir, BASH, first_name, last_name, login );
            snprintf( change_passwd, sizeof( change_passwd ), "passwd %s", login );
    
            printf( "%s\n%s\n", create_user, change_passwd );
    
            system( create_user );
            system( change_passwd );
            return 0;
    }
    
    
    

    Odpovědi

    14.8.2008 09:48 melkors | skóre: 13 | blog: kdo_chce_kam
    Rozbalit Rozbalit vše Re: Hromadna zmena hesel
    Jen idea: Na Solarisu funguje|fungovala utilitka vipw.
    14.8.2008 09:56 cronin | skóre: 48
    Rozbalit Rozbalit vše Re: Hromadna zmena hesel
    Iba myslienka: ked to uz robit z C kodu, preco pouzivat CLI utility? Neslo by to nakodovat "priamo", t.j. v najhorsom moznom pripade prepocitat heslo na prislusny hash a vlastne vygenerovat cely riadok pre passwd, master.passwd ci master.shadow? Patrne na to budu rovno kniznicne funkcie; treba sa pozriet do zrojakov programu, ktory to realne robi a urobit to iste. (Alebo vlastne prave na to sa pytas, ako to urobit?)
    14.8.2008 14:29 Michal Kubeček | skóre: 71 | Luštěnice
    Rozbalit Rozbalit vše Re: Hromadna zmena hesel
    crypt(), getspent(), putspent()
    15.8.2008 10:16 ahlstrom | skóre: 2
    Rozbalit Rozbalit vše Re: Hromadna zmena hesel
    Uvazoval jsem nad tim take, ale jednodussi bude pouzit prikazy z CLI. Duvodem proc to nechci mit naprogramovane pomoci skriptu v bashi, je ten, ze bash na tom solarisu nainstalovany neni. Jedine obycejny shell /bin/sh.
    15.8.2008 10:26 happy barney | skóre: 34 | blog: dont_worry_be_happy
    Rozbalit Rozbalit vše Re: Hromadna zmena hesel
    sh = Bourne shell
    bash = Bourne Again shell

    t.j. ak použijete len základné veci, skript pobeží aj pod vašim sh, aj pod bash

    15.8.2008 11:14 Michal Kubeček | skóre: 71 | Luštěnice
    Rozbalit Rozbalit vše Re: Hromadna zmena hesel
    Nenapadá mne žádný důvod, proč by vám na tohle sh neměl stačit.
    25.8.2008 14:20 ahlstrom | skóre: 2
    Rozbalit Rozbalit vše Re: Hromadna zmena hesel
    Dobre, asi mas pravdu, ze by to bylo lepsi napsat v shellu. Problem je v tom, ze v shellu neumim, proto chci vyuzit jazyka C.
    14.8.2008 10:52 happy barney | skóre: 34 | blog: dont_worry_be_happy
    Rozbalit Rozbalit vše Re: Hromadna zmena hesel
    o radu "bash" nestojíš? to si radšej ten trojriadkový skript v bash-i chybovo naprogramuješ v C? Keď už používaš system, kde máš vo výslednom reťazci uvodzovky?

    skús niečo na tento spôsob ...

    if (! fork ()) {
      execlp ("adduser", "-u", username, "-p", password, "-u", uid, NULL);
    }
    
    14.8.2008 13:03 cronin | skóre: 48
    Rozbalit Rozbalit vše Re: Hromadna zmena hesel
    o radu "bash" nestojíš? to si radšej ten trojriadkový skript v bash-i chybovo naprogramuješ v C?
    Ono asi ten "trojriadkovy skript" ma byt sucastou niecoho ovela vacsieho, co bude napisane v C.
    Tento program pobezi na solarisu ne na linuxu, tudiz prikaz useradd v solarisu neumoznuje pri vytvoreni uzivatele pridat jako parametr heslo.
    15.8.2008 10:09 ahlstrom | skóre: 2
    Rozbalit Rozbalit vše Re: Hromadna zmena hesel
    retezec se naparsuje pomoci snprintf
    #define USERADD "/usr/sbin/useradd"
    #define BASH    "/bin/bash"
    snprintf( create_user, sizeof( create_user ), "%s -u %s -g %s -d %s -m -s %s -c \"PRAHA / %s %s\" %s", USERADD, uid, gid, home_dir, BASH, first_name, last_name, login );
    system( create_user );
    15.8.2008 10:13 ahlstrom | skóre: 2
    Rozbalit Rozbalit vše Re: Hromadna zmena hesel
    problem je v tom ze na solarisu nemuzes v prikazu "adduser" zadat jako paramatr heslo ( -p pass )
    14.8.2008 14:31 Michal Kubeček | skóre: 71 | Luštěnice
    Rozbalit Rozbalit vše Re: Hromadna zmena hesel
    Není na tom Solarisu příkaz chpasswd?
    15.8.2008 09:49 ahlstrom | skóre: 2
    Rozbalit Rozbalit vše Re: Hromadna zmena hesel
    na tom solarisu je prikaz passwd, ale kdyz se tento prikaz provede tak ceka na na uzivatele az zada heslo z klavesnice a ja potrebuji aby se to heslo nacetlo ze souboru
    15.8.2008 10:00 Michal Kubeček | skóre: 71 | Luštěnice
    Rozbalit Rozbalit vše Re: Hromadna zmena hesel
    Ptal jsem se na chpasswd, ne passwd.
    15.8.2008 10:06 ahlstrom | skóre: 2
    Rozbalit Rozbalit vše Re: Hromadna zmena hesel
    neni
    15.8.2008 11:16 Michal Kubeček | skóre: 71 | Luštěnice
    Rozbalit Rozbalit vše Re: Hromadna zmena hesel
    Tak bych si zkusil stáhnout zdrojáky toho linuxového a přeložit na Solarisu. Nebo spíš použít výše uvedené funkce.
    AraxoN avatar 16.8.2008 22:19 AraxoN | skóre: 45 | blog: slon_v_porcelane | Košice
    Rozbalit Rozbalit vše Re: Hromadna zmena hesel
    A čo takto heslo dvakrát zapísať niekam do súboru a v passwd presmerovať vstup?
    passwd user </subor/s/heslom.txt
    A fine is a tax for doing wrong. A tax is a fine for doing well.
    16.8.2008 22:33 Michal Kubeček | skóre: 71 | Luštěnice
    Rozbalit Rozbalit vše Re: Hromadna zmena hesel

    Zhlediska programu pgmje jedno, jestli napíšete

      pgm < file
    

    nebo

      cat file | pgm
    

    Program v tom neuvidí žádný rozdíl. Zaznamenáte ho jen vy, protože ve druhém případě se vyrojí zástup lidí s rádoby vtipnými poznámkymi o soutěži ve zbytečném používání příkazu cat.

    AraxoN avatar 16.8.2008 22:39 AraxoN | skóre: 45 | blog: slon_v_porcelane | Košice
    Rozbalit Rozbalit vše Re: Hromadna zmena hesel
    A? Nejak mi nedochádza, prečo reaguješ práve na mňa... Jediný kto tu cat spomína, si ty. ;-)
    A fine is a tax for doing wrong. A tax is a fine for doing well.
    16.8.2008 23:09 Michal Kubeček | skóre: 71 | Luštěnice
    Rozbalit Rozbalit vše Re: Hromadna zmena hesel
    Protože nefunguje-li poslání hesla přes rouru, nebude fungovat ani přesměrování vstupu.
    13.9.2008 23:49 luky
    Rozbalit Rozbalit vše Re: Hromadna zmena hesel
    Kdyz to napisete jen tak, tak se ten zastup nevyroji. Kdyz napisete, ze pro dane ucely to staci, tak zmlknou. Kdyz budete popichovat s tim, ze je to absolutni blbost, tak je jasne, ze se nekdo ozve. Vime? ;-)
    13.9.2008 23:59 luky
    Rozbalit Rozbalit vše Re: Hromadna zmena hesel

    Kdyz uz to pisete takhle blbe, tak opravdu neni duvod nepouzit shell skript. Na editaci zaznamu o uzivatelich funkcemi k tomu urcenymi, jak vas nasmeroval "14.8. 14:29 Michal Kubeček", taky neni nic tezkeho.

    Ale pokud tedy trvate na spousteni prikazu s presmerovanym I/O, tak si probehnete man pro fork/wait/exec, dup/pipe/select. A myslim, ze passwd vyzaduje, aby byl vstup z tty (pty), takze jeste man pts.

    14.9.2008 00:00 luky
    Rozbalit Rozbalit vše Re: Hromadna zmena hesel
    Hm, a ja pisu k mesic stare diskuzi, takze nic :-)

    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.