Importar Chave GPG
O presente artigo acompanha um script para automatizar a importação de chave privada GPG (GnuPG) em computador com distribuição GNU/Linux.
[ Hits: 7.677 ]
Por: Vinicius Araujo Lopes em 07/08/2019
#!/usr/bin/env bash
# Template orgulhosamente criado por (Shell-Base) tks SlackJeff
#-----------HEADER-------------------------------------------------------------|
#AUTOR
# Vovolinux
#
##DATA-DE-CRIAÇÃO
# 16/07/2019 ás 14:19
#
#PROGRAMA
# install-gpgkey
#
#PEQUENA-DESCRIÇÃO
# Script para automatizar a instalação de chave gpg privada.
#
#LICENÇA
# MIT
#
#HOMEPAGE
# https://github.com/Viniciusalopes/install-gpgkey
#
#CHANGELOG
#
#------------------------------------------------------------------------------|
# Interrompe a execução em caso de qualquer erro
set -e
#------- VÁRIAVEIS -------->
################################################################################
# >>> CUIDADO!!! O SCRIPT PODE APAGAR O CONTEUDO DO DIRETÓRIO dir_gpg <<< #
# Valor padrão: #
# dir_gpg='/root/.gnupg' #
dir_gpg='/root/.gnupg' #
# >>> CUIDADO!!! O SCRIPT PODE APAGAR O CONTEUDO DO DIRETÓRIO dir_gpg <<< #
################################################################################
### LEU AQUI EM CIMA??? ^^
#------- MENSAGENS -------->
msg_dir_existe='O diretório já existe!'
msg_arquivo_invalido='[ ERRO ] Arquivo inválido!'
msg_ate_breve='OK.\nAté breve!'
#----- FIM-MENSAGENS ------>
#----- FIM-VARIAVEIS ------>
#--------FUNÇÕES----------->
ajuda(){
cat << EOF
INSTRUÇÕES:
install-gpgkey /
-> Importa uma chave privada gpg.
install-gpgkey -h
install-gpgkey --help
-> Ver esta ajuda.
EOF
}
# Checagem inicial e obtenção do caminho do arquivo com a chave
check()
{
# Sem root não vai, amiguinho.
[[ "$UID" -ne '0' ]] && { echo "Execute como root."; exit 1 ;}
# Verificando se o local da chave foi passado
if [[ ! -e "$chave" ]]; then
echo -e "${msg_arquivo_invalido} (${chave})"
ajuda
exit 1
fi
# Verificando se o diretório existe
if [[ -d "${dir_gpg}" ]]; then
#dir_gpg já existe
echo -e "${msg_dir_existe}"
read -ep "Deseja REALMENTE excluir TODOS os arquivos em '${dir_gpg}' ? [s/N ]: " -n 1
case "$REPLY" in
s|S) certeza ;;
*) sair ;;
esac
fi
}
certeza()
{
read -ep "Você tem CERTEZA ? [s/N ]: " -n 1
case "$REPLY" in
s|S) absoluta ;;
*) sair ;;
esac
}
absoluta()
{
read -ep "Você tem certeza ABSOLUTA ? [s/N ]: " -n 1
case "$REPLY" in
s|S) instalar ;;
*) sair ;;
esac
}
instalar()
{
echo -e 'Então tá. E lá vamos nós...'
rm -rfv $dir_gpg/*
if ! [[ -d "${dir_gpg}" ]]; then
mkdir -v /root/.gnupg # cria o dir_gpg
fi
# Instala
echo 'Criando o arquivo '
echo 'pinentry-mode loopback' >> ${dir_gpg}/gpg.conf
gpg --import $chave
echo -e 'Importação concluída!'
sair
}
sair()
{
echo -e "${msg_ate_breve}"
exit 0
}
#-------------------------->
# Programa começa aqui :)
case $1 in
-h|--help)
ajuda
exit 0
;;
*)
chave="${1}"
check
inicius
;;
esac
exit 0
Melhorias generalizadas de segurança (parte 2)
Kali On The Box - Colocando o Kali para rodar no Raspberry Pi
Utilizando SSH com método de autenticação publickey + ssh-agend + ssh-add
Nenhum comentário foi encontrado.
Cirurgia para acelerar o openSUSE em HD externo via USB
Void Server como Domain Control
Modo Simples de Baixar e Usar o bash-completion
Monitorando o Preço do Bitcoin ou sua Cripto Favorita em Tempo Real com um Widget Flutuante
Como impedir exclusão de arquivos por outros usuários no (Linux)
Cirurgia no Linux Mint em HD Externo via USB
Anúncio do meu script de Pós-Instalação do Ubuntu
Alguém executou um rm e quase mata a Pixar! (5)
Formas seguras de instalar Debian Sid (4)
Duas Pasta Pessoal Aparecendo no Ubuntu 24.04.3 LTS (12)
Alguém pode me indicar um designer freelancer? [RESOLVIDO] (5)
Por que passar nas disciplinas da faculdade é ruim e ser reprovado é b... (6)









