Протоколы Telnet , SSH
Telnet - протокол эмуляции терминала, обычно используемый в сети Интернет и в сетях, работающих по протоколам, основанным на TCP/IP. Протокол telnet был первоначально разработан для ARPAnet и является важной частью протокола передачи данных TCP/IP.
Протокол Telnet позволяет обслуживающей машине рассматривать все удаленные терминалы как стандартные "сетевые виртуальные терминалы" строчного типа,работающие в коде ASCII, а также обеспечивает возможность согласования более сложных функций (например, локальный или удаленный эхо-контроль, страничный режим, высота и ширина экрана и т.д.). Telnet работает на базе протокола TCP.
На прикладном уровне над Telnet находится либо программа поддержки реального терминала (на стороне пользователя), либо прикладной процесс в обсуживающей машине, к которому осуществляется доступ с терминала. Это позволяет пользователю терминала или персонального компьютера,регистрироваться в системе удаленного компьютера и выполнять программы.
Создано множество реализаций для самых разных операционных систем.
Telnet - клиент-серверный протокол, и клиенты в общем случае соединяется с портом 23 на удаленном компьютере,предоставляющем такую услугу (хотя, подобно многим протоколам, используемым в сети Интернет, используемый для соединения порт можно изменить, другими словами23 номер порта – всего лишь общий случай). Частично из-за конструкции протокола и частично из-за гибкости, обычно снабжаемой программами telnet, можно использовать программу telnet, чтобы установить интерактивное подключение TCP с некоторой другой услугой удаленного компьютера. Классическим примером такого использования клиентской части протокола может послужить соединение при помощи программы telnet с портом 25 удаленного компьютера (где обычно находиться SMTP сервер) чтобы отладить сервер почты.
Протокол telnet может быть представлен в виде ядра и наборов дополнений. Ядро протокола описано в соответствии с IETF документами RFC 854 и RFC 855, которые также собраны вместе в STD 8, который определяет только базисные эксплуатационные показатели протокола и способы определения и осуществления дополнений к нему. Имеется много дополнений,некоторые из которых были приняты как стандарты Интернет, некоторые нет.
Отмечают три главных проблемы связанные с использованием telnet, делая его плохим выбором для современных систем с точки зрения безопасности:
· Используемые по умолчанию демоны telnet имеют сетевые уязвимости;
· Telnet не шифрует никакие данные, которые посылаются через установленную связь (включая пароли), и таким образом становится возможным прослушивание связи и использование пароля позже для злонамеренных целей.
· Отсутствие системы аутентификации в telnet не дает никакой гарантии, что связь, установленная между двумя удаленными хостамине будет прервана в середине.
Нежелательно использование протокола telnet в системах, для которых важна безопасность, таких как общественный Интернет.
SSH ( Secure Shell )— сетевой протокол, позволяющий производить удалённое управление компьютером и передачу файлов. Сходен по функциональности с протоколом Telnet , однако использует алгоритмы шифрования передаваемой информации.
Криптографическая защита протокола SSH не фиксирована, возможен выбор различных алгоритмов шифрования. Клиенты и серверы,поддерживающие этот протокол, доступны для различных платформ. Кроме того,протокол позволяет не только использовать безопасный удалённый shell на машине,но и туннелировать графический интерфейс — X Tunnelling (только для Unix-подобных ОС или приложений, использующих графический интерфейс X Window System). SSH также способен передавать через безопасный канал (Port Forwarding) любой другой сетевой протокол, обеспечивая (при надлежащем конфигурировании) возможность безопасной пересылки не только X-интерфейса, но и, например, звука.
Поддержка SSH реализована во всех UNIX системах, и на большинстве из них в числе стандартных утилит присутствуютклиент и сервер ssh. Существует множество реализаций SSH-клиентов и для не-UNIXОС. Большую популярность протокол получил после широкого развития программ для прослушивания сети, как альтернатива небезопасному Telnet решение для управления важными узлами.
SSH предоставляет 3 способа аутентификации клиента: по ip адресу клиента(небезопасно), по публичному ключу клиента и стандартный парольный метод
Схема работы
При запросе клиента сервер сообщает ему, какие методы аутентификации он поддерживает (это определяется в опции PreferredAuthentications sshd.conf) и клиент по очереди пытается проверить их.По умолчанию клиент вначале пытается аутентифицироваться своим адресом, затем публичным ключом и, если ничего не сработало, передаёт пароль, введённый с клавиатуры (при этом пароль шифруется асимметрическим шифрованием). После прохождения аутентификации одним из методов из имеющихся у клиента и сервера пар ключей генерируется сеансовый ключ симметрического шифрования. После чего все последующие данные, передаваемые через ssh, шифруются данным ключом (обычно используется алгоритм aes с длиной ключа 128 бит). Также вместе с данными посылаются контрольные суммы формата sha или md5, что исключает подмену или иную модификацию передаваемого трафика.
SSH защищает от:
· «ip-подмены» (IP spoofing), когда удаленный(атакующий) компьютер высылает свои пакеты симулируя якобы они пришли с другого компьютера, с которого разрешен доступ. SSH защищает от подмены даже в локальной сети, когда кто-то например, решил подменить маршрутизатор сети"собой".
· «ip исходный маршрутизатор» (IP source routing),когда компьютер может симулировать что IP-пакеты приходят от другого,разрешенного компьютера (маршрутизатора).
· «DNS spoofing» , когда атакующий фальсифицирует записи DNS -сервера.
· Прослушивания нешифрованных паролей и других данных промежуточными компьютерами.
· Манипуляций над вашими данными людьми управляющими промежуточными компьютерами.
Все вышесказанное верно, лишь при использовании шифрования. Однако SSH имеет опцию шифрования "none",которая необходима лишь для отладки и ни в коем случае не должна быть использована для обычной работы.
Дата добавления: 2019-09-30; просмотров: 573;