Compare commits

..

1 Commits

Author SHA1 Message Date
d648f8d418 gpg key expire 2026-01-16 23:26:02 +03:00

View File

@@ -9,7 +9,6 @@ GPG ключи по сравнению с SSH ключами имеют боле
- настройка срока действия ключей с возможностью продления в будущем; - настройка срока действия ключей с возможностью продления в будущем;
- привязка ключей к имени пользователя и почте; - привязка ключей к имени пользователя и почте;
- возможность загрузки публичных ключей на сервера ключей; - возможность загрузки публичных ключей на сервера ключей;
- возможность хранения секретных ключей на аппаратном ключе который поддерживает стандарт OpenPGP Card (например Yubikey)
Под Windows утилита gpg идет вместе с git. Так что можно работать сразу после установки git. Под Windows утилита gpg идет вместе с git. Так что можно работать сразу после установки git.
@@ -82,9 +81,10 @@ gpg --expert --edit-key [id]
Прежде удалять мастер ключ или переносить сабключи на карту, необходимо сделать бекап (экспорт) всей нашей работы. Прежде удалять мастер ключ или переносить сабключи на карту, необходимо сделать бекап (экспорт) всей нашей работы.
``` ```
gpg -a --export-secret-key [id] > master.key # Экспорт мастер ключа (вместе с сабключами) gpg -a --export-secret-key [id] > master.key # Экспорт основного ключа
gpg -a --export-secret-subkeys [id] > subkeys.key # Экспорт сабключей (не обязательно) gpg -a --export-secret-subkeys [id] > subkeys.key # Экспорт сабключей
gpg -a --export [id] > public.key # Экспорт общего публичного ключа gpg -a --export [id] public.key # Экспорт публичных ключей
``` ```
## Сохранение на аппаратный ключ ## Сохранение на аппаратный ключ
@@ -108,11 +108,11 @@ gpg --edit-key [id] # входим в режим редактиро
## Удаление секретных ключей ## Удаление секретных ключей
Удаляем секретные ключи: Удалем секретный ключ:
``` ```
gpg --delete-secret-keys [master-key-id] gpg --delete-secret-keys [id]
``` ```
Для того чтобы gpg понял что секретные ключи находятся на карте выполняем: Удалятся все секретные ключи. Для того чтобы gpg понял что секретные ключи находятся на карте выполняем:
``` ```
gpg --card-status gpg --card-status
``` ```
@@ -160,7 +160,8 @@ signoff = commit --amend --no-edit -s
Если удалить не получается то надо убить процессы: Если удалить не получается то надо убить процессы:
``` ```
gpgconf --kill all gpgconf --kill gpg-agent
gpgconf --kill keyboxd
``` ```
Импортируем ключи с карты: Импортируем ключи с карты:
@@ -182,13 +183,10 @@ gpg --edit-key [id]
Короткий вариант продлить сразу все ключи: Короткий вариант продлить сразу все ключи:
``` ```
gpg --import ~/master.key # временно импортируем мастер ключ gpg --import ~/master.key # временно импортируем мастер ключ
gpg --quick-set-expire [master-key-fingerprint] 1y '*' # продляем на 1 год с текущей даты gpg --quick-set-expire [master-key-fingerprint] 2y '*'
gpg --quick-set-expire [master-key-fingerprint] 2025-12-31 '*' # или указываем конкретную дату gpg --delete-secret-keys [master-key-id] # удаляем мастер ключ
gpg --delete-secret-keys [master-key-id] # удаляем секретные ключи
gpg --keyserver keys.openpgp.org --send-keys [master-key-id] # обновляем на сервере gpg --keyserver keys.openpgp.org --send-keys [master-key-id] # обновляем на сервере
gpg -a --export [master-key-id] > public.key # экспорт публичных ключей
# обновляем public.key на всех серверах git
``` ```
Или вручную по одному: Или вручную по одному:
@@ -208,9 +206,6 @@ gpg --edit-key [master-key-id]
> 1y # 1 год например > 1y # 1 год например
> key 3 # снимаем старый выбор > key 3 # снимаем старый выбор
> save # сохраняем (локальные ключи сотрутся!) > save # сохраняем (локальные ключи сотрутся!)
gpg --delete-secret-keys [master-key-id] # удаляем секретные ключи gpg --delete-secret-keys [master-key-id] # удаляем мастер ключ
gpg --keyserver keys.openpgp.org --send-keys [master-key-id] # обновляем на сервере gpg --keyserver keys.openpgp.org --send-keys [master-key-id] # обновляем на сервере
gpg -a --export [master-key-id] > public.key # экспорт публичных ключей
# обновляем public.key на всех серверах git
``` ```
Обновлять приватные ключи на аппаратных ключах (Yubikey) не нужно, т.к. там храниться только криптографическая часть, без метаданных.