Было бы здорово иметь везде одинаковые имена учетных записей, но это не всегда возможно; в моей локальной сети имена craig и hunt уже используются другими людьми. Я хочу иметь возможность обратиться к своей рабочей станции с любого узла, на котором у меня есть учетная запись, но запретить доступ другим пользователям с именами craig и hunt. Файл .rhosts позволяет мне решить эту задачу.
Допустим, мое имя на узле crab - craig, а на узле filbert - hunt. Имя другого пользователя узла filbert - craig. Чтобы получить беспарольный доступ к своей учетной записи на crab с узла filbert, а также запретить такой доступ второму пользователю, я создаю следующий файл .rhosts в своем исходном каталоге:
filbert hunt filbert -craig
Как правило, прежде всего происходит обращение к файлу hosts.equiv, а затем - к файлу пользователя .rhosts, если таковой существует. Первое явное соответствие определяет, разрешен ли беспарольный доступ. Следовательно, файл .rhosts имеет приоритет меньший, нежели файл hosts.equiv. Исключением из этого правила является доступ для пользователя root. Когда администратор системы пытается получить доступ к системе при помощи r-команд, происходит чтение только файла .rhosts в исходном каталоге пользователя root. Это позволяет более жестко управлять доступом пользователя root. Если бы для разграничения root-доступа использовались файлы hosts.equiv, записи, предоставляющие доступ доверенным узлам, давали бы пользователям root этих узлов полномочия администратора на локальной системе. Можно добавлять доверенные узлы в hosts.equiv, не предоставляя удаленным администраторам root-доступ к локальной системе.
Следует помнить, что пользователь способен предоставить доступ посредством файла .rhosts, даже если файл hosts.equiv не существует. Единственный способ воспрепятствовать этому - периодически проверять наличие файлов .rhosts и удалять их. До тех пор пока в системе присутствуют r-команды, пользователи имеют возможность случайно нарушить безопасность системы.
- << Назад
- Вперёд