Предположения системного администрирования приведены в конце этого поста.
- скачать и установить putty, plink, театрализованное представление и puttygen отсюда
- если у вас нет ключа ssh, запустите puttygen и:
- если уже есть ключ, сгенерированный Linux:
- выберите «загрузить существующий файл закрытого ключа»
- выберите соответствующий файл (необходимо изменить фильтр расширения файла)
- вставить пароль
- выберите «сохранить личный ключ»
- иначе,
- выберите «генерировать ключ»
- двигать мышь случайно
- выберите «сохранить личный ключ»
- выберите «сохранить открытый ключ»
- если уже есть ключ, сгенерированный Linux:
- отправьте системному ключу вашего системного администратора, а не секретный ключ! (системные администраторы: читайте ниже)
- Запустите командную строку Windows («Пуск»> «Выполнить» и введите «cmd») и запустите «pageant.exe».
- щелкните правой кнопкой мыши значок в панели значков, «добавить ключ»
- выберите свой личный ключ, который вы сохранили ранее, введите пароль
замазка
- в hostname вставьте: IP-адрес вашего сервера репозитория
- сохранить сессию как '
remote-dev
' (любое имя в порядке) - перейти к подключению> прокси
- выберите «локальный» для типа прокси
- имя прокси-сервера: DNS-запись вашего брандмауэра или IP-адрес
- порт:
22
(или любой другой подходящий ssh в брандмауэр) - username:
hg
(или любой другой пользователь на брандмауэре имеет ваш открытый ключ ssh в .ssh / authorized_files) - в 'команде telnet или локальном прокси' замените содержимое на '
FULLPATH\plink.exe -v -nc %host:%port %user@%proxyhost
' (обратите внимание, используйте полный путь к исполняемому файлу plink.exe. например, c: \ plink.exe) - перейти к соединению> данные
- автоматический вход в систему имя пользователя: hg (или любой другой пользователь на сервере хранилища имеет запущенный hg-шлюз)
- вернуться к «сессии»
- нажмите «сохранить», чтобы сохранить сеанс
- нажмите «открыть»
вы должны увидеть что-то вроде
Using username "hg". Authenticating with public key "imported-openssh-key" from agent Welcome to XXX code repository server! Your SSH access is restricted by hg-gateway. Summary of repos you have access to:
Теперь скачайте и установите Tortoisehg
- запустить рабочий стол с черепахой
- файл> хранилище клонов
- source: ssh: //
remote-dev
/repo-name
(remote-dev должен соответствовать тому, что вы назвали в сеансе putty!) - пункт назначения: выберите пункт назначения
- нажмите «клон»
- вот и все.
Чтобы разрешить пользователю доступ к удаленному репо:
- добавить открытый ключ ssh
.ssh/authorized_keys
пользователяhg
на брандмауэре - используйте,
hg-gateway
чтобы добавить ключ этого пользователя кhg
пользователю на сервере
Примечание: замазка имеет тенденцию генерировать ключи в формате .ppk; они должны быть преобразованы в однострочный ключ ssh. Google твой друг здесь.
Предположения:
- на брандмауэре есть пользователь с именем '
hg
',.ssh/autorhized_keys
файл которого содержит открытые ключи всех пользователей, которые должны получить доступ к хранилищу файл / etc / ssh / sshd_config брандмауэра содержит строку, похожую на:
Match Group dev ForceCommand nc -q0 reposerver_ip 22
так что пользователь не может указать, к каким хостам подключаться. Пользователь '
hg
' очевидно принадлежит к группе Unix 'dev
'.