Gerando boas senhas com o pwgen
Gerar senhas é sempre uma coisa não tão trivial. Uma maneira razoável pode ser apertar teclas aleatórias do teclado, mas aí podem sair senhas com caracteres indesejados. O interessante seria uma ferramente que pudesse criar senhas aleatórias porém memorizáveis e com uma certa característica (com ou sem caracteres especiais,números, maiúsculas).
Uma ferramenta que comecei a usar para isso e que foi bastante útil foi o pwgen . Esse programa, de apenas 31kb, e que roda no shell, pode criar senhas com ou sem maiúsculas, com ou sem números, com ou sem símbolos, com ou sem caracteres ambiguos (por exemplo l, 1, 0 e O que podem ser confundidos com 1,l,O e 0 respectivamente). Por padrão ele gera senhas fáceis de serem memorizadas e por isso não tão seguras como senhas "completamente" aleatórias (para senhas completamente aleatórias utilize a flag -s), por isso senhas geradas sem o argumento -s NÃO devem ser utilizadas em lugares nos quais podem haver ataques de força bruta para descobrir senhas (servidores de SSH por exemplo) .
Sua utilização é simples. Se não dado nenhum argumento e a saída for a saída padrão ele imprime 160 senhas de tamanho 8 organizadas em colunas. Se for utilizado somente um argumento, este argumento será o tamanho das senhas (obviamente, deverá ser um inteiro). Se forem utilizado dois argumentos, digamos x e y ,em ordem, x será o tamanho das senhas e y será o número de senhas.
Para personalizar as senhas geradas, pode-se utilizar algumas flags:
- -0, --no-numerals : Não inclui números nas senhas geradas;
- -1 : Imprime uma senha por linha;
- -A, --no-capitalize: Não inclui letras maiúsculas nas senhas geradas;
- -B, --ambiguous: Não usa caracteres que podem ser confundidos ('1' e 'l' por exemplo);
- -c, --capitalize: Inclui no mínimo uma letra maiúscula nas senhas geradas;
- -n, --numerals: Inclui no mínimo um número nas senhas geradas;
- -H, --sha1=arquivo: Utiliza um arquivo como "semente" para gerar senhas. Isso torna uma senha reprodutível (i.e. você pode gerá-la denovo), mas se esse arquivo for obtido por alguém que queira invadir sua máquina, suas senhas poderão ser descobertas;
- -s, --secure: Gera uma senha completamente aleatória (e portanto dificil de lembrar);
- -y, --symbols: Inclui no mínimo um caracter especial na sua senha. (Não gosto muito disso pois posso estar num teclado desconfigurado);
Para aprender mais, leia o man. Uma boa dica para uso é em scripts que administradores de sistema normalmente usam para adicionar usuários em uma rede.
Se você usa Debian, Archlinux ou Ubuntu basta procurar no seu gerenciador de pacote para instalar o pwgen.

