Automatizar a importação de chave privada GPG (GnuPG)
Publicado por Vinicius Araujo Lopes (última atualização em 02/09/2019)
[ Hits: 2.547 ]
Homepage: www.viniciusalopes.com.br
Este script foi criado para facilitar a importação da chave privada GPG em um computador com a distribuição Gnu/Linux Mazon Os, mas pode ser utilizado em qualquer sistema operacional. Simples como voar! ;)
O código fonte, bem como todas as instruções de uso estão disponibilizadas no meu repositório GitHub para quem quiser! :D
Repositório do código: https://github.com/Viniciusalopes/install-gpgkey
Utilizem com moderação!
Atenciosamente,
Vovolinux
#!/usr/bin/env bash
# Template orgulhosamente criado por (Shell-Base) tks SlackJeff
#-----------HEADER-------------------------------------------------------------|
#AUTOR
# Vovolinux <suporte@vovolinux.com.br>
#
##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 <local-da-chave>/<arquivo.key>
-> 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
VMware - Linux HotAdd CPU/Memória
Criar pacote Debian do thunderbird de br.mozdev.org
Instalador Nagios 4.2 no Fedora 24
Nenhum comentário foi encontrado.
Gentoo: detectando impressoras de rede e como fixar uma impressora por IP
Como o GNOME conseguiu o feito de ser preterido por outras interfaces gráficas
Gentoo binário em 2026: UEFI, LUKS, Btrfs e Systemd
Trabalhando Nativamente com Logs no Linux
Jogando Daikatana (Steam) com Patch 1.3 via Luxtorpeda no Linux
Por que sua empresa precisa de uma PKI (e como automatizar EMISSÕES de certificados via Web API)
Instalando NoMachine no Gentoo com Systemd (acesso Remoto em LAN)
Gentoo: Trocando wpa_supplicant pelo iwd no NetworkManager (Systemd)
O que houve com slackware ??? (12)
Alterar conteúdo de dica [RESOLVIDO] (3)
Vou destruir sua infância:) (5)









