Telnet
Материал из Xgu.ru
- Автор: Игорь Чубин
Содержание |
[править] Telnet
Тelnet - сервис, обеспечивающий удалённый доступ к терминалу по сети. Telnet обеспечивает удаленный текстовый доступ с любого связанного с Интернетом компьютера без всяких дополнительных мер.
Всю информацию Telnet посылает в незашифрованном виде, поэтому сейчас он рассматривается как один из самых небезопасных сервисов в Интернет. Telnet безопасен только в том случае, когда безопасны все машины и сети на пути от компьютера-клиента к компьютеру-серверу.
[править] Сервер telnetd
Сервер telnetd выполняет обслуживание удаленных клиентов в соответствии с протоколом Telnet.
Сервер запускается супердемоном при возникновении активности на порту Telnet. Можно запустить демон telnetd и вручную, указав ему порт на котором он должен вести прослушивание. Для этого нужно указать ключ -debug порт.
Когда возникает активность на порту 23, супердемон порождает экземпляр демона telnet, который должен заниматься обслуживанием нового соединения. Демон выводит содержимое файла /etc/issue.net, после чего выполняет программу регистрации /usr/lib/telnetlogin предназначенную для удаленной регистрации пользователя в системе. Вместо этой программы может использоваться любая другая, заданная при помощи опции -n программа.
Для каждого соединения telnetd создает виртуальный псевдотерминал (pty), к которому подключает стандартные потоки процессов, выполняющихся в рамках его сессии.
[править] Клиент telnet
Программа telnet предназначена для удаленной регистрации и работы на компьютере в соответствии с протоколом Telnet. Кроме того telnet позволяет осуществлять прямое соединение с заданным портом удаленного хоста. Это может быть полезно при отладке других сервисов, отличных от telnet.
Синтаксис вызова программы telnet:
- telnet опции хост порт
При вызове без аргументов программа запускается в режиме командной строки. Об этом сообщает приглашение telnet>. Для того чтобы начать работу с удаленным хостом, нужно зарегистрироваться на нем при помощи команды open. В командной строке telnet можно вводить многие другие команды, управляющие сеансом связи. Для завершения работы с telnet нужно дать ему команду quit.
Обычно запуск telnet и подсоединение к удаленному компьютеру совмещают в одном действии. Для этого при вызове telnet в качестве аргумента командной строки нужно указать имя сервера, к которому выполняется подключение. Например, команда
telnet host
запустит клиент telnet, который автоматически выполнит подключение к удаленному хосту. Если вторым параметром указать порт то, соединение будет установлено не со стандартным портом Telnet (23), а с указанным:
telnet host 25
Эта команда выполнит соединение с портом 25 удаленного хоста. Фактически сейчас telnet клиент взаимодействует напрямую с SMTP-сервером. Для удаленного хоста нет никакой разницы: передает ему данные программа, например, почтовый клиент, или их вводит человек. Использовать telnet в этом режиме чрезвычайно удобно для отладки и проверки работоспособности сетевых служб.
telnet автоматически завершает свою работу, если соединение было разорвано либо намерено закрыто удаленной стороной. Можно разорвать соединение по собственной инициативе. Для этого нужно использовать команды telnet quit или close.
Для перехода из режима удаленного терминала в режим командной строки telnet используется комбинация клавиш ^Ctrl^-^]^, которая называется Escape-символом. Escape-символ можно указать явно при помощи ключа -e командной строки.
[править] SSH
- Основная статья: SSH
Сервис Telnet несмотря на то, какую важную роль он сыграл в становлении и распространении компьютерных сетей вообще и UNIX-систем в частности, тем не менее имеет ряд непреодолимых недостатков, для того чтобы использоваться для решения задач удаленного администрирования в настоящее время. Самым слабым его местом является безопасность. Служба Telnet не поддерживает никаких возможностей аутентификации; данные Telnet-соединения передаются в незашифрованном виде и в лучшем случае могут быть прослушаны, а в худшем - подменены.
Набор программ и протокол SSH призваны предоставить полноценную замену Telnet, которая при этом будет безопасной. Кроме этого SSH обеспечивает ряд принципиально новых возможностей, недоступных ранее.