você está aqui: Home  → Arquivo de Mensagens

Como gerar senhas aleatórias a partir da linha de comando

Colaboração: Rubens Queiroz de Almeida

Data de Publicação: 11 de fevereiro de 2015

Existem diversas maneiras de se gerar senhas aleatórias. Esta dica irá mostrar algumas formas estranhas e interessantes de se fazer o mesmo usando a linha de comando.

  $ date +%s | sha256sum | base64 | head -c 32 ; echo
  YjQzMzA2MmQyMjAzYTc0NzUwNGEwMjc5

Fácil de guardar, não? Se você quiser que a senha gerada tenha menos caracteres, basta alterar o comando head -c 32. 32 é o número de caracteres que são selecionados do comando para exibir na senha. O comando head exibe por padrão o número de linhas, a opção "-c" muda o comportamento do programa para exibir um número determinado de bytes do arquivo ou da saida do comando.

O método a seguir utiliza o recurso /dev/urandom e filtra com o comando tr apenas os caracteres que normalmente usamos em senhas, letras maiúsculas e minúsculas e números.

   < /dev/urandom tr -dc _A-Z-a-z-0-9 | head -c${1:-32};echo;
  oiixwchjBMtaprHoF4VdzRrZQxn9Kgcf

Ainda uma outra forma, usando a função rand do programa openssl.

  openssl rand -base64 32
  ETOARSsghkOrvJdYVpWgyrdqi+T9yrjhgzeg0SHyysM=

Para encerrar, uma maneira mais fácil de se gerar uma senha, usando o comando date:

  date | md5sum
  b948c540b63afd5e06bbd2756b3f783f  -

Para limitar o número de caracteres da senha:

  date | md5sum | head -c8 ; echo
  828e4863

Veja também

Este texto foi baseado em grande parte no artigo "10 Ways to Generate a Random Password from the Command Line"



Veja a relação completa dos artigos de Rubens Queiroz de Almeida