Мой сервер Nginx выступает в качестве прокси-сервера для сервера Gitlab, проблема в том, что я пытаюсь «**git clone [email protected]:username/project.git**
« Я не могу клонировать проект [это не туннелирование от Сервер Nginx на сервер Gitlab]Git clone через прокси Nginx для сервера Gitlab не работает
Когда я обновляю файл/etc/hosts моей локальной системы с IP-адресом сервера Gitlab, он отлично клонирует без пароля [я обновил свой профиль с помощью открытого ключа SSH на Gitlab].
Итак, я пришел к выводу, что я должен обновить свою конфигурацию Nginx с помощью правил, которые могут туннелировать SSH-связь с любой клиентской системы на сервер Gitlab через сервер Nginx.
Попробовал код на этом Link путем внесения изменений как следует:
upstream gitlab {
server 192.168.61.102:22;
}
server {
listen 22;
server_name gitlab.example.com;
location/{
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $http_host;
proxy_redirect off;
proxy_pass http://gitlab;
}
}
, но он не работает. Было бы здорово, если бы кто-то помог мне в настройке правил, чтобы заставить его работать.
Примечание: В приведенном выше коде 192.168.61.102 является IP-адрес моего сервера gitlab, мой сервер Nginx находится в 192.168.61.101
Очень информативный с приятными подробностями, спасибо, что U даст ему попытку и результат после выполнения, но затем, какова цель/usecase кода Nginx (Источник: [link] (https://gist.github.com/fnando/ 1101211)) Я упомянул в вопросе, не помогает ли мне в моем сценарии? –
Код Nginx используется для перенаправления HTTP-запросов на ваш хост Gitlab, но у вас есть возможность прослушивать порт 22, который является SSH-портом. Он должен прослушивать порт 80. – BrokenBinary
Тогда код, упомянутый в этой ссылке, с заголовком «Конфигурация Nginx для туннеля SSH» дает неправильную идею? –