Каково назначение сетевого протокола ssh

Что такое SSH и sFTP?

url image

SSH-протокол (от англ. Secure Shell) — криптографический сетевой протокол, предназначенный для удаленного доступа к операционной системе и осуществления безопасного удаленного управления в рамках незащищенной сети (например, через интернет).

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

Основные функции, доступные при использовании SSH-протокола:

  • Передача любых данных через защищенное SSH-соединение, включая сжатие данных для последующего шифрования.
  • X11 Forwarding — механизм, позволяющий запускать программы UNIX/Linux-сервера в виде графической оболочки, как в Windows (использовать X Window System).
  • Переадресация портов — передача шифрованного трафика между портами разных машин.

Безопасность SSH-соединения обеспечивается:

  • шифрованием данных одним из существующих алгоритмов
  • аутентификацией сервера и клиента одним из нескольких доступных методов
  • наличием дополнительных функций протокола, направленных на предупреждение различных хакерских атак

Аутентификация сервера дает защиту от:

  • взлома путем подмены IP-адресов (IP-spoofing), когда один удаленный хост посылает пакеты от имени другого удаленного хоста
  • подмены DNS-записей (DNS-spoofing), когда подменяется запись на DNS-сервере, в результате чего соединение устанавливается с хостом, который указан в подмененной записи, вместо необходимого
  • перехвата открытых паролей и других данных, передаваемых в открытом виде через установленное соединение

На сегодняшний день существуют две версии протокола SSH (SSH-1 и SSH-2), причем вторая версия усовершенствована и расширена по сравнению с первой. Например, вторая версия устойчива к атакам вида MITM («человек посередине», атака посредника). Также существуют две редакции данного протокола: открытая версия (бесплатная) и коммерческая (платная). Бесплатная версия — OpenSSH — встроена во все UNIX-подобные операционные системы в виде стандартных утилит SSH-клиента и SSH-сервера.

Коммерческая реализация SSH-протокола — SSH Communications Security — разработана одноименной организацией. Имеет небольшие отличия от бесплатной версии, такие как доступность коммерческой технической поддержки, наличие инструментов веб-управления и др. Основной набор команд и возможностей практически одинаковый у обоих продуктов.

Для ОС Windows выпущены различные SSH-клиенты и оболочки, самые распространенные из них — это бесплатные PuTTY и WinSCP . Для других операционных систем также существуют свои SSH-клиенты.

Читайте также:  Обеспечение безопасности данных в компьютерных системах и сетях

Передача данных по SSH-протоколу через небезопасную сеть

Что такое SFTP-протокол

SFTP-протокол (от англ. SSH File Transfer Protocol) – сетевой протокол прикладного уровня, предназначенный для передачи файлов и других действий с ними через имеющееся надежное соединение. Протокол был разработан как расширение SSH-2, предназначенное для операций с файлами по защищенному каналу, однако может работать и с другими протоколами, обеспечивающими безопасное соединение сервера с клиентом. Иными словами, для надежной работы через SFTP-протокол необходимо иметь установленное защищенное соединение (например, SSH), которое проводит аутентификацию клиента и сервера и устанавливает факт их надежности, поскольку сам SFTP-протокол не проводит аутентификацию и не обеспечивает безопасность.

SFTP имеет ряд преимуществ перед своими предшественниками — FTP и SCP — таких, как прерывание передачи файла, удаление, возобновление передачи, связь переданных файлов с основными атрибутами, например, меткой даты/времени, а также более высокая платформонезависимость.

SFTP-протокол реализуется через SFTP-сервер и SFTP-клиент, которые являются подсистемами OpenSSH.

Для чего используются SSH и SFTP протоколы

Чаще всего протоколы SSH и SFTP используются для удаленной работы с операционной системой или переноса большого количества файлов.

Например, клиент берет в аренду сервер или какую-то часть серверного пространства. Возникает необходимость переносить туда уже имеющиеся данные клиента, например, сайт или почтовые файлы. Провайдер должен обеспечить надежность и быстроту обмена данными с его сервером, особенно если речь идет о больших объемах информации и ее высокой конфиденциальности. В этом случае на удаленной машине (в данном случае — виртуальном сервере) устанавливается SSH-сервер (со встроенным SFTP-протоколом), а на клиентском компьютере — SSH-клиент. Создается SSH-туннель, и обмен данными между клиентом и удаленным сервером осуществляется через надежное соединение со всеми преимуществами протокола, описанными выше.

Также SSH может использоваться для удаленной работы по защищенному соединению с различными сервисами провайдера, такими как программное обеспечение, операционные системы и т.д.

Как работает SSH

По протоколу SSH работает набор программ, служащих для выполнения различных действий на удаленной операционной системе. Например, программа sshd обеспечивает серверную функциональность SSH, она должна быть запущена на SSH-сервере. Программа ssh запускается на SSH-клиенте и позволяет устанавливать соединение с удаленным хостом, регистрироваться на нем, работать с удаленной машиной через SSH-соединение.

Для запуска тех или иных программ SSH-протокола существуют специальные команды с набором различных опций. Эти команды могут отличаться в зависимости от используемой клиентской операционной системы и оболочки SSH-клиента. Команды запускаются либо из командной строки, если речь идет о UNIX-подобных системах, либо посредством графического интерфейса в соответствующих SSH-оболочках.

Читайте также:  Компьютерная сеть является одноранговой если

Источник

Коротко об SSH

SSH (Secure SHell — защищенная оболочка) — сетевой протокол прикладного уровня, предназначеный для безопасного удаленного доступа к UNIX-системам. Данный протокол эффективен тем, что шифрует всю передаваемую информацию по сети. По умолчанию, используется 22-й порт. В основном он нужен для удаленного управления данными пользователя на сервере, запуска служебных команд, работы в консольном режиме с базами данных.

Эта служба была создана в качестве замены не зашифрованному Telnet и использует криптографические техники, чтобы обеспечить, что всё сообщение между сервером и пользователем было зашифровано.

Как использовать

Пользователи Windows могут воспользоваться SSH-клиентом вроде PuTTy.

Пользователи Linux или MacOS могут использовать SSH напрямую из окна терминала.

SSH команда состоит из 3 отдельных частей:

Часть с SSH даст системе знать, что вы хотите открыть SSH соединение. даст системе сведения об аккаунте, к которому ты хочешь подключиться. К примеру, ты захочешь получить доступ в качестве root пользователя, который фактически является синонимом для администратора системы с полными правами на изменение любых данных в системе. означает компьютер, к которому ты хочешь подключиться. Это может быть 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 без острой необходимости.

Источник

Оцените статью
Adblock
detector