• -D режим_отладки . Данная опция используется при отладке сервера. Она задается в тех случаях, когда запуск программы telnetdосуществляется вручную с консольного терминала. В зависимости от указанного режима отладки, сервер отображает информацию о соединении либо о данных, которыми он обменивается с клиентом. Режим отладки может быть задан с помощью значений options, report(оба эти значения отображают информацию об установлении соединения), netdataи ptydata(эти значения выводят соответственно сведения о входном и выходном потоках данных).
• -h. По умолчанию telnetdпередает клиентской программе начальное сообщение, в котором содержится информация, предназначенная для пользователя. Опция -hподавляет вывод начального сообщения. Если вы опасаетесь взлома системы, но в то же время вынуждены поддерживать работу сервера Telnet, вы можете указать эту опцию для того, чтобы не предоставлять злоумышленнику дополнительные сведения о системе.
• -L программа_регистрации . По умолчанию telnetdиспользует для регистрации пользователей /bin/login. При желании вы можете указать посредством данной опции другую программу.
• -n. Подобно rlogind, telnetdпроверяет наличие клиента, используя для этого специальные сообщения. Опция -nподавляет передачу данных сообщений.
При вызове сервера могут быть также указаны другие опции, большинство из которых управляет шифрованием данных и поддержкой прочих расширенных средств защиты. Поскольку в большинстве версий Telnet-серверов расширенные средства защиты отсутствуют, эти опции применяются крайне редко. Следует заметить, что разновидности Telnet-серверов, обеспечивающие шифрование данных, не пользуются большой популярностью, так как задача обмена закодированными данными гораздо лучше решается с помощью SSH. Если в вашей сети установлена система Kerberos, в ее состав обычно входят керберизованные версии клиента и сервера Telnet, которые можно использовать для повышения уровня защиты при удаленной регистрации пользователей на сервере.
Редактирование начального сообщения Telnet
При получении запроса на установление соединения сервер telnetdчитает содержимое файла /etc/issue.netи передает его клиенту. Данные, содержащиеся в этом файле, отображаются перед тем, как пользователь получает возможность зарегистрироваться на сервере. Опция -h, указанная при запуске telnetd, подавляет вывод данного сообщения. Как правило, в начальном сообщении приводятся некоторые сведения о компьютере, на котором выполняется Telnet-сервер. Ознакомившись с ними, пользователь может убедиться, что он обратился к нужному ему узлу сети. По умолчанию в начальном сообщении содержатся данные о версиях системы и ядра. Большинству пользователей эти сведения не нужны, но они наверняка заинтересуют злоумышленника, который собирается взломать систему. Прочитав начальное сообщение, он сможет определить, какое программное обеспечение выполняется на компьютере, и догадаться, какими недостатками в защите можно воспользоваться.
На заметку
Аналогичные сведения отображаются при регистрации пользователя с консольного терминала (непосредственно подключенного к компьютеру). Они содержатся в файле /etc/issue. (При установлении соединения с помощью X Window данный файл не используется. Вопросы удаленной регистрации средствами X Window будут рассматриваться в главе 14.)
Многие системы позволяют непосредственно редактировать файл /etc/issue.net. Вы можете изменять текст в этом файле по своему усмотрению. В составе начального сообщения могут содержаться специальные переменные, которые telnetdзаменяет данными о системе. Назначение этих переменных описано в табл. 13.1.
Таблица 13.1. Переменные, используемые в файле /etc/issue.net
| Переменная |
Описание |
%t |
Используемый терминал (число, описывающее устройство ввода-вывода текста) |
%h |
Полное доменное имя компьютера |
%D |
Имя домена NIS (если сервер NIS используется в сети) |
%d |
Текущая дата и время |
%s |
Имя операционной системы (Linux) |
%m |
Тип аппаратного обеспечения (процессора) |
%r |
Номер версии ядра |
%v |
Версия операционной системы (обычно не используется) |
%% |
Символ % |
Предположим, что текст в файле /etc/issue.netвыглядит следующим образом:
Читать дальше