Более безопасный вариант удаленного доступа [2023]

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

И когда вы говорите о методах удаленного подключения, на первое место выходят два названия: SSH и Telnet.

Это SSH или Telent? В этой статье будет рассмотрено, какой из них лучше для удаленного доступа. Давайте узнаем в нашем сравнении SSH и Telnet.

Что такое удаленный доступ?

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

Удаленный доступ жизненно важен для выживания и процветания организаций. Кроме того, администраторам необходим надлежащий удаленный доступ для управления серверами, сетями и приложениями без физического посещения серверов.

Что такое SSH?

Secure Shell или Secure Socket Shell (SSH) — это сетевой протокол, который позволяет компьютерам в незащищенной сети безопасно взаимодействовать друг с другом.

После установки безопасного соединения пользователь или администратор может войти на удаленный компьютер и удаленно запускать приложения или использовать безопасное соединение со сквозным шифрованием для перемещения файлов по сети.

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

Компания, стоящая за разработкой SSH, — Netscape Communications Corporation. Однако финский ученый-компьютерщик Тату Юлонен создал первые проекты SSH. Он разработал его после того, как нашел секретный сниффер паролей в своей недавно созданной сети.

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

SSH заменяет старые протоколы удаленного подключения, такие как Telnet, rlogin, rsh и т. д. Большинство из них являются популярными протоколами, но им не хватает безопасности. Фактически, SSH настолько хорош, что пользователи используют его вместо того, чтобы полагаться на протоколы передачи файлов, такие как удаленное копирование (rcp) и протокол передачи файлов (FTP).

SSH использует модель клиент-сервер, в которой клиент SSH подключается к серверу SSH.

  • Клиент SSH — это программа, установленная на компьютере или устройстве, которая инициирует протокол SSH. Клиент отправляет запрос на сервер SSH и ждет, пока он примет запрос. Клиент SSH использует шифрование с открытым ключом для проверки и обеспечения подключения к правильному серверу. Такой подход гарантирует, что злоумышленники не смогут выдать себя за сервер и украсть важную информацию у клиента.
  • SSH-сервер обрабатывает SSH-соединения и запускает службу. Чтобы принять входящий запрос, SSH-сервер постоянно прослушивает TCP-порт 22 (по умолчанию). И как только он получает запрос, он отвечает на них. Сервер SSH также проверяет и аутентифицирует клиента, используя аутентификацию с открытым ключом. Только после успешной аутентификации клиент получает доступ к хост-системе.

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

Синтаксис SSH следующий:

$ ssh [email protected]

user_name — это имя пользователя, которое вы используете для подключения к хосту. Хост может быть IP или доменным именем.

Как видите, упрощенный поток SSH состоит из следующего:

  • Клиент SSH, инициирующий подключение к определенному серверу SSH
  • Сервер SSH получает соединение и отправляет свой открытый ключ клиенту.
  • Клиент сохраняет открытый ключ сервера в файле своего хоста (для будущего подключения).
  • Теперь сервер и клиент согласовывают и устанавливают параметры соединения.
  • SSH предлагает надежный вариант подключения с отличной безопасностью и защитой целостности данных. Он также следует стандартизации IETF для лучшей реализации и не менялся в течение последних 15 лет.

    Если вы хотите погрузиться в SSH технически, ознакомьтесь с документом по стандартизации SSH RFC 4253. Кроме того, ознакомьтесь с мнением toadmin.ru о понимании SSH.

    Что такое Телнет?

    Telent расшифровывается как Teletype Network. Это еще один популярный сетевой протокол, который предлагает удаленное подключение через интерфейс командной строки. Подобно SSH, вы можете использовать его для удаленного управления и выполнения действий. Однако ему не хватает аспекта безопасности, который предлагает SSH.

    Отсутствие безопасности связано с тем, что, когда он появился в 1969 году, большая часть связи осуществлялась в локальной сети, которая была безопаснее по сравнению с незащищенным Интернетом.

    Как работает Теленет?

    Telenet работает, создавая текстовую связь между терминалом и сервером между клиентом и сервером. Он использует модель клиент-сервер с восьмибайтным соединением.

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

    Синтаксис Telnet:

    $ telnet hostname port

    Чтобы узнать больше о Telnet, ознакомьтесь с разделом Команды Telnet для тестирования и устранения проблем с подключением.

    Когда и где следует использовать SSH?

    SSH в основном используется для:

    • Удаленное администрирование системы
    • Удаленное выполнение команды
    • Защита трафика приложения
    • Передача файлов

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

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

    Когда и где следует использовать Telenet?

    Поскольку Telnet не является безопасным, вы избегаете его использования для удаленного подключения в незащищенной сети. Однако это не означает, что Telnet бесполезен.

    Вы можете использовать TTelnet, чтобы сделать следующее:

    • Устранение неполадок SSH (да, вы правильно прочитали. 😃)
    • Устранение неполадок FTP, SMTP и веб-серверов.
    • Проверьте, открыт ли порт или нет
    • Доступ к доверенным интернет-сетям.

    SSH против Telnet

    В этом разделе мы сравним SSH и Telent по разным критериям. Если вы спешите, ознакомьтесь со сравнительной таблицей SSH и Telnet.

    SSHTelnetSecurityВысокая безопасность, при которой клиент и сервер могут договориться о настройке алгоритмов шифрования. Небезопасно, нет механизма для защиты соединения или пакетов Telent. АутентификацияSSH использует шифрование с открытым ключом для целей аутентификации. Telnet не имеет механизма аутентификации. Он просто запрашивает имя пользователя/пароль, которые передаются без какой-либо защиты. Операция SSH по умолчанию использует TCP-порт 22. Вы можете изменить его на другой порт, чтобы предотвратить попытки несанкционированного доступа хакеров. По умолчанию Telent использует порт 23 для прослушивания входящих соединений. Вы можете настроить его на защиту от несанкционированного доступа.

    Безопасность

    SSH безопасен. Он обеспечивает безопасность вашего соединения с помощью надлежащих протоколов шифрования. Однако Telenet полностью лишен каких-либо мер безопасности.

    В SSH клиент и сервер могут согласовывать параметры подключения, включая алгоритм сквозного шифрования. Это позволяет настроить блокировку слабых алгоритмов шифрования и сделать SSH-соединение максимально безопасным.

    Как только между клиентом и сервером установлено соединение TCP/UDP, начинается попытка создания безопасного соединения.

    Чтобы лучше понять, как работает безопасность SSH, давайте узнаем о содержимом пакета SSH. Пакет SSH состоит из пяти компонентов, в том числе:

    • Длина пакета: 4 байта; насколько большой будет пакет
    • Объем заполнения: 1 байт; сколько набивки в упаковке
    • Полезная нагрузка: фактически передаваемые данные; размер варьируется
    • Заполнение: фактическое заполнение, а не РАЗМЕР, о котором мы упоминали ранее. Это случайные байты в сочетании с полезной нагрузкой, чтобы сделать ее более зашифрованной.
    • Код проверки подлинности сообщения: тег для проверки подлинности пакета, чтобы гарантировать, что данные пакета не изменены.

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

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

    Аутентификация

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

    Telent, с другой стороны, не имеет защиты для аутентификации. Его процесс аутентификации запрашивает имя учетной записи и пароль перед подключением. Кроме того, имя пользователя и пароль отправляются без какой-либо защиты и, следовательно, могут быть доступны любому.

    Операция

    Что касается работы, SSH по умолчанию работает на TCP-порту 22. С другой стороны, Telnet использует TCP-порт 23. Поэтому используйте протоколы SSH или Telnet без указания номера порта. Команда попытается автоматически подключиться к портам 22 и 23 соответственно.

    Однако эти порты хорошо известны и могут использоваться хакерами для осуществления несанкционированного доступа.

    Вы можете изменить протоколы SSH и Telnet на разных портах, чтобы преодолеть это. Лучше всего закрыть общие порты и выбрать порты от 1024 до 65535.

    В Telent команды отправляются в формате сетевого виртуального терминала (NVT). Сервер Telent способен принимать и понимать формат. Как видите, здесь нет ни шифрования, ни аутентификации.

    Что касается SSH, после установления соединения клиент-сервер создается сеанс, который идентифицируется с помощью сеансового ключа. Этот ключ шифрует трафик до окончания сеанса. Более того, серверу необходимо проверить клиента. Он делает это с помощью генерации пары ключей SSH. После завершения проверки создается канал сквозного шифрования для безопасной передачи данных.

    Модель

    И SSH, и Telnet используют модель клиент-сервер. Это здорово, учитывая, что модель клиент-сервер дает множество преимуществ, в том числе:

    • Он может масштабироваться горизонтально, когда сервер может добавлять дополнительные ресурсы, если это необходимо.
    • Клиенты могут быть оптимизированы для правильного ввода данных
    • Разделяет обработку приложений между клиентом и сервером

    Скорость и накладные расходы

    Чтобы по-настоящему понять SSH и Telnet, мы должны изучить их накладные расходы. Как правило, у SSH больше накладных расходов, чем у Telent, но в реальных сценариях вы почти не заметите никакой разницы.

    Технически Telnet и SSH выполняют смену ключей через 1 час подключения или 1 ГБ времени подключения.

    Что касается пропускной способности, у SSH больше накладных расходов, но это минимально влияет на пользователей. Что касается ЦП клиента и сервера, накладные расходы минимальны благодаря тому, как работает стандарт AES и реализуется в соединениях SSH.

    Короче говоря, SSH и Telnet не имеют визуальной разницы в скорости или накладных расходах. Однако, если вы сравните их технически, SSH имеет некоторые накладные расходы по сравнению с Telnet.

    Варианты использования SSH и Telnet

    В этом разделе мы рассмотрим некоторые варианты использования SSH и Telnet.

    Варианты использования SSH

    Варианты использования SSH включают в себя:

    • Удаленное выполнение команд
    • Безопасный доступ к ресурсам удаленного компьютера
    • Передача файлов удаленно
    • Удаленная доставка обновлений программного обеспечения
    • Настройте автоматическую передачу файлов или выполните передачу вручную

    Варианты использования Telnet

    Варианты использования Telnet включают в себя:

    • Устранение неполадок SSH
    • Устранение неполадок FTP, SMTP и веб-серверов.
    • Проверьте, открыт ли порт или нет
    • Доступ к доверенным интернет-сетям.

    Заключительные мысли: какой из них лучше?

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

    Telnet, с другой стороны, изящно упал. Сейчас ему почти 50 лет. Тем не менее, он по-прежнему полезен в текущих сценариях, и вы можете использовать его для устранения неполадок SSH или проверки того, открыт ли порт. Администраторы могут использовать Telnet для устранения большинства сетевых проблем.