Проблема, присоединив к хранилищу из-за SSH

С пара дней, я конфигурирую GIT на сервере Linux посредством GitLab (который уже приходил пред-установлено).

Я создал новый проект, и если я присоединяюсь из-за HTTP, у меня нет никакой проблемы. Я это делаю в следующий адрес: http://192.168.1.33:10080/git/Probando.git

Однако, когда я стараюсь присоединяться путь SSH в следующий адрес: ssh://git@192.168.1.33:10022/git/Probando.git отпусти сообщение ошибки, которую он говорит так:

Incorrect credentials for repository at ssh://192.168.1.33:10022/git/Probando.git

Я думаю, что проблема находится в SSH Keys. Я создал ключ и ввел ее, но кажется, что оно не функционирует. Я описываю, как я создал и ввел ее:

  1. Я инициализирую хранилище:

    git init
    
  2. Я соглашаюсь на следующий маршрут

    cd ~/.ssh
    
  3. Я произвожу новый ключ используя почту admin@example.com

    ssh-keygen -t rsa -C 'admin@example.com'
    

    Когда он говорит мне, чтобы он ввел имя файла, я пишу git_rsa

    Когда мне говорит Enter passphrase, я это оставляю в мишени (я нажимаю enter)

    [~/.ssh] # ssh-keygen -t rsa -C 'admin@example.com'
    Generating public/private rsa key pair.
    Enter file in which to save the key (/share/homes/admin/.ssh/id_rsa): git_rsa
    git_rsa already exists.
    Overwrite (y/n)? y
    Enter passphrase (empty for no passphrase):
    Enter same passphrase again:
    Your identification has been saved in git_rsa.
    Your public key has been saved in git_rsa.pub.
    The key fingerprint is:
    SHA256:uiwCccsRLRC7IrTmRufRKi4O0LGsx7L8lcBqt1bOaX4 admin@example.com
    The key's randomart image is:
    +---[RSA 2048]----+
    |oo .             |
    | .o .            |
    |...o             |
    |o+=o.            |
    |=B+B .  S        |
    |Oo* +...         |
    |+Bo++oo          |
    |B++.+* E         |
    |++o+oo+          |
    +----[SHA256]-----+
    
  4. Сейчас я печатаю произведенный ключ и копирую ее:

    cat git_rsa.pub
    

    Это нечто похожее (я удаляю кусок из-за безопасности):

    ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC12zoBWILH38qY+hSLgPUwEChh2BdH9C/ydHP/EBBzm5nAJGRB.....................6IlE2RI4c/4iF1995oONG85yzy6sVEKe/qgRM0CGwrRNT00/491JjmdjZwvzVlii+5wdd4BUvHbn/N5Somt1XBVFtsPzhIetHgXKB admin@example.com
    
  5. Я иду к GitLab и открываю закладку SSH Keys

    • Я нажимаю на ADD SSH KEY
    • Я прикрепляю скопированный ключ
    • Я сохраняю изменения
    • Предполагается, что ключ уже введен....
  6. Но когда я буду входить, я ввожу адрес SSH, пользователя и пароль (те же верительные грамоты, что для связи HTTP функционирует правильно) и говорит мне, что верительные грамоты неправильные.

Какая-то идея, из которого он может переходить?

6
задан 04.04.2016, 03:40
2 ответа

Проблема находится, в котором git он не может находить твой ключ, так как ты помещаешь ему имя, которое ssh не ищет. Когда ты присоединяешься в сервер используя ssh, твой персональный компьютер посылает ему публичные ключи, которые он считает доступными (что ищет в каталоге ~/.ssh с общепринятыми именами (id_rsa.pub, id_dsa.pub, и т.д.), не моги знать другие которые файлы это публичные ключи.

Чтобы находить хорошо этот тип ошибок, что договаривается, состоит в том, чтобы пробовать связь ssh на уровне verbose высокое добро (чтобы видеть, что является тем, что он бьет козырем)

ssh -vvv 192.168.1.33:10022

Git lab не будет давать тебе accesso shell, также, но если tenés ошибка удостоверения ты сможешь видеть деталь (как например в этом случае, что ты представляешь публичные ключи).

Чтобы решать проблему то, что tenés, что делать значит позволять, что ssh он нашел твой ключ, уже используя общее имя для этого (и правильный каталог) или же копируя твой ключ, лишенный в ~/.ssh/id_rsa и публичная в ~/.ssh/id_rsa.pub или добавляя этот ключ к агенту ssh (ssh-agent) с командой: ssh-add git_rsa.

Update

Как кажется, также возможно показывать имена добавочного файла, который ssh будет искать добавляя в файле ~/.ssh/config (что может быть создан в эффект):

Host *
  IdentityFile ~/.ssh/git_rsa

Таким образом, не необходимо использовать ssh-agent (и следовательно также он не используется ssh-add)

5
ответ дан 24.11.2019, 14:38
  • 1
    Отнесясь друг к другу о сервере QNAP я не располагаю командой ssh-add – Pedro 09.04.2016, 13:21
  • 2
    Помести ему тогда имя est и # 225; ndar. ssh-add tendr и # 225; s, что использовать это, если ты используешь alg и # 250; n имя не est и # 225; ndar. – jjmerelo 09.04.2016, 14:23
  • 3
    #191; В qu и # 233; ты относишься с именем est и # 225; ndar? – Pedro 09.04.2016, 19:52
  • 4
    @Pedro список быть и # 237; в: " ~/.ssh/id_rsa, ~/.ssh/id_dsa, ~/.ssh/id_ecdsa, ~/.ssh/id_ed25519 and ~/.ssh/identity. и quot; seg и # 250; n учебник. – eloyesp 14.04.2016, 19:26
  • 5
    @Pedro, что является сервером QNAP? или скорее, команда ssh-add имей это и # 233; s, который использовать на твоем локальном компьютере. Если не имей, и # 233; s ssh-add имей и # 233; s, что: или использовать одно из имен est и # 225; ndar (для того, чтобы ssh он нашел твой ключ f и # 225; cil) или конфигурировать git для того, чтобы он использовал configuraci и # 243; n espec и # 237; fica ssh или конфигурировать ssh для того, чтобы он нашел твой ключ. (man git-config и man ssh_config). – eloyesp 15.04.2016, 03:27

Кажется, что все правильно продолжая документацию GitLab http://doc.gitlab.com/ce/ssh/README.html, поэтому, он рекомендовал бы тебе проверять тех, которые у него есть следующие разрешения в следующих маршрутах:

  • 0711 в / home / $ TU_USUARIO
  • 0700 в / home / $ TU_USUARIO/.ssh
  • 0600 в / home / $ TU_USUARIO/.ssh/authorized_keys

Кроме того, проверь, что в файле конфигурации ssh, помещенного в ~/.ssh/config он ищет публичные ключи в маршруте, где ты добавил их.

0
ответ дан 24.11.2019, 14:38
  • 1
    Проверенный, в принципе кажется, что все разрешения правильны... – Pedro 09.04.2016, 13:22

Теги

Похожие вопросы