Пара ключей создаётся одной командой, дальше gpg сам спрашивает имя, email и пароль:

gpg --gen-key
gpg --list-keys

Зашифровать файл для конкретного получателя — по его публичному ключу:

gpg -e -r user@example.com file.txt
gpg -e -r user@example.com --armor file.txt   # текстовый вывод вместо бинарного

Расшифровка — gpg сам найдёт нужный приватный ключ в keyring и спросит пароль:

gpg -d file.txt.gpg > file.txt

Подпись подтверждает авторство без шифрования содержимого:

gpg --sign file.txt
gpg --verify file.txt.gpg

Публичный ключ для обмена — экспорт и импорт в текстовом виде:

gpg --export --armor user@example.com > pubkey.asc
gpg --import pubkey.asc

#linux #security #sysadmin