Tempo de carregamento: 0,369 segundos.

Artigo > Criando senhas fortes via CLI

354 Views
Tempo de leitura: 1 Minuto
Conteúdo atualizado em

Essa dica é para o amigo Sysadmin/Sysops/Devops/Padeiro/Borracheiro/etc que pretende automatizar a criação de senhas via command line.

O exemplo a seguir pode ser adaptado para criação de senhas via Shell Script. É um single line. Vou explicar passo a passo.

Primeiro, utilizamos o /dev/urandom. Ele nos dará os valores variáveis com os quais iremos trabalhar.

Vamos utilizar o comando “tr” com parâmetros “-dc” seguido de alguns caracteres que queremos na senha.

Em seguida utilizaremos o comando “fold” para parsear a quantidade de carecteres por linha.

Por fim, utilizaremos o comando “head” para obter apenas algumas linhas.

Vejamos um exemplo:

cat /dev/urandom | tr -dc 'a-zA-Z0-9' | fold -w 20 | head -n5

Neste exemplo teremos uma saída similar a esta:

[wil@valhalla ~]$ cat /dev/urandom | tr -dc 'a-zA-Z0-9' | fold -w 20 | head -n5
K3sTWfunzlpf8apeVI6m
x2tV9vEbLAR6Sj5MuanZ
iIpckZ6fYJMxfhKHo0DJ
rd2W6TkzYEqFABGrGXuI
qEQouvvWoEOOF5ZcGGRa

Ou seja, são 5 senhas, uma por linha, com 20 caracteres alfanuméricos.

Podemos reforçar essa senha acrescentando alguns caracteres especiais. Vamos incluir os caracteres “_!@#$%&*+“. O comando ficará assim:

cat /dev/urandom | tr -dc 'a-zA-Z0-9-_!@#$%&*+' | fold -w 20 | head -n5

Exemplo da saída do comando:

[wil@valhalla ~]$ cat /dev/urandom | tr -dc 'a-zA-Z0-9-_!@#$%&*+' | fold -w 20 | head -n5
K&Q6sumHhnO0SKyScwMW
yi$kdEFRJ5rW%0GBbOeD
%mTD9@@vvpO-i5tITgbR
4+e_G@cnjaSdrBUtAq7d
*PjrB#vwdnSKUFPMcss4

Obviamente, para reduzir ou aumentar a quantidade de caracteres por senha ou a quantidade de linhas basta alterar os valores do comando “fold” e/ou do comando “head”, respectivamente.

Esse é um exemplo simples. Pode-se fazer isso de outras formas. Esta é uma forma que funciona bem pra mim.

Abraços!

0 - 0

Thank You For Your Vote!

Sorry You have Already Voted!