SSH. Описание команд

    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 - порт сервера, по умолчанию: 22
    • IdentityFile - файл приватного ключа, если используется авторизацию по ключу

    Создание ключа

    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