SSH (Secure SHell - защищенная оболочка) — сетевой протокол прикладного уровня, предназначеный для безопасного удаленного доступа к UNIX-системам. Данный протокол эффективен тем, что шифрует всю передаваемую информацию по сети. По умолчанию, используется 22-й порт. В основном он нужен для удаленного управления данными пользователя на сервере, запуска служебных команд, работы в консольном режиме с базами данных.
Эта служба была создана в качестве замены не зашифрованному Telnet и использует криптографические техники, чтобы обеспечить, что всё сообщение между сервером и пользователем было зашифровано.
Как использовать
Пользователи Windows могут воспользоваться SSH-клиентом вроде PuTTy.
Пользователи Linux или MacOS могут использовать SSH напрямую из окна терминала.
SSH команда состоит из 3 отдельных частей:
ssh {user}@{host}
Часть с SSH даст системе знать, что вы хотите открыть SSH соединение. {user} даст системе сведения об аккаунте, к которому ты хочешь подключиться. К примеру, ты захочешь получить доступ в качестве root пользователя, который фактически является синонимом для администратора системы с полными правами на изменение любых данных в системе. {host} означает компьютер, к которому ты хочешь подключиться. Это может быть IP адрес или доменное имя (например www.домен.xyz)
Когда ты нажмёшь "Enter", вылезет окно с просьбой ввести пароль от запрошенного аккаунта. После ввода пароля, не последует никаких сообщений, однако, твой пароль будет передан и нужно нажать кнопку "Enter" вновь. Если твой пароль правильный, то тебя встретит окно терминала удаленного управления.
Базовые SSH команды
ls
- Показать содержимое каталога (список названий файлов);cd
- Сменить каталог (перейти в другой);mkdir
- Создать новую папку (каталог);touch
- Создать новый файл;rm
- Удалить файл;cat
- Показать содержимое файла;pwd
- Показать текущий каталог (полный путь к этому каталогу);cp
- Копировать файл/папку;mv
- Переместить файл/папку;grep
- Поиск конкретной фразы в файле;find
- Поиск файлов и папок;vi
\nano
- Текстовые редакторы;history
- Показать 50 последних использованных команд;clear
- Очистить окно терминала.
Как видишь, это просто базовые команды терминала.
Преимущества
Использование SSH подключения имеет ряд преимуществ:
Безопасная работа на удаленном сервере с использованием командной оболочки;
Использование разных алгоритмов шифрования (симметричного, асимметричного и хеширования);
Возможность безопасного использования любого сетевого протокола, что позволяет передавать по защищенному каналу файлы любого размера.
Главным преимуществом SSH является использование шифрования для защиты передачи данных между хостом и клиентом. Хост — это удаленный сервер к которому ты хочешь получить доступ, тогда как клиент — это компьютер с которого ты пытаешься получить доступ к хосту.
Недостатки
Использование SSH подключения имеет свой недостаток:
Протокол SSH не имеет средств защиты от действий злоумышленника, получившего root-доступ. Одной из мер предосторожности является ограничение использования режима root без острой необходимости
Технологий шифрования
Существует три различных технологий шифрования, используемых SSH:
Симметричное шифрование;
Асимметричное шифрование;
Хеширование.
Симметричное шифрование
Симметричное шифрование — это форма шифрования, где секретный ключ используется для шифрования и дешифровки сообщения как клиентом, так и хостом. Стоит отметить, что любой клиент имеющий ключ, может дешифровать передаваемое сообщение.
Асимметричное шифрование
В отличии от симметричного шифрования, асимметричное использует два отдельных ключа для шифрования и дешифровки. Эти два ключа также известны как приватный и публичный ключи. Вместе они формируют пару публичных-приватных ключей.
Хеширование
Одностороннее хеширование — это еще одна форма криптографии, которая используется в SSH. Такого рода хеширование отличается от двух упомянутых выше тем, что оно не предназначено для дешифровки. Оно создает уникальное значение фиксированной длины для каждого ввода, которое не показывает никакого общего поведения для его раскрытия. Это делает его практически невозможным для обратного преобразования.
Заключение
SSH (Secure SHell - защищенная оболочка) - сетевой протокол прикладного уровня, предназначеный для безопасного удаленного доступа к UNIX-системам.
Пользователи Windows могут воспользоваться SSH-клиентом вроде PuTTy. Пользователи Linux или MacOS могут использовать SSH напрямую из окна терминала.
Существует три различных технологий шифрования, используемых SSH:
Симметричное шифрование;
Асимметричное шифрование;
Хеширование.
Использование SSH подключения имеет ряд преимуществ:
Безопасная работа на удаленном сервере с использованием командной оболочки;
Использование разных алгоритмов шифрования (симметричного, асимметричного и хеширования);
Возможность безопасного использования любого сетевого протокола, что позволяет передавать по защищенному каналу файлы любого размера.
Использование SSH подключения имеет свой недостаток:
Протокол SSH не имеет средств защиты от действий злоумышленника, получившего root-доступ. Одной из мер предосторожности является ограничение использования режима root без острой необходимости.