ssh – Gentoo Linux GPG cifra correctamente un archivo pasado a través de un parámetro pero arroja "ioctl inapropiado para el dispositivo" cuando se lee desde la entrada estándar

Pregunta:

Estoy ejecutando Gentoo Hardened con kernel 4.1.7-hardened-r1 y estoy tratando de cifrar un archivo usando GPG desde una sesión de shell abierta desde SSH y con la variable DISPLAY deshabilitada para usar pinentry-curses para la solicitud de contraseña. Usando gpg -o file.gpg --symmetric file que puedo cifrar muy bien. Usando el pv file | gpg -o file.gpg --symmetric Recibo el siguiente mensaje de error:

gpg-agent[30745]: command get_passphrase failed: Inappropriate ioctl for device

Respuesta:

Debe configurar su variable GPG_TTY para que funcione, como en este documento :

GPG_TTY=$(tty)
export GPG_TTY

Se supone que esas dos líneas están en su .bashrc (asumiendo bash), por lo que se ejecutan cada vez que abre una nueva sesión de terminal.

Sin embargo, hay otra solución: en bash puede ejecutar su pv y pretender que es un archivo, utilizando la sustitución de procesos:

gpg -o file.gpg --symmetric <(pv file)

Como tal, puede que no sea una buena idea incluir cosas en programas que esperan una entrada adicional. Puede funcionar de forma diferente a lo esperado.

Leave a Comment

Your email address will not be published.

Scroll to Top

istanbul avukat

-

web tasarım