SVN + SSH соединение от старого ключа - PullRequest
1 голос
/ 25 июня 2011

Я недавно создал в Windows ключ ssh - поэтому у меня есть файл .ppk. Преобразовал это также в openssh. В Windows я использовал черепаху с Pageant для подключения к серверу SVN + SSH. Теперь я хочу перейти на Linux. Как я могу подключиться к SVN + SSH с этим ключом .ppk или файл opessh. Я хотел бы использовать PagaVCS или RabbitVCS, но он постоянно запрашивает у меня логин и пароль, которых у меня явно нет, потому что у меня есть только этот файл openssh или .ppk. Кто-нибудь может помочь ??

Ответы [ 3 ]

3 голосов
/ 25 июня 2011

Используйте puttygen для преобразования ключа в формат openssh.Например, здесь описано: http://leadingedgescripts.co.uk/server-administration/how-to-convert-your-putty-ppk-private-key-to-a-normal-ssh-key-you-can-use-on-an-apple-mac/

К сожалению, нет опыта ни с Кроликом, ни с другим.В среде * nix я бы создал $ HOME / .ssh / config и написал бы что-то вроде этого:

Host host
User user
IdentityFile /path/to/your/key

И затем использовал бы svn + ssh: // host / directory (ssh затем получает информацию о конфигурации из.SSH / файл конфигурации).Может быть, что-то подобное можно сделать с одним из VCS?

В качестве последнего (или первого в моем случае) средства я бы использовал cygwin или mingw и настроил там доступ ssh - а затем настроил инструменты для использования sshиз этих пакетов.

1 голос
/ 22 июня 2012

Puttygen экспортирует закрытые ключи в кодировке DES, что приводит к тому, что некоторые программы (например, OpenSSH в Ubuntu) игнорируют ключ и запрашивают пароль.

Для использования PuTTY .ppk key в linuxOpenSSH, сначала экспортируйте ключ:

  1. Запустите puttygen
  2. Файл -> Loadprivate key
  3. Преобразования -> Экспорт ключа OpenSSH ( private.key в этом примере)

Теперь на компьютере linux повторно зашифруйте ключ с помощью команды смены ключевой фразы:

ssh-keygen -pf private.key

Введите одну и ту же фразу-пароль 3 раза (старый, новый(новый), чтобы фактически не изменять его.

Теперь вы можете проверить файл ключа, который DEK-Info: изменился с чего-то вроде DES-EDE3-CBC,F1785C4B846C781F на AES-128-CBC,916627D6328608175FA4545928372EA3.

Клиентское приложение не должно запрашиватьВы больше за пароль.

0 голосов
/ 24 июля 2012

Я уверен, что ответ на этот вопрос был онлайн, но я, кажется, больше нигде не могу его найти, так что здесь он от начала до конца, включая конверсию, которую вы сказали, что вы сделали:

  1. Откройте puttygen в Windows.
  2. Загрузите свой закрытый ключ (name.ppk), используя при необходимости парольную фразу.
  3. Перейдите в «Преобразования» -> «Экспорт ключа OpenSSH» и сохраните его как (Я предполагаю, что вы назвали его 'fileName').
  4. Скопируйте этот ключ в свой домашний каталог в Linux.
  5. Откройте терминал и переместите его в каталог .ssh с помощью команды 'mvfileName .ssh / '(~ / .ssh скрыт в графическом интерфейсе, но он есть).
  6. Перейдите в каталог .ssh с помощью' cd .ssh '
  7. Вставьте файл в новыйфайл с именем id_rsa с помощью команды 'cat fileName> id_rsa'.
  8. Измените разрешения для id_rsa на 600 с помощью команды 'chmod 600 id_rsa'.
  9. Наконец убедитесь, что в каталоге .ssh есть своиразрешения, установленные на 700 cd .., чтобы перейти в домашний каталог, и chmod 700 .ssh, чтобы установить permissions.

Это должно сделать это.

Там должна быть лучшая информация, но по этой ссылке есть кое-что, что вам может показаться интересным, особенно немного о разрешении http://www.lamolabs.org/blog/6241/one-liner-working-with-ssh-keygen-ssh-key-pair-files/

...