Что такое SSH?

SSH - это защищенный сетевой протокол для подключения и управления удаленной операционной системой. Все данные передаются в зашифрованном виде.

 

Как подключиться по SHH

Для подключения к удаленному серверу необходима специальная программа. В *nix-подобных операционных системах подобная программа установлена по умолчанию. Для Windows необходимо установить стороннюю программу, например, скачать Putty. После установки программы запустите Putty (putty.exe).

В поле «Host Name (or IP address)» введите IP адрес удаленного сервера и нажмите кнопку «Open». Обратите внимание, что «Connection type» (Тип подключения) должен быть установлен SSH. Откроется SSH консоль, где необходимо ввести имя пользователя и пароль.При вводе пароля никакие символы не будут отображаться.

Если авторизация пройдет успешно, то вы получите доступ к управлению удаленным сервером.

 

Создание и настройка SSH ключей

Ключи SSH позволяют идентифицировать вас при подключении к серверу SSH.

Создание SSH ключей через PuTTYgen

Для создания ключей через установленную программу Putty запустите PuTTYgen (puttygen.exe).

В разделе «Type of key to generate» выберите тип ключа для генерации, например, SSH-2 RSA и нажмите «Generate».

Чтобы начался процесс создания ключей  на основе генерации случайных значений,  и индикатор принялся двигаться вперед, необходимо подвигать курсором мышки на пустом месте.

После создания ключей скопируйте открытый ключ (public key) и указать пароль-фразу для ключа (при желании, можно не указывать). Сохраните закрытый ключ (privat key) нажав «Save private key».

Открытый ключ добавляется в файл ~/.ssh /authorized_keys на сервере. Для добавления закрытого ключа запустите Pageant (pageant.exe), нажмите «Add Key» и выберите сохраненный файл с закрытым ключом.

 

После этого авторизуйтесь в PuTTY.

Создание SSH ключей через консоль

  1. Необходимо запустить Git Bash в нужном каталоге и ввести в консоле команду:

ssh-keygen -t rsa -C "ваш email"
  1. Появится сообщений “Enter file in which to save the key” (Введите файл, в котором сохранить ключ). Введите id_rsa и нажмите «Enter».

  2. На следующем этапе вас попросят ввести пароль, который будет необходимо каждый раз вводить при соединении с Git (по желанию, вы можете не использовать пароль, просто нажав «Enter»).

  3. Скопируйте созданные файлы “id_rsa” и “id_rsa.pub” в каталог C:\Users\Username\.ssh. Если этого каталога еще нет, то создайте ее с помощью команды:

mkdir ~/.ssh
  1. Перейдите на страницу настроек своего аккаунта на GitHub: https://github.com/account

  1. В разделе “SSH Public Keys” нажмите “New SSH Key” добавьте публичный ключ из файла “id_rsa.pub”.

  1. Чтобы проверить правильность ключа, введите в Git Bash команду:

ssh git@github.com

 

Отправить код в репозиторий по SSH

Вы можете поместить код в git-репозиторий на удаленном ssh-сервере, используя git. Чтобы просмотреть уже настроенные удаленные серверы, нужно выполнить команду:  

git remote

Для получение и отправки изменений в репозиторий нужно использовать следующих формат адреса:

ssh://user@server/project.git

Если экземпляр репозитория находится в  /opt/project то:

ssh://user@server/opt/project

Поместить код в репозиторий можно с помощью команды:

git push ssh://user@server/opt/project master

Либо:

git push server master