Удобная настройка своего клиента
Используем config
Удобно подключаться через конфиги, вместо того чтобы лепить алиасы. Например ssh vps-dev
Также можно указывать сразу туннели
Host vps-dev
HostName 185.174.136.189
User afagorn
IdentityFile ~/.ssh/id_vps_dev
IdentitiesOnly yes
# Прямой туннель: localhost:8888 → VPS:8080 (nginx/docker)
LocalForward 8888 localhost:8080
# Обратный туннель: VPS:9003 → localhost:9003 (Xdebug в PHPStorm)
RemoteForward 0.0.0.0:9003 localhost:9003
GatewayPorts yes
#Увеличиваем время пинга, чтобы сенрвер не закрывал соединение
Host *
ServerAliveInterval 300
ServerAliveCountMax 2
Авторизация
Создать ключ и закинуть его на сервер
Создаем ключ
Не забываем называть файлы правильно, например, id_vps_dev. При этом путь до файла
ed25519 является самым оптимальным вариантом шифрования
ssh-keygen -t ed25519 -C "vps-dev"
Но если ed25519 не поддерживается, то создаем старый добрый rsa
ssh-keygen -t rsa -b 4096 -C "vps-dev"
Закидываем на сервак
Отправка через ssh-copy-id
Можно указать напрямую адрес для ssh
ssh-copy-id -i ~/.ssh/id_vps_dev.pub root@192.168.1.10
А можно указать адрес из config
ssh-copy-id -i ~/.ssh/id_vps_dev.pub vps-dev
Ручная отправка
Копируем ключик .pub и ручками его вставляем в
ED25519 vs RSA
ED25519 современный и быстрый формат, который не требует длины ключа. При этом является защищеным на уровне RSA 3000 - 4000 бит. Но он не поддерживается в системах SSH до 2014 года. Если нужна совместимость, то использовать надо RSA
Для RSA необходима для в 4096 бит, так как 2048 уже считается недостаточной защищенностью