Генератор SSH-ключей

Публичный ключ (формат authorized_keys)
Далее

Сгенерируйте пару SSH-ключей RSA прямо в браузере. Выберите размер ключа (2048, 3072 или 4096 бит) и необязательный комментарий; инструмент выдаёт закрытый ключ и открытый ключ, готовый вставить в ~/.ssh/authorized_keys. Всё выполняется в вашем браузере, поэтому ни один из ключей не покидает устройство. Чтобы получить современный ключ Ed25519 или защитить ключ парольной фразой, запустите ssh-keygen на своей машине.

Как сгенерировать пару ключей

  1. 1

    Выберите размер ключа

    RSA 3072 бита: рекомендуемый вариант по умолчанию, надёжный и совместимый со всем. Вариант на 2048 бит быстрее и по-прежнему широко принимается; на 4096 бит самый консервативный, но медленнее.

  2. 2

    Добавьте комментарий

    Обычно `user@host` или короткое описание. Он добавляется к открытому ключу, чтобы вы узнавали его в файлах `authorized_keys`.

  3. 3

    Сгенерируйте пару ключей

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

  4. 4

    Скопируйте или скачайте

    Закрытый ключ в формате PEM (`-----BEGIN RSA PRIVATE KEY-----`) и открытый ключ в одну строку (`ssh-rsa AAAA...`). Держите закрытый ключ в секрете.

Как выбрать размер ключа

Размер ключа Скорость Безопасность Используйте, когда
RSA 2048 Быстро Достаточно (эквивалент 112 бит) Нужна самая быстрая генерация
RSA 3072 Умеренно Надёжно (эквивалент 128 бит) Рекомендуемый вариант по умолчанию для большинства
RSA 4096 Медленнее Очень надёжно, в большинстве случаев избыточно Нужен консервативный, долгоживущий ключ

Этот инструмент создаёт ключи RSA, которые принимает любой SSH-сервер. RSA 3072 уже соответствует симметричной стойкости в 128 бит, чего более чем достаточно для повседневных задач; вариант 4096 крупнее и медленнее в генерации, но заметно не безопаснее.

Предпочитаете современный ключ Ed25519? Он короче и быстрее RSA, но здесь не создаётся. Сгенерируйте его на своей машине командой ssh-keygen -t ed25519.

Что вы получаете

Инструмент выдаёт два текстовых блока, оба сгенерированы в вашем браузере:

  • Закрытый ключ в формате PEM, начинающийся с -----BEGIN RSA PRIVATE KEY-----. Держите его в секрете и никогда не передавайте. Он создаётся без парольной фразы; чтобы зашифровать его, добавьте фразу локально командой ssh-keygen -p -f id_rsa.
  • Открытый ключ в одну строку, в формате authorized_keys OpenSSH:
ssh-rsa AAAAB3NzaC1yc2EAAAADAQAB... user@laptop

Три поля: имя алгоритма (ssh-rsa), материал ключа в кодировке Base64 и ваш необязательный комментарий.

Советы по управлению ключами

  • Держите закрытый ключ закрытым. Закрытый ключ в открытом виде это провал, если его украдут. Храните его со строгими правами доступа и добавляйте парольную фразу для всего важного.
  • Отдельный ключ под каждую задачу. Используйте один ключ на сервис (GitHub, GitLab, продакшн, стейджинг), чтобы одна утечка имела ограниченный радиус поражения.
  • Меняйте ключи при уходе людей. Когда кто-то уходит, удаляйте его открытый ключ из каждого файла authorized_keys.
  • Никогда не отправляйте закрытый ключ. Передавайте только открытый ключ. Запомните это накрепко.
  • Храните зашифрованные резервные копии. Потеря единственной копии ключа может закрыть вам доступ ко всем серверам, которые ему доверяют.

Куда добавлять открытый ключ

  • Linux/Unix: ~/.ssh/authorized_keys на сервере, один ключ в строке, права 0600 для файла и 0700 для каталога.
  • GitHub/GitLab/Bitbucket: настройки аккаунта, раздел SSH-ключей.
  • AWS EC2: импортированная пара ключей, привязанная к экземпляру при запуске.
  • Azure/GCP: настройки SSH проекта или экземпляра.

Часто задаваемые вопросы

Если вы доверяете странице (открыта по HTTPS, с хоста, который вы проверяете), то да. Пара ключей вычисляется в вашем браузере, и ни один из ключей не выгружается на сервер. Тем не менее запуск ssh-keygen на своей машине остаётся золотым стандартом, поскольку исключает любую компрометацию на уровне браузера.

Нет. Этот инструмент создаёт только ключи RSA. Для современного ключа Ed25519 запустите ssh-keygen -t ed25519 на своей машине; он короче и быстрее RSA и поддерживается любым современным SSH-сервером.

Не особо. RSA 3072 уже соответствует симметричной стойкости в 128 бит, чего более чем достаточно. Вариант 4096 медленнее и крупнее, но заметно не безопаснее, поэтому 3072 остаётся рекомендуемым по умолчанию.

Используйте ssh-copy-id user@host, если ещё можете войти по паролю. Иначе вручную допишите открытый ключ в ~/.ssh/authorized_keys на сервере через консоль облачного провайдера или другой способ доступа.

Сопутствующие инструменты

Генератор SSL-сертификатов

Создайте самоподписанный сертификат SSL/TLS и закрытый ключ RSA полностью в браузере. Свои Common Name, SAN и срок действия, экспорт в PEM.

Генератор ключей PGP

Создайте пару ключей OpenPGP в текстовом формате ASCII и сертификат отзыва с Curve25519, RSA 2048 или RSA 4096.

Генератор хешей

Создавайте хеши MD5, SHA-1, SHA-256, SHA-384, SHA-512 и CRC32 из текста, с готовым для копирования дайджестом для контрольных сумм и сравнений.

Генератор JWT

Создавайте подписанные токены JWT с пользовательским заголовком, полями полезной нагрузки, подписью HMAC или RSA, а также ограничениями по сроку действия и аудитории для тестирования.

Генератор MD5

Создайте хеш MD5 для любого текста или файла. Результат, 128-битное значение в шестнадцатеричном формате, вычисляемое полностью в вашем браузере.

Шифрование / расшифровка AES

Шифруйте и расшифровывайте текст низкого риска с AES-шифрами OpenSSL. Парольная фраза хэшируется SHA-256, а Base64-вывод содержит IV плюс шифротекст.

Инструмент доступен на других языках