Comando Linux gpg
Enciclopedia de comandos de Linux
GPG (GNU Privacy Guard) es la herramienta de implementación del estándar OpenPGP desarrollada por el proyecto GNU, utilizada para cifrar y descifrar datos, así como para crear y verificar firmas digitales. Es una alternativa de código abierto a PGP (Pretty Good Privacy), ampliamente utilizada en escenarios como el cifrado de archivos, la protección de seguridad del correo electrónico y la verificación de firmas de paquetes de software.
Estructura básica de sintaxis
El formato de sintaxis básica del comando gpg es el siguiente:
gpg [选项] [命令] [文件名]
Componentes principales:
- Opciones: Varios parámetros que controlan el comportamiento de GPG
- Comando: Especifica el tipo de operación a realizar
- Nombre de archivo: Archivo a procesar (opcional)
Parámetros de comando comunes
Gestión de claves
| Parámetro | Descripción |
|---|---|
--gen-key |
Generar un nuevo par de claves |
--list-keys |
Listar todas las claves públicas |
--list-secret-keys |
Listar todas las claves privadas |
--delete-key |
Eliminar clave pública |
--delete-secret-key |
Eliminar clave privada |
--import |
Importar clave |
--export |
Exportar clave |
Operaciones de cifrado/descifrado
| Parámetro | Descripción |
|---|---|
--encrypt (-e) |
Cifrar archivo |
--decrypt (-d) |
Descifrar archivo |
--sign (-s) |
Crear firma |
--verify |
Verificar firma |
--armor (-a) |
Generar salida en formato ASCII |
Otras opciones comunes
| Parámetro | Descripción |
|---|---|
--recipient (-r) |
Especificar la clave del destinatario |
--output (-o) |
Especificar el archivo de salida |
--passphrase |
Especificar la frase de contraseña |
Ejemplos prácticos de aplicación
1. Generar un par de claves
gpg --gen-key
Después de ejecutar, se preguntará interactivamente:
- Tipo de clave (normalmente se elige la opción predeterminada RSA y RSA)
- Longitud de la clave (se recomienda 4096 bits)
- Período de validez de la clave
- Información de identificación del usuario (nombre y correo electrónico)
- Frase de contraseña
2. Cifrar archivos
gpg --encrypt --recipient alice@example.com --output secret.txt.gpg secret.txt
--recipientEspecificar la clave pública del destinatario (identificada por correo electrónico)--outputEspecificar el archivo de salida cifrado- El último parámetro es el archivo original que se va a cifrar
3. Descifrar archivos
gpg --decrypt --output plain.txt secret.txt.gpg
El sistema solicitará la frase de contraseña de la clave privada
4. Crear y verificar firmas
Crear firma:
gpg --sign --output document.sig document.txt
Verificar firma:
gpg --verify document.sig document.txt
5. Exportar la clave pública
gpg --armor --export alice@example.com > alice.pub.asc
--armorLa opción genera un archivo de clave pública en formato ASCII
Prácticas de gestión de claves
Proceso de operación del anillo de claves

Configuración de relaciones de confianza de claves
-
Importar la clave pública de otra persona:
gpg --import bob.pub.asc
-
Verificar la huella digital de la clave:
gpg --fingerprint bob@example.com
-
Firmar la clave para establecer confianza:
gpg --sign-key bob@example.com
Preguntas frecuentes
1. ¿Cómo evitar tener que introducir la contraseña cada vez que se descifra?
Usar gpg-agent para almacenar en caché la contraseña:
gpg --use-agent --decrypt file.gpg
2. ¿Cómo revocar una clave perdida?
-
Generar un certificado de revocación:
gpg --gen-revoke your@email.com > revoke.asc
-
Publicar el certificado de revocación:
gpg --import revoke.asc
3. ¿Cuáles son las mejores prácticas para cifrar archivos grandes?
Usar cifrado simétrico combinado con cifrado asimétrico:
gpg --symmetric --cipher-algo AES256 largefile.iso
Consideraciones de seguridad
- Protección de la clave privada: Los archivos de clave privada deben guardarse adecuadamente, se recomienda usar una frase de contraseña segura
- Copia de seguridad de claves: Realizar copias de seguridad periódicas del anillo de claves y de los certificados de revocación
- Selección de algoritmos: Se recomienda usar algoritmos de cifrado fuertes como AES-256 y RSA-4096
- Caducidad de la clave: Establecer un período de validez razonable para la clave y actualizarla periódicamente
- Fuga de metadatos: Al cifrar, no se conservan metadatos como el nombre del archivo; se puede usar la
--throw-keyidsopción
Al dominar el comando gpg, puedes proteger eficazmente la seguridad de los datos confidenciales y lograr una transferencia de archivos y una verificación de identidad seguras. Se recomienda familiarizarse con las distintas operaciones en un entorno de prueba antes del uso real.
Otras extensiones