Инструменты пользователя

Инструменты сайта


gnupg

gnupg - шпаргалка

GnuPG - мощное средство шифрования и дешифрования файлов. Работает как с симметричным, так и с несимметричным шифрованием («открытые ключи»). Является простым и эффективным средством для обеспечения безопасности при передаче информации по «открытым каналам» связи, а также при хранении важных (логины/пароли) данных на постоянных носителях информации.

Настройка gnupg

Создание пары ключей

Для создания пары ключей:

# gpg --gen-key

В процессе создания выбрать RSA с длиной ключа 2048. Рекомендуется указать срок действия ключа, а также контактный (существующий) адрес электронной почты.

Просмотр информации о ключах

Для просмотра информации о ключах:

# gpg --list-keys 
/root/.gnupg/pubring.gpg
pub   2048R/D111111 2016-05-10
uid                  seed <seed@mail.domain>
sub   2048R/01111110 2016-05-10

Для просмотра информации о подписи:

gpg --list-sigs 
/root/.gnupg/pubring.gpg
------------------------
pub   2048R/D111111 2016-05-13
uid                  seed <seed@mail.domain>
sig 3        D111111 2016-05-10  greendruid <seed@mail.domain>
sub   2048R/0111111 2016-05-10
sig          D111111 2016-05-10  greendruid <seed@mail.domain>

Экспорт ключа(-ей)

Для экспорта открытого ключа в ASCII-виде:

# gpg --armor --export seed@mail.domain    
-----BEGIN PGP PUBLIC KEY BLOCK-----
Version: GnuPG v2.0.14 (GNU/Linux)
P5oFj1SCT5hpG5v+iVgZWv18vLg7owUZDLbR/ZzLTKYl+c/rb+KB7UhSo68uBy7P
+QlPPzX1r7ZVpsFAXcmhe5YH9WfPQ6qEBtxynLXrT8e012VoFOWuJ+/zFTVhKatj
z5iQy2haO2qrHUUEqMJQ11t83YolIMjt7z13ABEBAAG0GGdyZWVuZHJ1aWQgPHdl
...

Для экспорта открытого ключа в binary-виде:

# gpg --output seed.gpg --export seed@mail.domain
# less seed.gpg
EC><8A><D9>k%J<FD>^Z^G<FF>r^E<E5><8A>a<BE>D?<<BD>r><87>^X^F<85>^O<U+0588>)
F^RFW<D5>sH<88>eB6<C6>^_<F9><DF>+<9C><96>^D^X<D2>սzo<E4>:^R<F6>^@n<C9><D4>]"<C7>y <CC>`*<FB><D6>P^W2<B7><A6>b<8F>B<A4>5<EE>&hx<E4>5<F4>^V+<86><90>8
<AD>+nlj*^?v<82><F9><F8>ؐC4>j<85>

Для экспорта закрытого ключа в ASCII-виде:

#  gpg --export-secret-key -a ID-ключа > secret_ascii_seed_mail_domain

Для экспорта закрытого ключа в binary-виде:

#  gpg --export-secret-key ID-ключа > secret_binary_seed_mail_domain

Импорт ключа(-ей)

Для импорта открытых ключей реципиента (с кем собираетесь вести обмен информацией с использование ключей):

# gpg --import recipients_key.gpg
# gpg --list-keys

Для импорта закрытых ключей:

# gpg --import secret.key
# gpg --list-keys

Отзыв ключа(-ей), удаление ключа(-ей)

Для отзыва ключа потребуется создать специальный сертификат:

# gpg --list-keys
pub   2048R/D111111 2016-05-13
uid                  seed <seed@mail.domain>
# gpg --gen-revoke D111111 > revoke_seed_main_domain
# gpg --import revoke_seed_main_domain

Для удаление из pubring (иначе говоря: для удаления ключа физически с носителя), включая секретный ключ:

# gpg --delete-secret-keys D111111
# gpg --delete-keys D111111

Удаление старых и отозванных ключей с помощью одной команды:

# gpg --list-keys | awk '/^pub.* \[expired\: / {id=$2; sub(/^.*\//, "", id); print id}' | fmt -w 999 | sed 's/^/gpg --delete-keys /;'
# gpg --list-keys | awk '/^pub.* \[revoked\: / {id=$2; sub(/^.*\//, "", id); print id}' | fmt -w 999 | sed 's/^/gpg --delete-keys /;'

Шифрование файла

Для шифрования файла с помощью пароля (симметричное шифрование):

# gpg -c file.txt

Для расшифровки с помощью пароля (симметричное шифрование):

# gpg file.txt

Для шифрования с помощью ключа (несимметричное шифрование):

# gpg --output $OUTPUT_FILE.ext.gpg --encrypt --recipient feed@mail.domain $INPUT_FILE.ext

Для расшифровки с помощью ключа (несимметричное шифрование):

# gpg --output $OUTPUT_FILE.ext --decrypt $INPUT_FILE.ext.gpg

Пример

Пример

Пример

# gpg --output mysecret.txt.gpg --encrypt --recipient feed@mail.domain mysecret.txt
# gpg --output mysecret.txt --decrypt mysecret.txt.gpg
gnupg.txt · Последние изменения: 2016/05/16 08:43 — Alex