Как изменить расположение ключей ssh ​​для openshift

Я нахожусь в процессе настройки клиентских инструментов rhc для подключения к OpenShift. Во время «настройки rhc» предполагается сгенерировать ключи ssh в:

~/.ssh/

Однако эта папка .ssh используется для другого подключения, и я предпочитаю не изменять эту папку.

Можно ли как-то указать другое место для генерации ключей ssh ​​во время настройки rhc?

Потому что при настройке rhc меня не спрашивали где генерировать ключи и я тоже заглянул в ~/.openshift/express.conf и увидел только конфигурации для ssl; не сш.

Спасибо.


person mk3lai    schedule 02.10.2015    source источник


Ответы (2)


Не уверен, как это работает на окнах. Вы пытались установить переменную HOME env при запуске rhc? Или любые переменные HOME*, которые есть в окнах, чтобы указать домашний каталог пользователя (HOMEPATH, HOMEDRIVE...).

Я могу только предположить, что тот, кто проголосовал против этого, - идиот. Только что попробовал linux, все работает. Я не могу проверить на окнах, но весьма вероятно, что это будет работать и там. В любом случае, для тех, кто находит это полезным:

$ HOME=/home/crackit/newhome rhc setup
OpenShift Client Tools (RHC) Setup Wizard

This wizard will help you upload your SSH keys, set your application namespace,
and check that other programs like Git are properly installed.

If you have your own OpenShift server, you can specify it now. Just hit enter to
use the server for OpenShift Online: openshift.redhat.com.
Enter the server hostname: |openshift.redhat.com| 

You can add more servers later using 'rhc server'.

Login to openshift.redhat.com: [email protected]
Password: *************

OpenShift can create and store a token on disk which allows to you to access the
server without using your password. The key is stored in your home directory and
should be kept secret.  You can delete the key at any time by running 'rhc
logout'.
Generate a token now? (yes|no) yes
Generating an authorization token for this client ... lasts about 1 month

Saving configuration to /home/crackit/newhome/.openshift/express.conf ... done

No SSH keys were found. We will generate a pair of keys for you.

    Created: /home/crackit/newhome/.ssh/id_rsa.pub

Your public SSH key must be uploaded to the OpenShift server to access code.
Upload now? (yes|no)
yes

  default (type: ssh-rsa)
  -----------------------
    Fingerprint: ba:49:1e:2a:22:1d:e4:69:3b:ee:62:09:dc:2d:4c:f1

  dpospisi (type: ssh-rsa)
  ------------------------
    Fingerprint: 83:89:a7:c4:bd:31:31:8c:26:a4:82:a5:8e:6e:c0:65

You can enter a name for your key, or leave it blank to use the default name.
Using the same name as an existing key will overwrite the old key.

Provide a name for this key: |asdfghhjjkk| gah

Uploading key 'gah' ... done

Checking for git ... found git version 2.1.0

Checking common problems .. done

Checking for a domain ... asdfghh

Checking for applications ... found 2

  jenkins http://aaaa-bbbbbb.rhcloud.com/
  tmp     http://tmp-bbbbbb.rhcloud.com/

  You are using 2 of 3 total gears
  The following gear sizes are available to you: small, medium

Your client tools are now configured.
person akostadinov    schedule 29.12.2015
comment
@King-Wizard, если у вас уже есть ключ в этом другом месте (указанном переменной HOME env), то новая пара не будет создана. Я вижу, что ваш вопрос о другом. Я посмотрел на исходный код и увидел, что ключ ssh жестко запрограммирован на ~/.ssh/id_rsa в lib/rhc/config.rb. В командной строке нет параметра, влияющего на настройку ssh для rhc setup. Таким образом, вы можете просто выбрать No в настройках rhc, а затем добавить ключ с помощью команды rhc sshkey add, или вы можете объяснить, что и почему вы пытаетесь сделать, чтобы получить лучший ответ. - person akostadinov; 30.12.2015
comment
Часть 1/2: @ akostadinov Давайте представим, что я не хочу устанавливать переменную окружения $HOME и вместо этого хочу использовать свои ssh-ключи, расположенные по определенному пользовательскому пути. Также примите во внимание, что мой файл ~/.ssh/config хорошо и хорошо настроен и указывает на пользовательский путь, где находятся мои ключи ssh. После добавления ssh_key_file='~/.ssh/OpenShift-SSH-Keys/my_id_rsa' к ~/.openshift/custom-express.conf и запуска rhc setup --config ~/.openshift/custom-express.conf -l <login> я могу заметить, что файл принимается во внимание rhc setup - person King-Wizard; 03.01.2016
comment
Часть 2/2: @ akostadinov, но инструкция ssh_key_file='~/.ssh/OpenShift-SSH-Keys/my_id_rsa', похоже, не принимается во внимание rhc cli. По вашему мнению, почему он не принимает это во внимание и как бы вы решили эту проблему? Является ли синтаксис инструкции неправильным или устаревшим? - person King-Wizard; 03.01.2016
comment
@Король-Волшебник, что касается why, я не могу сказать. Как я уже сказал, часть ключа ssh в значительной степени жестко запрограммирована. Скорее всего, этот вариант использования не рассматривался при написании инструмента. Вы можете сообщить об ошибке, если хотите. Но, по моему личному мнению, rhc setup предназначен для наиболее распространенных вариантов использования. Если вы хотите что-то экзотическое, вам нужны другие команды. Я написал вам эти команды в другом вашем вопросе (ах). - person akostadinov; 03.01.2016
comment
для тех, кому интересно - это другой вопрос: stackoverflow.com/a/34559668/520567 - person akostadinov; 03.01.2016

Если у вас уже есть существующие ключи ssh в папке .ssh, команда установки rhc, вероятно, спросит, хотите ли вы загрузить существующие ключи, а не создавать новые. если вы войдете в веб-консоль openshift, вы увидите, загрузил ли он для вас ключ.

person Community    schedule 02.10.2015
comment
Это не ответ на конкретный вопрос. - person King-Wizard; 29.12.2015