Служба telnet
Служба telnet позволяет открывать сеанс на удаленном компьютере. Клиент- ская часть этой службы представлена программой telnet, а серверная — in.telnetd. Сервер telnet по умолчанию прослушивает 23-й порт TCP и за- пускается супердемоном.
В примере 22.1 приведен файл конфигурации службы telnet для супердемона
xinetd.
Пример 22.1. Конфигурация xinetd для службы telnet |
service telnet
{
socket_type = stream
wait = no
user = root
server = /usr/sbin/in.telnetd log_on_success += DURATION USERID log_on_failure += USERID
disable = yes
}
В большинстве дистрибутивов служба telnet по умолчанию не активна (на- стройка disable = yes), поэтому для ее запуска следует активизировать (disable = no) и послать сигнал SIGHUP супердемону.
Для входа в сеанс на удаленной машине с помощью telnet необходимо выполнить команду telnet, указав имя или адрес удаленной машины (при- мер 22.2).
Пример 22.2. Вход в удаленный сеанс telnet |
$ telnet note.class.edu Trying 192.168.11.25...
Connected to note.class.edu. Escape character is '^]'.
Connection closed by foreign host.
В данном примере сеанс связи с сервером telnet был закрыт, о чем было по- лучено сообщение "Connection closed by foreign host". В данном случае это вызвано настройкой only_from = 127.0.0.1 в файле конфигурации xinetd (пример 22.3).
Пример 22.3. Разрешение для подключения из конкретной сети |
service telnet
{
...
only_from = 192.168.11.0/25
disable = no
}
$ telnet note.class.edu Trying 192.168.11.25...
Connected to note.class.edu. Escape character is '^]'.
Welcome! (note.class.edu) note.class.edu login: apox Password:
Last login: Wed Jun 30 22:34:19 on :0
В примере 22.3 явно разрешено устанавливать соединения со службой telnet,
запущенной на данном узле с любых узлов сети 192.168.11.0/25.
Сервер telnet вывел строку сообщения из файла /etc/issue.net — "Welcome! (note.class.edu)" и приглашение ввести имя пользователя и пароль для аутен- тификации пользователя. После успешной аутентификации был запущен удаленный сеанс. В нем можно выполнять любые разрешенные для данного пользователя команды на удаленном компьютере.
При необходимости можно временно выйти из терминального режима рабо- ты клиента telnet в командный (пример 22.4). Для этого следует ввести escape-последовательность, указанную при запуске сеанса: <Ctrl>+<]>.
Пример 22.4. Терминальный режим работы клиента telnet |
apox@note apox $
<Cntl>+<]>
telnet> help
Commands may be abbreviated. Commands are: close close current connection
logout forcibly logout remote user and close the connection display display operating parameters
mode try to enter line or character mode ('mode ?' for more) open connect to a site
quit exit telnet
send transmit special characters ('send ?' for more) set set operating parameters ('set ?' for more) unset unset operating parameters ('unset ?' for more) status print status information
toggle toggle operating parameters ('toggle ?' for more) slc change state of special charaters ('slc ?' for more) z suspend telnet
! invoke a subshell
environ change environment variables ('environ ?' for more)
? print help information telnet> quit
Connection closed.
Для выхода из удаленного сеанса можно либо воспользоваться обычными средствами завершения работы в оболочке (например, exit), либо ввести ко- манду quit.
В силу того, что использование telnet не предусматривает никаких средств криптографической защиты средствами самого протокола telnet, то настоя-
тельно рекомендуется не использовать telnet для связи в сетях, не являющихся доверенными. Вместо этой службы следует использовать SSH (Secure Shell).
Клиентская часть службы telnet, тем не менее, исключительно удобна для тестирования разнообразных служб, работающих с собственными протоко- лами. Далее приведен пример проверки возможности связаться с сервером SSH, работающим с 22-м портом TCP (пример 22.5).
Пример 22.5. Использование клиента telnet для проверки работы SSH |
$ telnet note.class.edu 22 Trying 192.168.11.25...
Connected to note.class.edu. Escape character is '^]'.
SSH-1.99-OpenSSH_3.7.1p2
^]
telnet> quit Connection closed.
В примере 22.5 продемонстрировано, что клиент telnet способен устанав- ливать соединение по порту, указанному в командной строке. Здесь указан порт 22 — SSH.
Дата добавления: 2015-06-12; просмотров: 968;