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

Материал из K.Wiki
Перейти к: навигация, поиск
(Как сделать так, чтобы пароль не нужно было вводить при подключении?)
(Работа с ключами)
Строка 42: Строка 42:
 
=== Как узнать, к каким ключам пароли сохранены? ===
 
=== Как узнать, к каким ключам пароли сохранены? ===
 
  ssh-add -l
 
  ssh-add -l
 +
 +
=== Как передать публичный ключ на сервер? ===
 +
Выполнить, заменив подходящими значениями <tt>{имя пользователя}</tt>, <tt>{адрес сервера}</tt> и <tt>{путь к файлу публичного ключа}</tt>:
 +
ssh-copy-id {имя пользователя}@{адрес сервера} -i {путь к файлу публичного ключа}
 +
Содержимое файла ключа допишется в файл <tt>~/.ssh/authorized_keys</tt> на сервере.
  
 
== Работа с файлами ==
 
== Работа с файлами ==

Версия 01:52, 22 декабря 2015

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

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

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

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

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

  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 {имя пользователя}@{адрес сервера}:{путь к файлу на сервере} {путь к директории на клиенте}