раздел 03

Удобство и безопасность

Ключи настроены, вход без пароля работает. Теперь сделаем это удобным в повседневной работе и закроем сервер по-настоящему.

Короткий алиас вместо длинной команды

Каждый раз писать ssh user@IP неудобно, особенно если адрес длинный, а серверов несколько. Решение - файл ~/.ssh/config на своём компьютере. В нём задают короткие имена-алиасы для серверов.

Пример содержимого файла ~/.ssh/config:

Host myserver
    HostName 203.0.113.10
    User deploy
    Port 22

После этого вместо длинной команды достаточно набрать короткое имя:

ssh myserver

Host - это короткое имя, которое придумываешь сам. HostName - реальный адрес сервера, User - пользователь, Port - порт (по умолчанию 22). Серверов в файле может быть сколько угодно - каждый своим блоком Host.

SSH-агент

SSH-агент - это программа, которая держит твой приватный ключ в памяти, пока компьютер включён. Если ты задал пароль на сам ключ (на шаге создания), агент запоминает его один раз за сессию, и дальше каждое подключение не переспрашивает. Удобно: безопасность пароля на ключе остаётся, а вводить его постоянно не нужно.

Закрыть сервер по-настоящему

Отключить вход по паролю
После настройки ключей вход по паролю на сервере выключают. Тогда подобрать пароль уже невозможно - его просто нет.
Беречь приватный ключ
Приватный ключ не копируют в облака и репозитории и не пересылают. Утёк ключ - считай, отдал доступ к серверу.

Логика простая: пока вход по паролю включён, боты могут его перебирать, даже если ты сам ходишь по ключу. Поэтому после того как ключ заработал, вход по паролю отключают - и единственным способом зайти остаётся твой приватный ключ.

Передача файлов

По SSH можно не только заходить на сервер, но и копировать файлы туда-обратно. Самый простой способ - команда scp (она использует то же подключение и те же ключи).

Скопировать файл со своего компьютера на сервер:

scp file.txt user@IP:/home/user/

Скопировать файл с сервера к себе:

scp user@IP:/home/user/file.txt .

Для более удобной работы с файлами по тому же протоколу есть SFTP - его поддерживают многие файловые менеджеры.