SSH — различия между версиями

Материал из K.Wiki
Перейти к: навигация, поиск
(Работа с ключами)
(Как сгенерировать новую пару ключей?)
Строка 6: Строка 6:
 
<ol>
 
<ol>
 
<li>
 
<li>
Выполнить команду, заменив <tt>{адрес email}</tt> своим адресом электронной почты:
+
Выполнить команду, заменив подходящим образом <tt>{комментарий}</tt> и <tt>{путь к файлу приватного ключа}</tt>:
<pre>ssh-keygen -t rsa -b 4096 -C "{адрес email}"</pre>
+
<pre>ssh-keygen -t rsa -b 4096 -f {путь к файлу приватного ключа} -C "{комментарий}"</pre>
 
</li>
 
</li>
<li>Ввести путь для файла приватного ключа.</li>
 
 
<li>Ввести пароль для доступа по ключу.</li>
 
<li>Ввести пароль для доступа по ключу.</li>
 
<li>Повторно ввести пароль для доступа по ключу.</li>
 
<li>Повторно ввести пароль для доступа по ключу.</li>

Версия 09:18, 22 декабря 2015

Работа с ключами

По-умолчанию ключи хранятся в директории ~/.ssh для Linux. Ключи разбиваются на пары, в каждой паре: публичный (.pub)и приватный (без расширения).

Как сгенерировать новую пару ключей?

  1. Выполнить команду, заменив подходящим образом {комментарий} и {путь к файлу приватного ключа}:
    ssh-keygen -t rsa -b 4096 -f {путь к файлу приватного ключа} -C "{комментарий}"
  2. Ввести пароль для доступа по ключу.
  3. Повторно ввести пароль для доступа по ключу.

Как изменить пароль для доступа по ключу?

  1. Выполнить команду:
    ssh-keygen -p
  2. Ввести путь к файлу приватного ключа.
  3. Если был задан старый пароль, ввести его.
  4. Ввести новый пароль.
  5. Повторно ввести новый пароль.

Как сохранить пароль для доступа по ключу?

Для этого нужно добавить его в ssh-agent.

  1. Убедиться, что ssh-agent запущен:
    eval "$(ssh-agent -s)"
  2. Выполнить команду, заменив {файл приватного ключа} на путь к файлу приватного ключа:
    ssh-add {файл приватного ключа}
  3. Ввести пароль.

Как узнать, к каким ключам пароли сохранены?

ssh-add -l

Как передать публичный ключ на сервер?

Выполнить, заменив подходящими значениями {имя пользователя}, {адрес сервера} и {путь к файлу публичного ключа}:

ssh-copy-id {имя пользователя}@{адрес сервера} -i {путь к файлу приватного ключа}

Содержимое файла ключа допишется в файл ~/.ssh/authorized_keys на сервере.

Работа с файлами

Как передать файл на сервер?

scp {путь к файлу на клиенте} {имя пользователя}@{адрес сервера}:{путь к директории на сервере}

Как скачать файл с сервера?

scp {имя пользователя}@{адрес сервера}:{путь к файлу на сервере} {путь к директории на клиенте}