Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
[minitip-rubato] creare password casuali
View unanswered posts
View posts from last 24 hours
View posts from last 7 days

 
Reply to topic    Gentoo Forums Forum Index Forum italiano (Italian) Risorse italiane (documentazione e tools)
View previous topic :: View next topic  
Author Message
Ic3M4n
Advocate
Advocate


Joined: 02 Nov 2004
Posts: 3489
Location: Bergamo.

PostPosted: Fri Jan 06, 2006 9:56 pm    Post subject: [minitip-rubato] creare password casuali Reply with quote

siccome avevo bisogno di creare password casuali, dato che la mia immaginazione stava arrivando al limite mi sono spinto in una piccola ricerca di informazioni nel forum internazionale ed ecco il responso dei miei (pochi) sforzi.
-in portage esistono programmi atti alla generazione di password casuali,
Code:
app-admin/makepasswd
app-admin/pwgen

fanno entrambi il loro sporco lavoro. però a volte capita di lavorare su macchine su cui non si ha la possibilità di installarli, vuoi perchè non sono collegate ad internet e non si ha la possibilità di avere i sorgenti sottomano o perchè non si è amministratori o beh... si è su un'altra distro che non li ha tra i suoi pacchetti.
quindi ecco altre due soluzioni:
Code:
#!/bin/bash

LENGTH="8"
MATRIX="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz"

while [ "${n:=1}" -le "$LENGTH" ]
do
     PASS="$PASS${MATRIX:$(($RANDOM%${#MATRIX})):1}"
     let n+=1
done

echo "$PASS"
exit 0

Code:
openssl rand -base64 6

la prima è più laboriosa, devo creare lo script dargli i permessi d'esecuzione etc etc, mentre la seconda sfrutta un programma che è presente praticamente su ogni distro quindi non ci sono problemi nel suo utilizzo.

questo è il link dal quale ho preso le informazioni

soluzione proposta da makoomba e modificata in minima parte:
Code:
alias randpw="tr -cd 'a-zA-Z0-9' < /dev/urandom | dd 2>/dev/null bs=1 count=10 ; echo"
randpw ; randpw ; randpw


soluzione proposta da gutter basata su openssl ed in cui si può specificare anche la lunghezza della password:
gutter wrote:
Basta metterla nel tuo .bashrc o in /etc/profile e rilanciare la shell.

Code:
mkpasswd() {
        if [ "X$1" == "X" ]
            then
                echo "Usage: mkpasswd <lenght>"
            else
                openssl rand -base64 $1 | cut -c -$1
            fi
}


Last edited by Ic3M4n on Mon Jan 09, 2006 6:10 pm; edited 2 times in total
Back to top
View user's profile Send private message
.:deadhead:.
Advocate
Advocate


Joined: 25 Nov 2003
Posts: 2956
Location: Milano, Italy

PostPosted: Sat Jan 07, 2006 1:19 pm    Post subject: Reply with quote

Che figata!!!! :-) Complimenti! Mi aggrada molto quest'uso di openssl, anche se ho notato una cosa: non 'è sempre un numero nella sequesnza generata, quindi ad esser pignoli, bisognerebbe fare un check sull'output generato... Cmq è davvero spettacolare, complimenti e grazie!
_________________
Proudly member of the Gentoo Documentation Project: the Italian Conspiracy ! ;)
Back to top
View user's profile Send private message
Ferdinando
Veteran
Veteran


Joined: 25 Nov 2003
Posts: 1027
Location: Gaeta (LT) - Italy

PostPosted: Sat Jan 07, 2006 3:04 pm    Post subject: Reply with quote

.:deadhead:. wrote:
non 'è sempre un numero nella sequesnza generata, quindi ad esser pignoli, bisognerebbe fare un check sull'output generato...

Che intendi dire? C'è sempre o non c'è mai?
Code:
root@Aurora ~ # openssl rand -base64 6
+/PNkU/K

A me pare ottimo :)
Bel tip!

Ciao
_________________
La risposta, non la devi cercare fuori, la devi cercare dentro di te: e però è SBAGLIATA!
-- Corrado Guzzanti, "Pippo Chennedy Show", 1997
Back to top
View user's profile Send private message
.:deadhead:.
Advocate
Advocate


Joined: 25 Nov 2003
Posts: 2956
Location: Milano, Italy

PostPosted: Sat Jan 07, 2006 5:51 pm    Post subject: Reply with quote

Ferdinando wrote:
Che intendi dire? C'è sempre o non c'è mai?
Code:
root@Aurora ~ # openssl rand -base64 6
+/PNkU/K

Che alle volta capita non esserci un numero, com nell'esempio da te generato
_________________
Proudly member of the Gentoo Documentation Project: the Italian Conspiracy ! ;)
Back to top
View user's profile Send private message
Ferdinando
Veteran
Veteran


Joined: 25 Nov 2003
Posts: 1027
Location: Gaeta (LT) - Italy

PostPosted: Sat Jan 07, 2006 5:54 pm    Post subject: Reply with quote

.:deadhead:. wrote:
Che alle volta capita non esserci un numero, com nell'esempio da te generato

Beh, anche così l'output resta poco prevedibile, no? Per quanto ne so basta che non ci siano solo lettere. O c'è un qualche motivo preciso per cui la presenza di numeri rende più sicura una password?

Ciao
_________________
La risposta, non la devi cercare fuori, la devi cercare dentro di te: e però è SBAGLIATA!
-- Corrado Guzzanti, "Pippo Chennedy Show", 1997
Back to top
View user's profile Send private message
makoomba
Moderator
Moderator


Joined: 03 Jun 2004
Posts: 1856

PostPosted: Sat Jan 07, 2006 7:21 pm    Post subject: Reply with quote

non sapevo di openssl, io faccio così
Code:
alias randpw="tr -cd 'a-z0-9' < /dev/urandom | dd 2>/dev/null bs=1 count=10 ; echo"
randpw ; randpw ; randpw
po34ps5j1w
1jk2wq9zgx
qfnkr5r65d

_________________
When all else fails, read the instructions.
Back to top
View user's profile Send private message
gutter
Moderator
Moderator


Joined: 13 Mar 2004
Posts: 7160
Location: Aarau, Aargau, Switzerland

PostPosted: Sat Jan 07, 2006 8:57 pm    Post subject: Reply with quote

Ottimo tip :wink: .

Io ho sempre usato qualcosa che si avvicina a ciò che è stato postato da makoomba.
_________________
Registered as User #281564 and Machines #163761
Back to top
View user's profile Send private message
Ic3M4n
Advocate
Advocate


Joined: 02 Nov 2004
Posts: 3489
Location: Bergamo.

PostPosted: Sat Jan 07, 2006 9:05 pm    Post subject: Reply with quote

@makoomba:
aggiungo anche la tua soluzione al primo thread, però mi sembra abbia un difetto, infatti tutte le password che generi non contengono nemmeno una lettera maiuscola ma solo minuscole. preferirei avere un range di lettere maggiore.
Back to top
View user's profile Send private message
randomaze
Bodhisattva
Bodhisattva


Joined: 21 Oct 2003
Posts: 9985

PostPosted: Sat Jan 07, 2006 9:30 pm    Post subject: Reply with quote

Ic3M4n wrote:
@makoomba:
aggiungo anche la tua soluzione al primo thread, però mi sembra abbia un difetto, infatti tutte le password che generi non contengono nemmeno una lettera maiuscola ma solo minuscole. preferirei avere un range di lettere maggiore.


Beh, questo é facile:

Code:
$ alias randpw="tr -cd 'a-zA-Z0-9' < /dev/urandom | dd 2>/dev/null bs=1 count=10 ; echo"
$ randpw ; randpw ; randpw
IkCWcuV4ke
XiaPSdRCEe
8k9E5QRtFT

_________________
Ciao da me!
Back to top
View user's profile Send private message
Ic3M4n
Advocate
Advocate


Joined: 02 Nov 2004
Posts: 3489
Location: Bergamo.

PostPosted: Sat Jan 07, 2006 10:01 pm    Post subject: Reply with quote

si, infatti l'avevo già inserito modificato. :wink:
o hai postato mentre lo facevo... boh
Back to top
View user's profile Send private message
gutter
Moderator
Moderator


Joined: 13 Mar 2004
Posts: 7160
Location: Aarau, Aargau, Switzerland

PostPosted: Sun Jan 08, 2006 10:20 am    Post subject: Reply with quote

Una piccola funzione che genera password con lunghezza specificata come prima argomento (usando openssl):

Code:

mkpasswd() {
        if [ "X$1" == "X" ]
            then
                echo "Usage: mkpasswd <lenght>"
            else
                openssl rand -base64 $1 | cut -c -$1
            fi
}

_________________
Registered as User #281564 and Machines #163761
Back to top
View user's profile Send private message
mouser
Veteran
Veteran


Joined: 10 Aug 2004
Posts: 1418
Location: Milano

PostPosted: Sun Jan 08, 2006 11:24 am    Post subject: Reply with quote

Ferdinando wrote:
.:deadhead:. wrote:
Che alle volta capita non esserci un numero, com nell'esempio da te generato

Beh, anche così l'output resta poco prevedibile, no? Per quanto ne so basta che non ci siano solo lettere. O c'è un qualche motivo preciso per cui la presenza di numeri rende più sicura una password?

Ciao


La password "sicura" per eccellenza (anche se la sicurezza completa, come cerco di insegnare sempre ai corsi, non esiste), ha una lunghezza superiore agli 8 caratteri e comprende, contemporaneamente, lettere minuscole, lettere maiuscole, numeri e caratteri speciali, possibilmente, ognuno di questi dovrebbe essere presente almeno in forma doppia (quindi due lettere minuscole, due caratteri speciali, ecc, e comunque mai uguali) e non affiancate (due lettere minuscole vicine, due numeri vicini).

Almeno questo è quello che ai tempi mi è stato insegnato e che attualmente insegno io, poi, quanto una password di questo genere sia ricordabile in senso umano, è un'altro discorso....
Interessante assolutamente la soluzione di coda, ovvero quella di generare una password casuale per l'utente root, e di utilizzare sudo per qualsiasi cosa, senza che neanche lui la sappia effettivamente (tanto se si ha il pieno controllo di una macchine, ad esempio il proprio portatile, e si ha assolutamente bisogno di essere root senza però sapere la password, basta fare reboot con un livecd, montare le partizioni e chrootarsi ;) )

Ciriciao
mouser :wink:
_________________
Della serie: "Informatica for dummies":

Io: "Premi il tasto Invio" - Risp: "Ma il tasto Invio è quello con scritto Enter sopra?"
Io: "Scrivi T maiuscolo" - Risp: "Questa tastiera non ha le lettere maiuscole..."
Back to top
View user's profile Send private message
Ic3M4n
Advocate
Advocate


Joined: 02 Nov 2004
Posts: 3489
Location: Bergamo.

PostPosted: Sun Jan 08, 2006 1:29 pm    Post subject: Reply with quote

quella dei 6 caratteri è vera, l'unica cosa è che il suo utilizzo con il metodo
Code:
openssl rand -base64 n

non funziona con un numero di caratteri superiori al 6, o per meglio dire funziona ma l'ultimo o ultimi due caratteri sono degli = quasi sempre.
Code:


for numero in 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20; do openssl rand -base64 $numero; done
0WvswuPr
mtnQXK283g==
Vy5sAjJ3LyE=
bsYb3G5BOH6e
MP2NV3rYFIB5sQ==
q96SrjEWuZrSLCg=
rE76cw0G8/OyE+0V
+cPKmyVy4WjU1lvNaQ==
4uWPLWsf24Jv+Pnb8Os=
xNKIVQ7c3KPkgyuD91O5
Xs6TN1ynlreew9Q1WGRwmQ==
AqtfkFxWGApkIKdAidaHaoc=
EJGQnSa8AP44gQd/8RpVib7h
BNg2amIB+m5yXyQ0sk59KdjwRQ==
zreTqfOOcgataoQe8lvtljTJDJY=
questo non toglie logicamente il suo utilizzo, basta rimuovere l'ultimo carattere e si può utilizzare una chiave con lunghezza n-2.

@gutter: come si fa ad utilizzare la tua funzione? sono imbranato, lo so, ma non ci riesco!

@mouser: quella del portatile mi sembra un po' una stronzata, nel senso buono si intende. nel senso: solitamente i problemi di sicurezza si hanno in ambito server dope la macchina è collegata ad internet 24h/365g e molto meno in ambiente desktop, dopo se uno i guai se li va a cercare con vaccate sue o cose del genere ok, però in generale oserei dire che su un pc che si collega ad internet saltuariamente e da posizioni differenti il problema sicurezza è inferiore. se poi uno è paranoico si mette la password al bios e non abilita il boot da cdrom, quindi tutte le volte che dovrei riloggarmi dovrei mettere la passwd al bios e modificare l'ordine dei device al boot.
Back to top
View user's profile Send private message
Ferdinando
Veteran
Veteran


Joined: 25 Nov 2003
Posts: 1027
Location: Gaeta (LT) - Italy

PostPosted: Sun Jan 08, 2006 1:37 pm    Post subject: Reply with quote

Ic3M4n wrote:
in generale oserei dire che su un pc che si collega ad internet saltuariamente e da posizioni differenti il problema sicurezza è inferiore.

Vero, però proprio ieri hanno tentato di attaccare il mio portatile via ssh; oltretutto ho un ip dinamico, quindi era un attacco totalmente random, però avere un account non "standard" (difficilmente attaccano direttamente root, ma test o simili) e una password non banale aiuta.

Ciao
_________________
La risposta, non la devi cercare fuori, la devi cercare dentro di te: e però è SBAGLIATA!
-- Corrado Guzzanti, "Pippo Chennedy Show", 1997
Back to top
View user's profile Send private message
makoomba
Moderator
Moderator


Joined: 03 Jun 2004
Posts: 1856

PostPosted: Sun Jan 08, 2006 1:46 pm    Post subject: Reply with quote

Ic3M4n wrote:
aggiungo anche la tua soluzione al primo thread, però mi sembra abbia un difetto, infatti tutte le password che generi non contengono nemmeno una lettera maiuscola ma solo minuscole. preferirei avere un range di lettere maggiore.

la scelta del solo minuscolo è obbligata, nel mio caso.
i miei neuroni riescono a memorizzare la sequenza ma non il maiuscolo/minuscolo
_________________
When all else fails, read the instructions.
Back to top
View user's profile Send private message
gutter
Moderator
Moderator


Joined: 13 Mar 2004
Posts: 7160
Location: Aarau, Aargau, Switzerland

PostPosted: Sun Jan 08, 2006 4:31 pm    Post subject: Reply with quote

Ic3M4n wrote:

@gutter: come si fa ad utilizzare la tua funzione? sono imbranato, lo so, ma non ci riesco!


Basta metterla nel tuo .bashrc o in /etc/profile e rilanciare la shell.

Per la cronaca ecco l'output della funzione precedente:


Code:

gutter@giskard ~ $ for i in `seq 1 20`; do mkpasswd $i; done
X
jg
Ohr
ORcm
pSN2Y
mvGaiy
G3W5AGU
T/bW+bF+
HFqez1OfI
PmEiHBIdqV
xR/dfI2Um+h
n0TbJHasw58w
Z0jyXKQgc3ysb
fQqjsfPuPDwQN+
d7DcacwWgXG0ahQ
udJIsycqmW6hk/PV
sW2QDEiTYcVM9fDA3
D07c7S2Hx/ZKPwoN5s
74oSn/Ecf8gjqYnOBlL
zAizaNGkhLFhpw03lkQZ

_________________
Registered as User #281564 and Machines #163761
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Forum italiano (Italian) Risorse italiane (documentazione e tools) All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum