Не удается установить SSH-соединение с Gitlab CE.
На моем сервере запущена установка Gitlab CE (CentOS 7 + Apache 2.4). В настоящее время сайт работает нормально, и я могу полностью взаимодействовать с Gitlab в браузере, однако я не могу должным образом настроить свою среду на своей оболочке через SSH, чтобы отправить свои репозитории на мой сервер.
В настоящее время, когда я пытаюсь нажать, я получаю следующую ошибку:
git@[MY_GITLAB_SUBDOMAIN]: Permission denied (publickey).
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.
Так как у меня есть собственный порт для моего SSH в целом, на моей локальной машине я сделал дополнение к моему файлу конфигурации SSH, как показано ниже:
Host gitlab
Hostname [MY_GITLAB_SUBDOMAIN]
Port [MY_CUSTOM_PORT]
User git
PreferredAuthentications publickey
IdentityFile [MY_PUBLIC_KEY]
Поэтому в текущем локальном репо, который я пытаюсь запустить, я отредактировал файл конфигурации git следующим образом:
[core]
repositoryformatversion = 0
filemode = true
bare = false
logallrefupdates = true
ignorecase = true
precomposeunicode = true
[branch "master"]
remote = origin
merge = refs/heads/master
[remote "origin"]
url = gitlab:can/[PROJECT]
fetch = +refs/heads/*:refs/remotes/origin/*
Я добавил свой открытый ключ в свой аккаунт в настройках Gitlab. Я также вручную проверил authorized_keys
файл на моем сервере для пользователя git
наряду с его разрешениями, чтобы увидеть, работает ли он нормально. Разрешения хороши (.ssh
папка: 700 & authorized_keys
: 600) и ключ там присутствует.
Что мне не хватает?
1 ответ
Благодаря этому ресурсу я смог выяснить, как установить соединение с правильным использованием псевдонима.
.SSH/config
:
Host [HOST_NAME]
HostName [GITLAB_URL]
User git
Port [CUSTOM_PORT_NUMBER]
IdentityFile ~/.ssh/[KEY_NAME]
А потом:
git remote set-url origin git@[HOST_NAME]:[GITLAB_USER]/[PROJECT_NAME].git