No Linux, posso criar um hash de senha SHA1 usando sha1pass mypassword
. Existe uma ferramenta de linha de comando semelhante que me permita criar sha512
hashes? A mesma pergunta para Bcrypt
e PBKDF2
.
security
password
encryption
hashsum
aluna
fonte
fonte
sha1sum
?sha1pass
comando, parte do pacote syslinux-common no Debian.sha512sum
comando que faz parte do coreutils e da mesma formaopenssl sha512
- mas também não o material extra quesha1pass
faz.Respostas:
Sim, você está procurando
mkpasswd
, o qual (pelo menos no Debian) faz parte dowhois
pacote. Não pergunte por que ...Infelizmente, minha versão pelo menos não faz bcrypt. Se a sua biblioteca C o fizer, deve (e a página de manual fornece a opção -R para definir a força). -R também funciona no sha-512, mas não tenho certeza se é PBKDF-2 ou não.
Se você precisar gerar senhas bcrypt, poderá fazê-lo de maneira bastante simples com o
Crypt::Eksblowfish::Bcrypt
módulo Perl.fonte
Em qualquer uma das distros da Red Hat, como Fedora, CentOS ou RHEL, o comando
mkpasswd
não inclui o mesmo conjunto de opções da versão normalmente incluída no Debian / Ubuntu.NOTA: O comando
mkpasswd
é realmente parte doexpect
pacote e provavelmente deve ser evitado. Você pode descobrir a qual pacote ele pertence com um desses comandos.Exemplo
Ambos os métodos são superiores ao uso,
rpm
pois os pacotes não precisam ser instalados para serem localizados*/mkpasswd
.Soluções alternativas
Para contornar isso, você pode usar os seguintes linux de Python ou Perl para gerar senhas SHA-512. Observe que estes são salgados:
Python (> = 3.3)
- ou com script -
Python (2.x ou 3.x)
Nota: $ 6 $ designa sha512. O suporte para esse método de especificação do algoritmo depende do suporte na função da biblioteca crypt (3) no nível do SO (geralmente na libcrypt). Não depende da versão python.
Perl
Nestes exemplos, a senha é a string "password" e o salt é "saltsalt". Ambos os exemplos estão usando $ 6 $, o que indica que você deseja que a criptografia use o SHA-512.
fonte
crypt.mksalt(crypt.METHOD_SHA512)
para gerar o sal em vez de usar um fixo.crypt.mksalt
só está disponível em Python 3.xcrypt.mksalt
no CentOS 7.1 #Você pode usar o
doveadm
utilitário, incluído nodovecot
pacote.Exemplo de resultado:
Basta cortar {SHA512-CRYPT} e você obterá sua string de hash SHA512.
fonte
doveadm(jotik): Fatal: Error reading configuration: stat(/etc/dovecot/dovecot.conf) failed: Permission denied (euid=1000(jotik) egid=100(users) missing +x perm: /etc/dovecot, we're not in group 97(dovecot), dir owned by 0:97 mode=0750)
Execute este comando:
em seguida, digite a palavra que você deseja hash.
fonte
Para expandir as soluções alternativas do @ slm acima, se você estiver preocupado com alguém que conhece o histórico do bash e vê a senha em texto sem formatação, pode inserir
raw_input()
na instrução python onde os campos salt e password vão para que seja solicitado. O texto não é mascarado enquanto você digita, mas não aparece no seu histórico do bash. Você também pode iniciar o comando com um espaço à esquerda, mas eu sempre esqueço de fazer isso.fonte
bash
para não gravar comandos prefixados com um espaço adicionadoHISTCONTROL=ignorespace
ao seu.bashrc
arquivo. Quando você executa um comando que deseja excluir do seu histórico, basta digitar um espaço e o comando real.sha512 htpasswd
Comando que solicita usuário e senha e gera um arquivo htpasswd regular:
Funciona com todas as versões python> 2.5.
fonte
O OpenSSL tem
A ajuda diz:
fonte
Se você estiver usando o método Python (> = 2.7) da resposta do sim e quiser confirmar sua senha antes de gerar - porque você usa senhas grossas ...
fonte
A versão openssl "OpenSSL 1.1.1” no Linux e a versão openssl "LibreSSL 2.6.5” no MacOS suportam md5_crypt.
Basta executar e digitar a senha:
ou forneça a senha de texto sem formatação diretamente à CLI:
fonte
Você pode usar
sha512sum
:fonte