Работа с ключами разработчика: различия между версиями

Материал из ALT Linux Wiki
Нет описания правки
(не показано 6 промежуточных версий 5 участников)
Строка 10: Строка 10:


Если у вас нет SSH-ключа, то создать его можно, например, следующей командой:
Если у вас нет SSH-ключа, то создать его можно, например, следующей командой:
  $ ssh-keygen
  $ ssh-keygen [-t <тип ключа>] [-b <размер ключа (для RSA)>]
(рекомендуется ключ ED25519, RSA >= 4096-bit, или ECDSA)
(рекомендуется ключ ED25519, RSA >= 4096-bit)


Ключ настоятельно рекомендуется сделать с паролем. Для упрощения работы с ключами с паролями можно воспользоваться [[SSH|SSH-агентом]].
Ключ настоятельно рекомендуется сделать с паролем. Для упрощения работы с ключами с паролями можно воспользоваться [[SSH|SSH-агентом]].


Публичная часть ключа — файл <tt>~/.ssh/id_ed25519.pub</tt> (для ED25519-ключа, <tt>~/.ssh/id_rsa.pub</tt> для RSA-ключа, <tt>~/.ssh/id_ecdsa.pub</tt> для ECDSA-ключа).
Публичная часть ключа — файл <tt>~/.ssh/id_ed25519.pub</tt> для ED25519-ключа или <tt>~/.ssh/id_rsa.pub</tt> для RSA-ключа.


== Создание GPG-ключа ==
== Создание GPG-ключа ==
Строка 22: Строка 22:
  $ gpg --gen-key
  $ gpg --gen-key
В процессе ответа на вопросы выберите тип ключа — RSA и RSA (можно выбрать RSA (sign only), но тогда этот ключ будет непригоден для шифрования), размер — не менее 4096 bit. В качестве email укажите <tt>псевдоним@altlinux.org</tt>. Где <tt>псевдоним</tt> - это тот псевдоним, под которым вы хотите быть в ALT Linux Team (желательно только латинские буквы нижнего регистра).
В процессе ответа на вопросы выберите тип ключа — RSA и RSA (можно выбрать RSA (sign only), но тогда этот ключ будет непригоден для шифрования), размер — не менее 4096 bit. В качестве email укажите <tt>псевдоним@altlinux.org</tt>. Где <tt>псевдоним</tt> - это тот псевдоним, под которым вы хотите быть в ALT Linux Team (желательно только латинские буквы нижнего регистра).
Все входные данные для <tt>gpg --gen-key</tt> должны быть указаны в ASCII.


== Модификация существующего GPG-ключа ==
== Модификация существующего GPG-ключа ==
Строка 41: Строка 42:


== Обновление SSH-ключа==
== Обновление SSH-ключа==
Для обновления SSH ключа (в случае, если он не был скомпрометирован), используемого для доступа к git.alt, можно воспользоваться процедурой, аналогичной обновлению GPG ключа - создать специальный репозиторий на git.alt (например, git.alt:private/ssh-key.git) в своём личном пространстве и выложить в нем новый ключ. Этим вы подтверждаете аутентичность модификации. После этого необходимо открыть заявку в Bugzilla на компонент git.altlinux.org для продукта Infrastructure со ссылкой на созданный репозиторий. В случае, если одновременно обновляются SSH и GPG ключи, ссылку на SSH ключ можно дать в одной заявке с GPG (компонент alt-gpgkeys).  
Для обновления SSH ключа (в случае, если он не был скомпрометирован), используемого для доступа к git.alt, можно воспользоваться процедурой, аналогичной обновлению GPG ключа - создать специальный репозиторий на git.alt (например, git.alt:private/ssh-key.git) в своём личном пространстве и выложить в нем новый ключ. Этим вы подтверждаете аутентичность модификации. После этого необходимо открыть заявку в [https://bugzilla.altlinux.org Bugzilla] на компонент '''keys''' для продукта '''Team Accounts''' со ссылкой на созданный репозиторий. В случае, если одновременно обновляются SSH и GPG ключи, ссылку на SSH ключ можно дать в одной заявке с GPG (компонент alt-gpgkeys).  


=== dsa ключи ===
=== dsa ключи ===

Версия от 11:15, 13 августа 2019

При приёме участник предоставляет два криптографических ключа, по которым он идентифицируется в дальнейшем. Берегите свои приватные ключи!

При утере одного из ключей участник может заменить его, заверив вторым. При утрате обоих ключей участник обязан незамедлительно известить об этом принимающих. Его доступ в git.alt прекращается до восстановления ключей.

Два ключа могут быть восстановлены либо посредством личной встречи с одним из принимающих, либо посылкой их письмом, заверенным ключом одного из участников ALT Linux Team. В последнем случае всю ответственность за дальнейшую безопасность репозитория несёт участник, заверивший ключи.

Создание SSH-ключа

Если у вас нет SSH-ключа, то создать его можно, например, следующей командой:

$ ssh-keygen [-t <тип ключа>] [-b <размер ключа (для RSA)>]

(рекомендуется ключ ED25519, RSA >= 4096-bit)

Ключ настоятельно рекомендуется сделать с паролем. Для упрощения работы с ключами с паролями можно воспользоваться SSH-агентом.

Публичная часть ключа — файл ~/.ssh/id_ed25519.pub для ED25519-ключа или ~/.ssh/id_rsa.pub для RSA-ключа.

Создание GPG-ключа

Создать новый GPG-ключ можно командой

$ gpg --gen-key

В процессе ответа на вопросы выберите тип ключа — RSA и RSA (можно выбрать RSA (sign only), но тогда этот ключ будет непригоден для шифрования), размер — не менее 4096 bit. В качестве email укажите псевдоним@altlinux.org. Где псевдоним - это тот псевдоним, под которым вы хотите быть в ALT Linux Team (желательно только латинские буквы нижнего регистра). Все входные данные для gpg --gen-key должны быть указаны в ASCII.

Модификация существующего GPG-ключа

Проверьте, что тип ключа — RSA, размер не менее 4096bit. Добавьте идентификатор в ключ с помощью команд

$ gpg --edit-key <key id>
Command> adduid

Укажите своё имя и email вида псевдоним@altlinux.org, после чего сохраните изменения

Command> save

Отправка публичной части GPG-ключа

Экспортируйте публичную часть ключа для отправки:

$ gpg --armor --export псевдоним@altlinux.org

Обновление существующего GPG-ключа в пакете alt-gpgkeys

Для замены просроченного или недействительного ключа, используемого для подписи пакетов, необходимо клонировать последнюю актуальную сборку пакета alt-gpgkeys.git, обновить в нём свой ключ и выложить модифицированную версию на git.alt в своё личное пространство (private repo) — этим вы подтверждаете аутентичность модификации. Далее необходимо (пере-)открыть заявку на пакет (компонент) alt-gpgkeys для продукта Sisyphus в багзилле и ждать реакции мэйнтейнера.

Также можно приложить новый ключ, экспортированный в текстовый файл, к заявке.

Обновление SSH-ключа

Для обновления SSH ключа (в случае, если он не был скомпрометирован), используемого для доступа к git.alt, можно воспользоваться процедурой, аналогичной обновлению GPG ключа - создать специальный репозиторий на git.alt (например, git.alt:private/ssh-key.git) в своём личном пространстве и выложить в нем новый ключ. Этим вы подтверждаете аутентичность модификации. После этого необходимо открыть заявку в Bugzilla на компонент keys для продукта Team Accounts со ссылкой на созданный репозиторий. В случае, если одновременно обновляются SSH и GPG ключи, ссылку на SSH ключ можно дать в одной заявке с GPG (компонент alt-gpgkeys).

dsa ключи

Начиная с версии 7.1p1 ssh-client отказывается работать с ssh-dss:

Обновление ssh от 13.01.16

рекомендуется обновить ключ, либо включить поддержку ssh-dss в конфигурации своего клиента, как указано в сообщении об обновлении ssh.

Ссылки

  • Быстрый старт с gpg-ключами на opennet (генерация новой пары ключей, обмен ключами, шифрование, цифровые подписи и их проверка).
  • Управление ключами там же (управление вашей парой ключей, проверка достоверности ключей, распространение ключей).