Diskuze: Script v linuxu
Člen
Zobrazeno 13 zpráv z 13.
//= Settings::TRACKING_CODE_B ?> //= Settings::TRACKING_CODE ?>
Ahoj, tak passwd sám osobě nic podobného neumí. Já bych tedy doporučoval napsat si na to vlastní příkaz / skript, který nejdřív zadané heslo ověří proti regulárnímu výrazu, splňujícímu dané podmínky, a pokud projde, pošle ho na passwd a pokud ne, udělá třeba něco jiného. Problém pak je, že při vyplňování hesla do passwd, nejsou vidět znaky, což se ale dá v rámci skriptu také zařídit.
Další problém bude to přeposlání hesla, protože passwd funguje jako interaktivní konzole, takže to nepůjde řešit klasickou pipou. Když nad tím tak přemýšlím, bude to asi muset být skript, protože na příkaz už je to moc komplexní...
Ohledně PAM, jednoduchý příklad by byla editace souboru
/etc/pam.d/common-password.
Příklad :
password required pam_cracklib.so minlen=6
kromě minlen můžeš nastavit i počet jednotlivých druhů znaků, a to
konkrétně pomocí lcredit (malé písmena), ucredit (velké písmena), dcredit
(čísla) a ocredit (ostatní).
Takže příklad číslo 2 :
password required pam_cracklib.so minlength=6 dcredit=0
Toto by mělo udělat, co potřebuješ
Jsem asi natvrdlá, ale když ho neukládám do žádné proměnné? Tvořím to heslo totiž přes zip.
Takhle, pokud to šifruješ přes příkaz
zip --encrypt ...
tak ten Ti opět nedává možnost nějak to heslo validovat. Tam vidím jako nejlepší možnost celé to obalit do vlastního skriptu, kde pouze zadávané heslo podrobíš validaci a ostatní přepošleš na zip. Pro tu validaci, pak klidně můžeš použít ten PAM. Každopádně napsat takový skript není úplně snadné...
Aha, o to mi právě šlo, používám přesně ten příkaz No mám to do školy a chtěla jsem tam ošetřit některé ty případy, protože v zadání mám pouze číselné heslo, ale jak to tak vidím... Zkusím na to mrknout a pak dám vědět. Děkuji zatím!
A nestačilo by použít něco v tomto smyslu?
#!/usr/bin/env bash
echo "Enter the password : "
read -s password
# Tady si to zvaliduj jak potřebuješ
zip -P "$password" # Ostatní argumenty
Samozřejmě není to vůbec bezpečné. Ostatní uživatelé by přes ps mohli vidět heslo, které bylo poskytnuto.
No, něco podobného jsem měl na mysli, ale z hlediska bezpečnosti a předávání těch ostatních argumentů to právě nebude tak jednoduché.
Tak maximálně použít python, ale to nesplňuje zadání.
v bashi simyslim, ze sa to ani neda urobit uplne bezpecne, ale to asi nebude predmetom zadania..
a aj ja som myslel na to tvoje riesenie, lebo problem bol akurat v tom, ze chybali tam prikazy na pracu s konzolou, preto jej vypisalo tu chybku
Vůbec mi to přes
read -s password
neprojde, hlásí mi to neplatný vstup..
Python používat nemůžu, to by ten úkol pak docela ztratil význam
Zobrazeno 13 zpráv z 13.