Настройка доступа по SSH без пароля
Перед настройкой Subversion или Dreamweaver для SVN+SSH создайте пару ключей RSA и настройте открытый ключ на сервере. Эта пара «открытый/закрытый ключ» используется для проверки подлинности на сервере вместо хранения и передачи паролей в виде обычного текста. (Можно настроить SSH-сервер таким образом, чтобы он не использовал пары ключей; тем не менее, компания Adobe не рекомендует делать это из-за отсутствия надлежащей защиты).
Чтобы настроить ключи RSA, создайте пару «открытый/закрытый ключ RSA» на клиентском компьютере. Поместите открытый ключ на сервер, а затем авторизируйте его на сервере. Adobe также рекомендует протестировать подключение SSH, чтобы убедиться в том, что оно настроено правильно.
Примечание. Для выполнения этих действий требуется доступ к клиентскому компьютеру (то есть к тому компьютеру, с которого устанавливается соединение). Для выполнения этих действий также требуется доступ к серверу (например, напрямую или через SSH/FTP). При использовании Windows необходим доступ к клиенту SSH (например, TortoiseSVN) и приложению генератора ключей RSA (например, PuTTYgen). Mac OS поставляется с клиентом SSH и генератором ключей.
Создание ключей RSA в Mac OS
Выполните следующие шаги на клиентском компьютере:
-
Откройте окно терминала.
-
Введите следующую команду и нажмите клавишу Enter:
ssh-keygen -t rsa -
Вам будет предложено сохранить ключ, нажмите клавишу Enter, чтобы выбрать расположение по умолчанию.
-
(Необязательно) Введите кодовую фразу для ключа, а затем нажмите клавишу Enter. Если вы ввели кодовую фразу, введите ее еще раз для подтверждения и нажмите клавишу Return/Enter.
Появится подтверждающее сообщение о том, что закрытый и открытый ключи были сохранены, включая их расположение и имена.
-
Чтобы скопировать открытый ключ на сервер, введите следующую команду, заменяя AccountName иServerName на соответствующие значения:
scp .ssh/id_rsa.pub AccountName@ServerName:~/temp_rsa.pub -
Подключитесь к серверу через SSH. Введите следующую команду, заменяя AccountName и ServerName на соответствующие значения:
ssh -l AccountName@ServerName -
Введите пароль в соответствующем окне входа.
Примечание. Если вы можете войти в систему без запроса на ввод пароля, это означает, что ваш компьютер/учетная запись уже авторизированы на сервере. Пропустите следующий шаг и перейдите непосредственно к пункту Протестируйте подключение SSH ниже. -
Перейдите к пункту Настройка ключа на сервере.
Создание ключей RSA в Windows
Выполните следующие шаги на клиентском компьютере:
-
Откройте генератор ключей RSA (например, PuTTYgen).
-
Создайте пару ключей RSA.
-
Сохраните закрытый ключ и открытый ключ. В описании остальных шагов предполагается, что используются имена ключей private_key (закрытый ключ) и public_key (открытый ключ) соответственно.
-
Поместите свой public_key под именем temp_rsa.pub в каталог ~/ на вашем сервере (например, напрямую или через SSH/FTP).
-
Подключитесь к серверу через SSH. Если вы используете, например, TortoiseSVN, введите следующую команду, заменяя AccountName и ServerName на соответствующие значения:
tortoiseplink AccountName@ServerName -
Введите пароль в соответствующем окне входа.
Примечание. Если вы можете войти в систему без запроса на ввод пароля, это означает, что ваш компьютер/учетная запись уже авторизированы на сервере. Пропустите следующий шаг и перейдите непосредственно к пункту Протестируйте подключение SSH ниже. -
Перейдите к пункту Настройка ключа на сервере.
Настройка ключа на сервере
Выполните следующие действия на сервере (например, напрямую или через SSH/FTP):
-
Убедитесь, что папка .ssh существует на сервере. Введите следующую команду и нажмите клавишу Enter:
ls -al ~/.ssh -
Выполните одно из следующих действий:
- Если результаты выполнения команды ls свидетельствуют о том, что данная папка не существует, создайте ее, а затем авторизируйте ключ на сервере. Введите следующие команды и нажмите клавишу Enter после каждой из них:
mkdir ~/.ssh
mv ~/temp_rsa.pub ~/.ssh/authorized_keys
- Если папка существует, добавьте ключ к списку авторизации сервера. Введите следующие команды и нажмите клавишу Enter после каждой из них:
cat ~/.ssh/authorized_keys ~/temp_rsa.pub > temp_keys
mv temp_keys ~/.ssh/authorized_keys
- Если результаты выполнения команды ls свидетельствуют о том, что данная папка не существует, создайте ее, а затем авторизируйте ключ на сервере. Введите следующие команды и нажмите клавишу Enter после каждой из них:
Проверка подключения SSH
После завершения описанных выше действий проверьте возможность подключения к серверу через SSH без отображения запрос на ввод пароля.
Если вы можете подключиться к серверу, но при этом по-прежнему отображается запрос на ввод пароля, повторите описанные выше действия на сервере. Попробуйте начать сначала. Создайте пару ключей на клиенте, а затем повторите остальные действия.
Примечание. При создании ключей не забудьте указать корректное битовое значение для вашего сервера. Стандартным является значение 2048 бит. Уточните этот момент у вашей хостинговой компании, если вы не уверены в правильности ваших данных.
Если вам по-прежнему не удается подключиться без отображения запроса на ввод пароля, см. документацию по OpenSSH или обратитесь в вашу хостинговую компанию за дальнейшей помощью.
Настройка Subversion для использования SSH
Чтобы настроить Subversion для использования SSH, добавьте путь к клиенту SSH и свою регистрационную информацию к файлу конфигурации Subversion.
Примечание. Приведенная информация предполагает, что пользователи Windows используют TortoiseSVN, а пользователи Mac – встроенный клиент SSH в Mac OS.
Местоположение файла конфигурации Subversion
Для выполнения этих действий необходимо сначала открыть файл конфигурации Subversion для редактирования. Файл конфигурации находится в одной из следующих папок:
- Windows 7 и Vista
C:\Users\[имя пользователя]\AppData\Roaming\Subversion\config - Windows XP
C:\Documents and Settings\[имя пользователя]\Application Data\Subversion\config - Mac OS X
/Users/[имя пользователя]/.subversion/config
Настройка Subversion в Mac OS
-
В «Терминале» найдите папку .subversion в вашей пользовательской папке, как описано выше. (Выберите «Переход» > «Переход к папке» в Finder или используйте команду ls -al ~/.subversion в «Терминале».)
-
Путь к SSH обычно «/usr/bin/ssh». Если вы не уверены в правильности данных, введите which ssh в «Терминале».
-
Откройте файл конфигурации Subversion для редактирования с помощью текстового редактора (например, nano, pico и т. д.).
Например, введите nano ~/.subversion/config
в «Терминале». -
Введите следующее выражение в разделе туннелей (под заголовком [tunnels]):
ssh = $SVN_SSH /usr/bin/ssh
Примечание. Для использования проверки подлинности на основе ключей добавьте -i [путь к ключу]. Например, ssh = $SVN_SSH /usr/bin/ssh -i [путь к ключу]
Также в этот путь можно ввести имя пользователя и пароль в этот путь, добавив -l [имя пользователя] -pw [пароль]. Этот метод является небезопасным, поэтому компания Adobe не рекомендует использовать его.
-
Сохраните и закройте файл конфигурации.
Настройка Subversion в Windows
-
В проводнике Windows найдите папку Subversion в вашей пользовательской папке, как описано выше.
-
Откройте файл в редакторе простого текста, например, в «Блокноте».
-
В разделе «[tunnels]» укажите, где расположен SSH-клиент. Его расположение зависит от того, где он был установлен.
Откройте файл и введите следующий код в разделе туннелей (под заголовком [tunnels]):
ssh = $SVN_SSH C:/[путь к клиенту SSH]/tortoiseplink.exe
Примечание. Для использования проверки подлинности на основе ключей добавьте -i[путь к ключу]. Например, ssh = $SVN_SSH C:/[путь к клиенту SSH]/tortoiseplink.exe -i
[путь к ключу]
Также в этот путь можно ввести имя пользователя и пароль в этот путь, добавив -l [имя пользователя] -pw [пароль]. Этот метод является небезопасным, поэтому компания Adobe не рекомендует использовать его.
-
Сохраните и закройте файл конфигурации.
Настройка использования Subversion с SSH-сервером на вашем сайте
-
Откройте диалоговое окно «Определение веб-сайта» в Dreamweaver, а затем выберите «Управление версиями» из списка категорий.
-
Выберите «Subversion» в меню «Доступ».
-
Выберите протокол SVN+SSH.
-
Введите адрес сервера в поле «Адрес сервера».
-
Если путь к репозиторию не включен в адрес вашего сервера, в текстовом поле «Путь к репозиторию» укажите путь к репозиторию.
-
Только для Dreamweaver CS4:
-
Если ваш сервер не использует порт SSH по умолчанию (22), выберите «Не по умолчанию» и введите номер порта сервера.
-
Введите имя пользователя и пароль. Оставьте эти поля пустыми для анонимного входа в систему.
Примечание. Имя пользователя и пароль НЕ заимствуются из Dreamweaver. Единственным способом пересылки учетных данных пользователя является ввод [имя учетной записи]@[имя сервера] в поле «Имя сервера».
-
-
Нажмите кнопку «Тест», чтобы протестировать подключение.
-
Закройте диалоговое окно «Определение веб-сайта».
-
На панели «Файлы» выберите представление «Локальные файлы» или представление «Репозиторий».
-
Щелкните правой кнопкой мыши (Windows) или ctrl + щелчок (Mac OS) на корневой папке, чтобы открыть меню.
-
Выберите «Управление версиями» > «Получить последние версии», чтобы обновить список файлов.