Rlogin

Поделись знанием:
Перейти к: навигация, поиск

Протокол RLOGIN (англ. Remote LOGIN — удалённый вход в систему) — протокол прикладного уровня (7-й уровень модели OSI), часть стека TCP/IP. Позволяет пользователям UNIX подключаться к системам UNIX на других машинах и работать так же, как при прямом подключении терминала к машине. Этот протокол обеспечивает такой же сервис, как протокол TELNET.





Принцип работы протокола Rlogin

Установка связи

После установки соединения, клиент посылает серверу 4 множества символов, заканчивающиеся нулями (представление строки в С-подобных языках):

  1. пустая строка(состоит из одного нулевого байта),
  2. имя пользователя клиента,
  3. имя пользователя сервера,
  4. тип терминала и скорость.

Например:

<null>
bostic<null>
kbostic<null>
vt100/9600<null>

Сервер возвращает нулевой байт в подтверждение того, что он получил отправленные клиентом данные и теперь находится в режиме передачи данных.

От клиента серверу (и управление потоком)

Сначала клиент начинает операцию в режиме «cooked» (противоположном режиму «raw») . В этом режиме символы НАЧАЛО и КОНЕЦ (обычно ASCII DC1, DC3) принимаются клиентом и интерпретируются как начало и конец вывода с сервера на локальный терминал, в то время как остальные символы передаются на удалённый хост в том виде, в котором они были получены. (Смотри ниже обработку локальных Escape-символов).

В режиме «raw», символы НАЧАЛО и КОНЕЦ не обрабатываются локально, а посылаются удаленному серверу как любой другой символ. Таким образом в режиме «raw» сервер определяет семантику символов НАЧАЛО и КОНЕЦ; они могут быть использованы для потокового управления или иметь совсем другие значения, никак не зависящие от их первоначального использования на клиенте.

Размер экрана (окна)

Удалённый сервер подает сигнал клиенту, что он готов принимать информацию об изменении текущих размеров окна в виде сообщений сразу после установки соединения и идентификации пользователя. На этот запрос клиент должен ответить сообщением с текущим размером окна.

Если выше описанная операция прошла успешно, то как только на клиентской стороне меняются размерности экрана или окна, специальная 12-битовая последовательность (там хранится информация о новых размерах) посылается удаленному серверу, далее клиентский процесс, запущенный на сервере, должен нужным образом обработать эту информацию.

Управляющая последовательность изменения размера окна имеет длину в 12 байт, состоит из:

  1. magic cookie (2х последовательных байтов 0xFF),
  2. после которых следует 2 байта, содержащие символ «s» (ASCII, нижний регистр),
  3. затем 8 байтов, содержащие 16-битовые значения количества символьных строк, количество символов на строку, количество пикселей в горизонтальной развертке и количество пикселей вертикальной развертки.
FF FF s s rr cc xp yp

Кроме флагов «ss» ничего не используется. В будущем могут появиться и другие для сообщений в целях управления.

От сервера клиенту

Данные с сервера посылаются клиенту как поток символов. Обычные данные просто выводятся на клиентский дисплей, но могут быть обработаны перед этим (например, отступы).

В поток символов сервер может вставить управляющий байт, затем создать указатель «срочных данных» TCP на этот байт. Когда клиент получает указатель, данные в потоке прямо до специального байта заносятся в буфер для возможного отображения их после обработки управляющего байта. Вот возможные значения управляющего байта (в шестнадцатеричной системе):

  • 0x02 — клиент должен отменить все буферизированные данные, которые ещё не были выведены на экран
  • 0x10 — клиент должен переключиться в режим «raw»
  • 0х20 — клиент должен возобновить перехват символов и обработку символов НАЧАЛО и КОНЕЦ.
  • 0х80 — клиент должен ответить серверу, послав данные о размере окна (см. выше↑)

Все остальные значения управляющего байта игнорируются. Во всех случаях управляющий байт НЕ выводится на экран пользователя.

Завершение соединения

Когда TCP-соединение закрывается в любом из направлений, другой конец должен заметить это и провести закрытие со своей стороны, восстановив режимы терминалов и уведомив пользователя или процессы обрыва соединения.

Безопасность

rlogin имеет несколько значительных недостатков в системе безопасности:

  • Вся информация, включая пароли, передаются без шифрования (перехват данных дал бы полный контроль над жертвой)
  • Легко воспользоваться файлом .rlogin (или .rhosts) в корыстных целях (открывается доступ к аккаунту anyone, у которого нет пароля) — по этой причине множество корпоративных системных администраторов запрещают .rlogin файлы и активно ищут правонарушителей в их сетях
  • Протокол частично доверяет клиенту rlogin удалённой машины, предоставляя ему информацию честно (включая порт и имя хоста). Таким образом, злоумышленник может воспользоваться этим и получить доступ, в силу того, что этот протокол никак не подразделяет удалённые хосты на зоны доверия
  • Общая практика монтирования домашних директорий пользователей через NFS (Network File System) подвергает rlogin атаковать путём подделывания файлов .rhosts — это означает, что единственной защитой в этом случае является безопасность самой NFS.

Замены

Оригинальный Berkley пакет, который предоставляет rlogin возможности rcp (remote-copy (удалённое копирование), которые позволяют копировать файлы по сети) и rsh (remote-shell, позволяющие выполнять команды на удалённых машинах без входа в систему пользователя).

Пакет ssh заменяет вышеописанные возможности и сам rlogin: scp заменяет rcp, сама ssh заменяет rlogin и rsh.

См. также

Напишите отзыв о статье "Rlogin"

Литература


Отрывок, характеризующий Rlogin


– Она приехала гостить ко мне, – сказала княжна Марья. – Граф и графиня будут на днях. Графиня в ужасном положении. Но Наташе самой нужно было видеть доктора. Ее насильно отослали со мной.
– Да, есть ли семья без своего горя? – сказал Пьер, обращаясь к Наташе. – Вы знаете, что это было в тот самый день, как нас освободили. Я видел его. Какой был прелестный мальчик.
Наташа смотрела на него, и в ответ на его слова только больше открылись и засветились ее глаза.
– Что можно сказать или подумать в утешенье? – сказал Пьер. – Ничего. Зачем было умирать такому славному, полному жизни мальчику?
– Да, в наше время трудно жить бы было без веры… – сказала княжна Марья.
– Да, да. Вот это истинная правда, – поспешно перебил Пьер.
– Отчего? – спросила Наташа, внимательно глядя в глаза Пьеру.
– Как отчего? – сказала княжна Марья. – Одна мысль о том, что ждет там…
Наташа, не дослушав княжны Марьи, опять вопросительно поглядела на Пьера.
– И оттого, – продолжал Пьер, – что только тот человек, который верит в то, что есть бог, управляющий нами, может перенести такую потерю, как ее и… ваша, – сказал Пьер.
Наташа раскрыла уже рот, желая сказать что то, но вдруг остановилась. Пьер поспешил отвернуться от нее и обратился опять к княжне Марье с вопросом о последних днях жизни своего друга. Смущение Пьера теперь почти исчезло; но вместе с тем он чувствовал, что исчезла вся его прежняя свобода. Он чувствовал, что над каждым его словом, действием теперь есть судья, суд, который дороже ему суда всех людей в мире. Он говорил теперь и вместе с своими словами соображал то впечатление, которое производили его слова на Наташу. Он не говорил нарочно того, что бы могло понравиться ей; но, что бы он ни говорил, он с ее точки зрения судил себя.
Княжна Марья неохотно, как это всегда бывает, начала рассказывать про то положение, в котором она застала князя Андрея. Но вопросы Пьера, его оживленно беспокойный взгляд, его дрожащее от волнения лицо понемногу заставили ее вдаться в подробности, которые она боялась для самой себя возобновлять в воображенье.
– Да, да, так, так… – говорил Пьер, нагнувшись вперед всем телом над княжной Марьей и жадно вслушиваясь в ее рассказ. – Да, да; так он успокоился? смягчился? Он так всеми силами души всегда искал одного; быть вполне хорошим, что он не мог бояться смерти. Недостатки, которые были в нем, – если они были, – происходили не от него. Так он смягчился? – говорил Пьер. – Какое счастье, что он свиделся с вами, – сказал он Наташе, вдруг обращаясь к ней и глядя на нее полными слез глазами.
Лицо Наташи вздрогнуло. Она нахмурилась и на мгновенье опустила глаза. С минуту она колебалась: говорить или не говорить?
– Да, это было счастье, – сказала она тихим грудным голосом, – для меня наверное это было счастье. – Она помолчала. – И он… он… он говорил, что он желал этого, в ту минуту, как я пришла к нему… – Голос Наташи оборвался. Она покраснела, сжала руки на коленах и вдруг, видимо сделав усилие над собой, подняла голову и быстро начала говорить:
– Мы ничего не знали, когда ехали из Москвы. Я не смела спросить про него. И вдруг Соня сказала мне, что он с нами. Я ничего не думала, не могла представить себе, в каком он положении; мне только надо было видеть его, быть с ним, – говорила она, дрожа и задыхаясь. И, не давая перебивать себя, она рассказала то, чего она еще никогда, никому не рассказывала: все то, что она пережила в те три недели их путешествия и жизни в Ярославль.
Пьер слушал ее с раскрытым ртом и не спуская с нее своих глаз, полных слезами. Слушая ее, он не думал ни о князе Андрее, ни о смерти, ни о том, что она рассказывала. Он слушал ее и только жалел ее за то страдание, которое она испытывала теперь, рассказывая.
Княжна, сморщившись от желания удержать слезы, сидела подле Наташи и слушала в первый раз историю этих последних дней любви своего брата с Наташей.
Этот мучительный и радостный рассказ, видимо, был необходим для Наташи.
Она говорила, перемешивая ничтожнейшие подробности с задушевнейшими тайнами, и, казалось, никогда не могла кончить. Несколько раз она повторяла то же самое.
За дверью послышался голос Десаля, спрашивавшего, можно ли Николушке войти проститься.
– Да вот и все, все… – сказала Наташа. Она быстро встала, в то время как входил Николушка, и почти побежала к двери, стукнулась головой о дверь, прикрытую портьерой, и с стоном не то боли, не то печали вырвалась из комнаты.
Пьер смотрел на дверь, в которую она вышла, и не понимал, отчего он вдруг один остался во всем мире.
Княжна Марья вызвала его из рассеянности, обратив его внимание на племянника, который вошел в комнату.
Лицо Николушки, похожее на отца, в минуту душевного размягчения, в котором Пьер теперь находился, так на него подействовало, что он, поцеловав Николушку, поспешно встал и, достав платок, отошел к окну. Он хотел проститься с княжной Марьей, но она удержала его.
– Нет, мы с Наташей не спим иногда до третьего часа; пожалуйста, посидите. Я велю дать ужинать. Подите вниз; мы сейчас придем.
Прежде чем Пьер вышел, княжна сказала ему:
– Это в первый раз она так говорила о нем.


Пьера провели в освещенную большую столовую; через несколько минут послышались шаги, и княжна с Наташей вошли в комнату. Наташа была спокойна, хотя строгое, без улыбки, выражение теперь опять установилось на ее лице. Княжна Марья, Наташа и Пьер одинаково испытывали то чувство неловкости, которое следует обыкновенно за оконченным серьезным и задушевным разговором. Продолжать прежний разговор невозможно; говорить о пустяках – совестно, а молчать неприятно, потому что хочется говорить, а этим молчанием как будто притворяешься. Они молча подошли к столу. Официанты отодвинули и пододвинули стулья. Пьер развернул холодную салфетку и, решившись прервать молчание, взглянул на Наташу и княжну Марью. Обе, очевидно, в то же время решились на то же: у обеих в глазах светилось довольство жизнью и признание того, что, кроме горя, есть и радости.