O que acontece se minha Yubikey parar de funcionar?

Continuando minha caminhada para montar um modelo de segurança onde consiga guardar meus usuários/senhas de forma segura, surge um ponto bem importante: O que acontece se meu smartcard parar de funcionar de repente? Vou explicar aqui os procedimentos que seriam necessários para conseguir preparar uma nova Yubikey e voltar ao dia a dia normal. Cópia da chave que está no smartcard Estou assumindo aqui que existe uma cópia da chave que está no smartcard, ok?

Multi Factor Authentication na linha de comando

Acredito que a forma mais comum de MFA atualmente é o uso de “Authenticator Apps”. Usei por muito tempo o Google Authenticator até que percebi que, se perdesse meu celular, estaria preso pra fora de todas as contas onde tinha MFA configurado. Quando percebi isso, descobri o Authy, que faz backup dos seus MFAs pra você e pode sincronizar entre múltiplos dispositivos. Isso já é muito bom, pois você não fica totalmente dependente do celular.

So long LastPass and thank you for all the fish

Desde que pude guardar minha chave GPG de forma segura em um token físico, passei a pensar em como voltar a ter controle sobre minhas informações já que agora posso guardá-las encriptadas com essa chave. Os primeiros dados que comecei a encriptar foram documentos sensíveis que guardo de backup, como comprovantes, documentos pessoais e afins. O segundo passo foi fazer algo em relação ao password manager. Uso o LastPass já há muito tempo e sempre funcionou muito bem, cumpriu seu propósito.

Modelos de segurança para uso de smartcards

Desde que descobri a existência de smartcards que podem ser usados como segundo fator de autenticação, fiquei curioso em como seria usar um dispositivo desses no dia a dia. Minha curiosidade era mais no sentido de quanta “burocracia” um dispositivo desse poderia inserir no meu dia de trabalho. Na época eu já queria um desses pelo simples fato de ser um token físico, mas pensando bem usar o celular com algum App de TOTP seria bem semelhante, talvez até “melhor” já que o App do celular pode exigir uma senha antes de abrir e no caso do token físico, não tem senha nenhuma, basta inserir na porta USB e tocar com o dedo.

Compilando polybar no Arch Linux

Polybar é uma (de várias) possíveis implementações de statusbar para gerenciadores de janelas para o projeto X.org (ou apenas X, xorg-server, Xorg). Window manager (ou apenas WM) é basicamente a parte responsável por “falar” com o xorg-server e desenhar as janelas dos programas que você abre. O WM faz também muitas outras coisas, mas para o que vamos ver aqui saber isso basta. Todas as opções de interface gráfica que hoje existem para o Xorg possuem um Window Manager.

SSH de Guerrilha

Boa parte do meu dia envolve usar ssh. Às vezes como comando direto para fazer acesso remoto a algum servidor e às vezes como ferramenta para poder executar alguma outra tarefa. Nesse texto vamos ver os usos mais comuns que faço desse comando e algumas configurações que fui acumulando ao longo do tempo. SSH Config O primeiro ponto que temos que ter bastante atenção é o arquivo de configuração. Muita gente acha que apenas o ssh-server possui um config, mas isso não é verdade.

Mantendo variáveis de ambiente encriptadas

Desde que me interessei mais sobre encriptação, chaves GPG e afins comecei a tentar montar um workflow que fosse ao mesmo tempo agradável e seguro (para os padrões que escolhi). Depois de ter começado a usar um smartcard para armazenar minhas chaves ([1] e [2]) comecei a usá-lo em vários pontos do meu dia a dia que achei que deveriam/poderiam ser mais seguros. Variáveis de ambiente Variáveis de ambiente, ou apenas ENVs são muito comuns no dia a dia de quem lida com desenvolvimento.

Usando seu keyring GPG para guardar sua chave SSH

Por muito tempo tive minha chave privada SSH gravada dentro da minha ${HOME}, geralmente em .ssh/id_rsa. Algum tempo atrás descobri que o GnuPG permite criar chaves com “propriedades” específicas, por exemplo, Encriptação, Assinatura, etc. O que vamos usar aqui é a propriedade de Autenticação. Para criar essa chave, vamos adicionar uma nova subchave à nossa keyring GPG. Estou assumindo aqui que você já possui uma keyring e que já tem uma chave GPG criada.

Curl de Guerrilha

Vou escrever aqui algumas das opções que mais uso no dia a dia quando preciso do comando curl. Muitas vezes o curl é usado apenas para “baixar arquivos” e pelo fato dele usar por padrão o stdout muitas vezes as pessoas preferem até mesmo usar o wget, que por padrão salva o output em um arquivo. O curl é muito mais do que um “baixador de arquivos” e diria até que o propósito principal dele nem é esse, apesar dele conseguir fazer isso também.

(Arch) Linux Com Full Disk Encryption

Atualmente é tão simples e transparente ter o disco encriptado que não faz sentido não ter. Se você pensar na possível perda de performance (pelo fato do seu disco estar sendo encriptado/decriptado em tempo de execução) vai perceber que, a não ser que você faça um uso muito específico do seu PC, essa “perda de performance” não fará nenhuma diferença. Sempre que me perguntam se a performance de um disco encriptado é boa ou ruim, eu respondo que não sei pois nunca tive um laptop onde o disco não estava encriptado.

Preparando uma Yubikey 4 Nano para uso diário

Até saber da existência de smartcards, eu carregava minha chave RSA no meu computador pessoal e tinha uma chave para cada computador que eu usava, basicamene uma chave no trabalho e uma chave em casa. Meu primeiro interesse em smartcards nem foi para usar como storage para chaves criptográficas e sim para fazer Multi-Factor Autentication. Nesse caso o primeiro fator é algo que eu “sei” (minha senha) e o segundo fator é algo que eu “tenho”, ou seja, o smartcard.