Аутентификация по SSH-ключу
Введение
Заголовок раздела «Введение»SSH-ключи дают вам беспарольный вход по ключу. Они управляются на уровне учётной записи в разделе Security — а не для каждой машины отдельно. Порядок всегда такой:
- Добавьте публичный ключ в свой профиль.
- Создайте инстанс и выберите этот ключ для развёртывания.
Ключи устанавливаются при провижининге инстанса, поэтому ключ должен быть в вашем профиле до создания машины. Поддерживаются Ed25519, RSA и ECDSA.
Как это работает и примеры
Заголовок раздела «Как это работает и примеры»1. Сгенерируйте ключ (если у вас его ещё нет)
Заголовок раздела «1. Сгенерируйте ключ (если у вас его ещё нет)»ssh-keygen -t ed25519 -C "you@example.com"Эта команда создаёт ~/.ssh/id_ed25519 (приватный — храните в секрете) и ~/.ssh/id_ed25519.pub (публичный — можно безопасно передавать).
2. Добавьте публичный ключ в свой профиль
Заголовок раздела «2. Добавьте публичный ключ в свой профиль»- Скопируйте свой публичный ключ:
Окно терминала cat ~/.ssh/id_ed25519.pub - Перейдите на app.myremotemac.com/security и выберите Add SSH key.
- Вставьте ключ (имя предлагается автоматически — при желании переименуйте) и подтвердите кодом 2FA.
- При желании выберите Set as default — ваш ключ по умолчанию выбирается заранее всякий раз, когда вы создаёте новый инстанс.
3. Создайте инстанс с ключом
Заголовок раздела «3. Создайте инстанс с ключом»При создании инстанса на шаге SSH keys перечислены ключи из вашего профиля:
- Ваш ключ по умолчанию отмечен заранее — отметьте любые дополнительные ключи, которые хотите развернуть.
- Можно выбрать несколько ключей или ни одного (машина всё равно получит имя пользователя/пароль).
- Ещё нет ключей? Вы увидите «You don’t have any SSH keys yet» со ссылкой Add one in Security →. Сначала добавьте ключ, затем вернитесь.
4. Подключитесь
Заголовок раздела «4. Подключитесь»ssh -i ~/.ssh/id_ed25519 your-username@YOUR-IPДобавление ключа на существующий инстанс (вручную)
Заголовок раздела «Добавление ключа на существующий инстанс (вручную)»Если машина уже работает и вы хотите добавить ключ, не пересоздавая её, допишите его в ~/.ssh/authorized_keys по SSH:
# from the instance (or pipe it over SSH)mkdir -p ~/.ssh && chmod 700 ~/.sshecho "ssh-ed25519 AAAA... you@example.com" >> ~/.ssh/authorized_keyschmod 600 ~/.ssh/authorized_keysFAQ
Куда добавлять SSH-ключ?
В свой профиль на странице app.myremotemac.com/security — а не для каждой машины. Добавление ключа требует подтверждения кодом 2FA.
Добавлять ключ до или после создания инстанса?
До. Ключи разворачиваются при провижининге инстанса, поэтому ключ должен уже быть в вашем профиле и выбран при создании. Ваш ключ по умолчанию выбирается автоматически.
Можно ли развернуть несколько ключей?
Да — отметьте несколько ключей на шаге SSH keys при создании инстанса. Можно также оставить поле пустым и использовать имя пользователя/пароль по умолчанию.
Я создал инстанс без своего ключа. Что теперь?
Добавьте ключ на работающую машину вручную, дописав его в
~/.ssh/authorized_keys по SSH, либо пересоздайте инстанс с выбранным ключом.Почему мне отказывают даже с действительным ключом?
Почти наверняка вы не указали имя пользователя. Всегда подключайтесь как
ssh -i ~/.ssh/id_ed25519 your-username@YOUR-IP.