Настройка TortoiseSVN (в Windows) для туннеля SSH к серверу Bluehost Subversion
У меня было много проблем с его настройкой, поэтому я надеюсь, что это может быть полезным для других. Пожалуйста, исправьте все ошибки, которые вы найдете в моих инструкциях.
1. Запросить доступ по SSH
Вам понадобится SSH-доступ, поэтому убедитесь, что вы запрашиваете его через опцию «SSH / Shell Access» на вашем CPanel.
2. Загрузите клиент SSH.
Вам также понадобится SSH-клиент, поэтому загрузите последнюю версию PuTTY. Вам также понадобится FTP-клиент; Я рекомендую FileZilla.
3. Установите Subversion.
Используйте PuTTY для входа на свой сервер и установки Subversion, используя следующие инструкции (вы можете продолжить и обновить номера версий): http://www.bluehostforum.com/showthread.php?12099-Setting-up-Subversion-on-Bluehost
Убедитесь, что вы правильно установили Subversion, создав репозиторий по адресу /home/username/svn
и импортируя в него проект, используя этот учебник:
http://svnbook.red-bean.com/en/1.5/svn.intro.quickstart.html
4. Создайте пару ключей аутентификации SSH.
Bluehost не позволит нам туннелировать напрямую через SSH (читать далее), поэтому нам нужно настроить некоторые ключи аутентификации.
Вы можете сделать это через SSH, используя этот учебник: http://tortoisesvn.net/ssh_howto
Или вы можете просто войти в свою CPanel и создать SSH-ключ через графический интерфейс «SSH / Shell Access». В любом случае убедитесь, что вы авторизуете ключ (вручную добавив его в authorized_keys
как в приведенном выше руководстве или через графический интерфейс CPanel).
Не забудьте указать кодовую фразу для вашего ключа. Во многих руководствах рекомендуется оставлять это поле пустым, чтобы TortoiseSVN не запрашивал пароль. Однако мы можем настроить Pageant для той же цели, не создавая небезопасный ключ SSH.
5. Преобразуйте закрытый ключ.
После шага 5 у вас должен быть файл закрытого ключа (например, id_dsa
) и файл открытого ключа (например, id_dsa.pub
). Загрузите файл закрытого ключа на свой рабочий стол.
Скачать PuTTYgen.
Откройте PuTTYgen, перейдите в Конверсии> Импортировать ключ и найдите файл закрытого ключа на рабочем столе. Введите кодовую фразу своего закрытого ключа и нажмите «Сохранить закрытый ключ». Сохраните преобразованный ключ PuTTY в место, которое вы запомните (и не изменится).
6. Создайте сеанс PuTTY.
Откройте PuTTY и введите следующие поля:
Сеанс> Имя хоста: (ваше имя хоста) Сеанс> Имя сохраненных сеансов: Соединение "Subversion"> SSH> Auth> Файл закрытого ключа для аутентификации: (Ваш преобразованный закрытый ключ)
Вернитесь к экрану «Сессия» и нажмите «Сохранить» рядом с «Сохраненные сеансы», чтобы сохранить эту информацию.
Теперь, когда сеанс создан, выберите «Subversion» в «Сохраненные сеансы», нажмите «Загрузить», а затем нажмите «Открыть». Вам будет предложено ввести ваше имя пользователя и парольную фразу, после чего вы должны получить доступ к своему серверу.
7. Настройте сеанс PuTTY в Pageant.
Скачать Конкурс.
Откройте Pageant, и он должен появиться на панели задач. Щелкните правой кнопкой мыши значок Pageant и выберите «Добавить ключ». Найдите файл с секретным ключом и введите свою кодовую фразу.
Снова откройте PuTTY и повторно подключитесь, используя сеанс «Subversion». Вам будет предложено ввести ваше имя пользователя, но вам больше не придется вводить кодовую фразу.
8. Добавьте команду svnserve Path к авторизованным ключам.
найти authorized_keys
в /home/username/.ssh/
и измените этот файл так, чтобы перед вашим ключом появилось следующее (Pageant может заблокировать ваш FTP-клиент, поэтому вам может потребоваться его закрыть):
command="/home/username/bin/svnserve -t" (KEY NAME) (KEY)
(Источник: http://www.mikespicer.net/wp/?p=41)
9. Подключите TortoiseSVN.
Загрузить и установить TortoiseSVN.
Откройте Pageant и снова добавьте свой закрытый ключ.
Щелкните где-нибудь правой кнопкой мыши, выберите «TortoiseSVN> RepoBrowser», и появится диалоговое окно. Введите «svn + ssh: // имя пользователя @ Subversion / home / bin / svn».
Теперь вы должны увидеть свой репозиторий (наконец-то!).
Исправление проблем
Есть еще ряд вещей, которые могут пойти не так:
Ты можешь иметь mesg y
включен в вашем .bashsrc
: http://kb.yarmakconsulting.com/2009/05/network-connection-closed-unexpectedly.html
Сессия по умолчанию в PuTTY может все испортить: http://tortoisesvn.tigris.org/faq.html (внизу)
Если что-то по-прежнему не работает, скачайте и установите SilkSVN. Это позволит вам запускать команды Subversion прямо из командной строки MS-DOS.
Скачать Plink также.
Найдите свой локальный файл конфигурации Subversion по адресу: C: \ Users \ ИМЯ_ЛОКАЛЬНОГО_ПОЛЬЗОВАТЕЛЯ \ AppData \ Roaming \ Subversion \ config (источник), и добавьте к [tunnels]
раздел:
ssh = c:\\path\\to\\plink.exe
Теперь откройте командную строку и попробуйте следующую команду (убедитесь, что Pageant запущен с вашим ключом):
svn+ssh://username@Subversion/home/username/svn
Теперь вы будете получать более подробные сообщения об ошибках, чем через TortoiseSVN.