Você pode perguntar: qual é a necessidade de um gerenciador de senhas? Para responder a essa pergunta, temos que analisar os atributos de uma senha boa e segura. Esses atributos não estão relacionados à senha que criamos a qualquer momento. Você não precisa de um gerenciador de senhas ou de uma carteira de senhas para senhas relacionadas ao nome do seu animal de estimação, cidade dos sonhos para visitar ou mesmo seu substantivo ou verbo pronunciável favorito.
Embora você tenha o direito de usar esses tipos de senhas, não podemos caracterizá-las como seguras no domínio do Linux. Senhas seguras não são fáceis de memorizar e é por isso que você precisa de um gerenciador de senhas. Primeiro, vamos considerar as regras de uma senha segura.
Regras e diretrizes para criar uma senha segura
Se você não deseja que suas senhas de usuário e sistema sejam vítimas de ataques de força bruta, ataques de dicionário ou ataques de phishing, você deve considerar as proezas das ferramentas de geração de senha do Linux à sua disposição. Essas ferramentas Linux produzem senhas que seguem as seguintes características.
- As senhas geradas têm um comprimento padrão. O comprimento das senhas que você cria deve ter entre 14 e 15 caracteres. Esse tamanho de senha não é fácil de decifrar.
- As senhas geradas são compostas por uma mistura de caracteres. Você não pode usar letras apenas para representar suas senhas. É a primeira característica de uma senha fraca, especialmente quando você deseja usá-la em uma plataforma de ponta, como seu aplicativo de serviço financeiro ou servidor em nuvem. Esta senha deve se misturar com caracteres como símbolos, números, maiúsculas e minúsculas. Esta técnica torna a senha potente o suficiente e não será afetada por ataques de força bruta ou de dicionário.
- As senhas geradas não fazem uso de substituições comuns. Uma senha como FOSSLINUX234 ou FOSS234LINUX é moleza para um atacante de força bruta. O uso de substituição aleatória de caracteres é a solução perfeita para esse problema.
- As senhas geradas não são produzidas a partir de caminhos de teclado memoráveis. Hoje em dia, temos gravadores de teclado que são suficientes para registrar as batidas do teclado do usuário. Usando um caminho de teclado como qwerty é uma implementação incorreta de uma senha segura porque o algoritmo de Ataque do Dicionário irá facilmente alcançá-la.
Gerenciadores de senhas baseados em linha de comando do Linux
Agora que você está familiarizado com as poucas regras importantes relacionadas à criação de senhas seguras, é hora de aprender como gerenciar essas senhas geradas. Você não deve usar uma planilha do Excel ou um editor de texto para agrupar e gerenciar as incríveis strings de senha que você conseguiu gerar. Existe uma maneira legal de atingir esse objetivo. O sistema operacional Linux oferece suporte para gerenciadores de senhas baseados em linha de comando.
Esses gerenciadores de senha armazenam detalhes como notas, títulos, URLs da web e credenciais do usuário em um formato de arquivo criptografado. Uma vez que as senhas do usuário e do sistema são classificadas como credenciais, esses gerenciadores de senhas do Linux são perfeitos. Esses gerenciadores de senha criam arquivos de senha categóricos e individuais que um usuário do sistema Linux pode classificar e identificar facilmente.
Além disso, dependendo da flexibilidade dos gerenciadores de senhas do Linux baseados em linha de comando que analisaremos neste artigo, você poderá usar sua plataforma para editar, adicionar, gerar e recuperar facilmente suas senhas. Os scripts de shell sob esses gerenciadores de senha são curtos e simples. Eles ajudam a colocar temporariamente as senhas do usuário na área de transferência do sistema, o que torna mais fácil copiar, colar e rastrear quaisquer alterações vinculadas a elas.
Gerenciador de senhas baseado em linha de comando Passmgr
Este utilitário de linha de comando do gerenciador de senhas tem um design funcional simples e portátil. Ele favorece os usuários de distribuições Linux baseadas em RHEL como o Fedora. Você pode usá-lo para armazenar seu sistema ou senhas de usuário e recuperá-los através da interface de linha de comando do Linux. O modo de operação padrão do Passmgr é o seguinte. Irá primeiro acessar as senhas de usuário já geradas e armazenadas.
Em segundo lugar, permite de forma flexível a seleção dessas senhas armazenadas. Finalmente, as senhas selecionadas serão copiadas para a área de transferência do sistema. É apenas por um período limitado para que o usuário do sistema possa colar a frase secreta em um campo (baseado na Web ou Desktop) onde for necessária. Depois que essa contagem regressiva de duração limitada expira, a área de transferência do sistema volta ao seu estado padrão.
Quando você usa o gerenciador de senhas Passmgr, o arquivo criptografado que contém as credenciais de sua frase secreta estará acessível no diretório inicial do Linux. A chave de criptografia responsável pela geração deste arquivo é um derivado do Scrypt. A criptografia de arquivo usada é AES256-GCM.
O primeiro passo para instalar o Passmgr em seu sistema Linux é primeiro cumprir dois problemas de dependências. Você precisa pré-instalar o Go e o utilitário de comando Xsel / Xclip.
Instalação Go
O download do Go depende da arquitetura da máquina; 64 bits ou 32 bits, você está usando. Para ter certeza da arquitetura da máquina que hospeda seu sistema operacional Linux, execute o seguinte comando em seu terminal.
# uname -m
Uma saída como X86_64 implica que você tem uma máquina ou computador com arquitetura de 64 bits. Qualquer outra saída diferente desta é para a máquina de arquitetura de 32 bits.
O primeiro passo para a instalação do Go é atualizar seu sistema Linux.
# yum update
A próxima etapa é baixar o pacote Go e extraí-lo para o /usr / local / diretório.
# wget https: // storage.googleapis.com / golang / go1.6.2.linux-amd64.alcatrão.gz
# tar -xzvf go1.10.3.linux-amd64.alcatrão.gz -C / usr / local /
Em seguida, crie uma pasta de trabalho que usaremos para configurar algumas variáveis de ambiente do sistema.
# cd / root
# mkdir go
# nano / etc / profile.d / goenv.sh
Na parte inferior deste arquivo, adicione as seguintes linhas.
export GOROOT = / usr / local / go export GOPATH = $ HOME / go export PATH = $ PATH: $ GOROOT / bin: $ GOPATH / bin
Grave (Ctrl + O) este arquivo e execute-o ou torne-o ativo.
# source / etc / profile.d / goenv.sh
Neste ponto, sua instalação Go é um sucesso. Você deve verificar a versão Go que você tem em seu sistema operacional Linux executando o seguinte comando.
versão $ go
Instalação do comando Xsel / Xclip
A dependência final antes de instalar e configurar o Passmgr é o Xclip. Sua instalação é direta. Em sua distribuição Linux baseada em RHEL, você primeiro precisa instalar várias dependências usando o gerenciador de pacotes yum. Eles são libX11.x86_64, libX11-devel.x86_64, libXmu.x86_64 e libXmu-devel.x86_64.
Em seguida, baixe dois arquivos rpm relacionados à nossa instalação. Lembre-se, essas etapas se aplicam apenas às distribuições Linux baseadas em RHEL.
# wget http: // dl.projeto fedora.org / pub / epel / 7 / x86_64 / x / xsel-1.2.0-15.el7.x86_64.rpm
# rpm -Uvh xsel-1.2.0-15.el7.x86_64.rpm
# wget ftp: // mirror.interruptor.ch / pool / 4 / mirror / epel / 7 / x86_64 / x / xclip-0.12-5.el7.x86_64.rpm
# rpm -Uvh xclip-0.12-5.el7.x86_64.rpm
Instalação do Passmgr
Agora que atendemos às dependências necessárias, as instalações que configuram o Passmgr não devem ser um problema. Você só precisa de uma string de comando para acessar e habilitar o Passmgr.
# vá buscar o github.com / urld / passmgr / cmd / passmgr
Agora que você baixou a ferramenta Passmgr em sua máquina Linux, é necessário iniciá-la e definir uma senha mestra. Esta senha mestra será como a chave da carteira para acessar todas as senhas que iremos proteger através desta ferramenta. Em seu terminal, execute o seguinte comando:
# passmgr
O terminal responderá com as seguintes solicitações:
[passmgr] nova senha mestra para / root /.passmgr_store: [passmgr] redigite a senha mestre para / root /.passmgr_store: - store is empty - Escolha um comando [(S) elect / (f) ilter / (a) dd / (d) elete / (q) uit] a
A partir da resposta do prompt da linha acima, se escolhermos a opção (a) conforme ilustrado, seremos capazes de adicionar uma nova senha e seu usuário associado.
Insira os valores para a nova entrada Usuário: Brandon_Jones URL: fosslinux.com Senha: n) URL do usuário 1) Brandon_Jones fosslinux.com
Você pode tentar usar as outras opções de gerenciamento de senha (selecionar, filtrar e excluir) disponíveis no Passmgr. Se você precisar de mais opções sobre como usar este utilitário gerenciador de senhas, execute o comando help em seu terminal.
# passmgr --help
Você será capaz de interagir e usar todas as opções de Passmgr disponíveis.
Gerenciador de senhas baseado em linha de comando Titan
O próximo gerenciador de senhas baseado em linha de comando em nossa lista é o Titan. Ele também é um utilitário gerenciador de senha favorito para sistemas operacionais Linux baseados em RHEL. O Titan é extensível de maneira flexível e qualquer sistema operacional semelhante ao Unix pode implementá-lo e usá-lo totalmente. O mecanismo de criptografia para as senhas armazenadas e acessadas no Titan é empregado da biblioteca OpenSSL.
A criptografia específica em uso é AES. Ele implementa chaves de 256 bits. A Titan também se esforça para proteger seu banco de dados de senhas. A segurança de qualquer banco de dados de senha é importante para evitar que outros usuários maliciosos comprometam a integridade das credenciais de usuário armazenadas. Por esse motivo, o Titan usa HMAC (código de autenticação de mensagem Hash) com chave. O processo de criptografia das credenciais de usuário enviadas também emprega o uso de um vetor de inicialização aleatório único e criptográfico.
Se você está se perguntando sobre o banco de dados de senhas usado pelo Titan, então o SQLite. Razão? É direto, simples e fácil de lidar com o esquema de banco de dados do banco de dados SQLite.
Sua instalação em distribuições Linux baseadas em RHEL é a seguinte:
Primeiro, você precisa instalar SQLite e OpenSSL.
# yum install sqlite-devel.x86_64 sqlite-tcl.x86_64
# yum install openssl-devel
# git clone https: // github.com / nrosvall / titan.idiota
# cd titan /
# faço
# make install
Agora que temos um gerenciador de senhas Titan instalado e configurado corretamente, precisamos de um guia de linha de comando simples para gerenciar várias senhas de usuário. Como instalamos o SQLite, faz sentido que o primeiro passo seja a configuração do banco de dados de senhas principal.
# titan --init / home / passwords / passwd.db
Enquanto este banco de dados é criado, é recomendável que você também o proteja com uma senha. Uma vez feito isso, preencher o banco de dados do Titan com informações de credenciais do usuário é fácil. Você pode empregar o uso das opções de argumento -add ou -a.
# titan --add
Título: Contribuidor Nome de usuário: Brandon_Jones Url: fosslinux.com Notas: Senha das credenciais da conta FossLinux (vazio para gerar novas):
Ao adicionar outras entradas ao banco de dados do Titan, você precisará descriptografá-las primeiro. Ajuda a visualizar as entradas que você está fazendo, em vez de digitar cegamente os dados no banco de dados. O seguinte comando é útil.
# titan --decrypt / home / passwords / passwd.db
Você também pode querer confirmar as entradas existentes no banco de dados do Titan. Use o seguinte comando.
# titan --list-all
Um exemplo de saída do uso do comando acima deve ser parecido com o seguinte:
ID: 1 Título: Colaborador Usuário: Brandon_Jones Url: fosslinux.com Senha: ************** Observações: Credenciais da conta FossLinux modificadas: 2021-02-12 17:06:10
Ajudaria se você se lembrasse de que descriptografamos o banco de dados Titan para criar uma entrada de amostra de credencial de usuário. Agora precisamos retornar este banco de dados ao seu estado criptografado como uma medida de segurança mais rígida. Execute o seguinte comando.
# titan --encrypt / home / passwords / passwd.db
Há mais coisas no uso do gerenciador de senhas Titan do que os poucos comandos que este artigo expressou. Se você precisar explorar mais opções de comando do Titan, use um dos seguintes comandos.
# man titan
ou
# titan --help
Gerenciador de senhas baseado em linha de comando Gopass
O perfil Gopass padrão o descreve como um gerenciador de senhas de equipe. Independentemente da descrição da biografia do Gopass, também é útil como um gerenciador de senha pessoal. Sua criação é baseada na linguagem de programação go. Seria melhor se você tivesse Go instalado em seu sistema operacional Linux para acessar e instalar o Gopass. A instalação do Go é detalhada em seu site oficial. Duas opções de instalação viáveis estão disponíveis para todos os usuários Linux. Você pode acessar seu instalador para uma instalação guiada ou pode compilá-lo diretamente da fonte.
Se você já instalou e configurou o Gopass, pode ser necessário acessar seus recursos e upgrades atualizados. Essas atualizações e upgrades ocorrem no repositório Gopass Github, onde colaboradores e desenvolvedores estão ativamente fazendo melhorias. O comando a seguir ajuda a manter sua versão do Gopass atualizada.
$ go get -u github.com / gopasspw / gopass
Este comando é eficaz para os usuários que o compilaram diretamente da fonte. Você precisa estar no mesmo diretório da sua versão anterior do Gopass para executar este comando.
Este gerenciador de senhas do Linux é descrito como fácil, seguro e extensível. Sua documentação também cobre o uso de vários comandos Gopass para ajudar a melhorar sua experiência do usuário. Sua natureza extensível está em sua busca por uma integração de API que ajudará Gopass a se vincular a outros binários de usuário.
Gerenciador de senhas baseado em linha de comando Kpcli
Enquanto muitos usuários escolherão o KeePassX ou a natureza de código aberto do KeePass como sua senha definitiva gerencia, o Kpcli combina os recursos que esses dois gerenciadores de senha têm a oferecer e os revela em sua janela de linha de comando do Linux.
O Kpcli existe como um shell controlado por teclado. Sua interface de linha de comando permite que você adicione e edite senhas pessoais e de grupo. Pense em todas as coisas que os gerenciadores de senhas KeePassX e KeePass podem fazer graficamente e, em seguida, substitua-as na interface de linha de comando do Kpcli. Este gerenciador de senha baseado em terminal também suporta renomeação e exclusão de senhas pessoais e de grupo por meio de um usuário administrador. Ele também usa uma área de transferência para armazenar nomes de usuário e senhas copiados antes de usar um site de destino ou formulário de login da plataforma. Para se livrar desses dados da área de transferência depois de serem usados, o Kpcli tem um comando para esvaziá-los. Seu site oficial tem uma atualização sobre seu download e instalação.
Passe o gerenciador de senhas baseado em linha de comando
A simplicidade do gerenciador de senhas do Linux segue estritamente a filosofia do Linux. Ele usa um arquivo criptografado em gpg para armazenar senhas geradas. Ele incentiva o armazenamento desses arquivos de senha com um nome de arquivo semelhante ao da plataforma ou site vinculado às credenciais de usuário armazenadas. O armazenamento desses arquivos criptografados pode aderir a hierarquias de pastas flexíveis. Os arquivos gerados e criptografados também são transferíveis de uma máquina para outra.
O passe cria um caminho de armazenamento comum, ~ /.armazenamento de senha, para todas as suas senhas geradas. Se você precisar adicionar, editar, gerar ou recuperar uma senha, você usará o comando pass junto com seus outros argumentos de comando suportados. Ele também emprega o uso da área de transferência do seu sistema para manter as credenciais do usuário copiadas temporariamente. Ele suporta o uso de git para rastrear alterações de senha.
Para listar as senhas armazenadas e outras credenciais em Senha, use o seguinte comando.
$ pass
Com base na captura de tela acima de seu site oficial, também podemos exibir uma senha armazenada com base na categoria Email.
$ pass Email / zx2c4.com
Para copiar a senha associada ao e-mail acima para uma área de transferência, você executará o seguinte comando.
$ pass -C Email / zx2c4.com
Outros comandos para brincar são os comandos insert, generate e rm para adicionar senhas, gerar senhas e remover senhas, respectivamente.
Mais sobre seu exemplo de uso pode ser encontrado aqui.
A seguir estão as etapas de instalação para várias distribuições Linux.
Debian:
$ sudo apt install pass
RHEL:
$ sudo yum install passe
Arco:
$ pacman -S pass
Conclusão
A maioria desses gerenciadores de senhas Linux listados são suportados por outras distribuições Linux. O truque para colocá-los em sua máquina Linux é saber como se adaptar aos diferentes gerenciadores de pacotes. Existem outros gerenciadores de senhas com suporte para Linux a serem considerados, como Ylva e Passhole, se você precisar de um pouco mais de flexibilidade com esta breve lista. Este artigo garantiu que gerar e gerenciar senhas seguras do Linux não é mais uma entidade em sua lista de balde. Você não apenas se sente confortável com as opções de geração e gerenciamento de senhas, mas também entende as regras que tornam as senhas geradas fortes o suficiente.
Como esses gerenciadores de senha do Linux são eficazes por meio da interface de linha de comando, é uma ótima opção para usuários familiarizados com o login remoto SSH. Você não precisa estar fisicamente presente na frente de sua máquina para acessar os arquivos de senha que você precisa usar. Esta última declaração implica que você só precisa memorizar uma senha mestra que ajudará a acessar e gerenciar todos os outros sistemas armazenados e senhas de usuário que você irá usar. Com os gerenciadores de senhas baseados em linha de comando do Linux, seu sistema e credenciais de usuário estão em boas mãos.