Читаем Сетевые средства Linux полностью

<p>Редактирование начального сообщения Telnet</p>

При получении запроса на установление соединения сервер 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 выглядит следующим образом:

Welcome to %h.

Current time is %d.

Notice: For authorized users only!

Если ваш компьютер имеет имя maple.threeroomco.com, начальное сообщение будет выглядеть так:

$ telnet maple.threeroomco.com

Trying 172.21.32.43...

Connected to maple.threeroomco.com.

Escape character is '^]'.

Welcome to maple.threeroomco.com.

Current time is 10:57 on Monday, 12 August 2002.

Notice: For authorized users only!

В некоторых разновидностях Linux (в частности, в Caldera, Mandrake и некоторых версиях Red Hat) файлы /etc/issue и /etc/issue.net создаются в процессе загрузки. Формированием этих файлов занимается сценарий /etc/rc.d/rc.local. Код сценария, используемого в системе Mandrake 8.1, приведен ниже.

# Этот сценарий создает файл /etc/issue при каждой

# загрузке системы. Чтобы сохранить изменения, внесенные

# в файл /etc/issue, надо изменить код сценария.

if [ -х /usr/bin/linux_logo ]; then

 /usr/bin/linux_logo -c -n -f > /etc/issue

 echo "" >> /etc/issue

else

 echo "" > /etc/issue

fi

echo "$R" >> /etc/issue

echo "Kernel $(uname -r) on $ a $SMP$ (uname -m) / \1" >> /etc/issue

if [ "$SECURITY" -le 3 ]; then

 echo "Welcome to %h" > /etc/issue.net

 echo "$R" >> /etc/issue.net

Перейти на страницу:

Похожие книги