SSH -- основное средство для удалённого управления серверами. Также позволяет пробрасывать TCP соединения и передавать файлы.
Подключение к серверу
ssh 192.168.1.1
Конфигурация клиента
SSH клиент может работать без файла конфигурации и получать все необходимые параметры при старте. Но удобней создать файл конфигурации: ~/.ssh/config
Host 192.168.1.1
User root
Port 222
IdentityFile ~/.ssh/server_ed25519
192.168.1.1
- адрес сервераUser
- имя пользователяPort
- порт сервера, по умолчанию: 22IdentityFile
- файл приватного ключа, если используется авторизацию по ключу
Создание ключа
ssh-keygen -t ed25519 -f ~/.ssh/server_ed25519
ed25519
- выбор типа шифрования, Ed25519 - оптимальный выбор~/.ssh/server_ed25519
- путь к файлу с ключом, там же будет создан публичный ключ:~/.ssh/server_ed25519.pub
После запуска команда попросит ввести пароль - дополнительный уровень безопасности, этот пароль необходимо указывать при подключении к серверу.
Публичный ключ необходимо добавить на сервере в файл ~/.ssh/authorized_keys
. В файле может быть несколько ключей.
Копирование файлов
Для копирования файлов на сервер используется команда:
scp LOCAL 192.168.1.1:REMOTE
LOCAL
- путь к файлу на локальном компьютере192.168.1.1
- адрес сервераREMOTE
- абсолютный путь к файлу на сервере
Проброс порта
С сервера на локальный компьютер
ssh -L 4000:127.0.0.1:8000 192.168.1.1
4000
- порт на локальном компьютере127.0.0.1:8000
- адрес и порт на удалённом компьютере-fNT
- запустить SSH-клиента в фоне
Например в локальной сети удалённого сервера есть IP-камера с адресом потока: rtsp://admin:123@10.0.0.101:554/stream1
Для проброса потока на локальный компьютер:
ssh -fNT -L 10554:10.0.0.101:554 192.168.1.1
После запуска поток можно открыть в VLC: rtsp://admin:123@127.0.0.1:10554/stream1