Вход на хостинг
IT-новости
20.04.2016 iPhone 2017 года поместят в водонепроницаемый корпус из стекла
Линейка iPhone в новом году серьезно поменяется. В этом уверен аналитический исследователь Мин Чи Ку......
30.07.2015 Ищем уникальный контент для сайта
Ищем уникальный контент для сайта Без уникального контента Ваш сайт обречен на то, что его страницы......
Михаил Кондрин
Как только ваша подконтрольная локальная сеть начнет развиваться и расширяться, возникнут новые задачи: Как синхронизировать системные учетные записи растущего числа пользователей? Как управлять доступом пользователей к сетевым сервисам внутри локальной сети? При этом сервисы могут работать на разных компьютерах, а определенные службы держат собственные учетные записи для авторизованных пользователей. Решением послужит введение единой системы регистрации в локальной сети с помощью протокола Kerberos.
Чтобы подробнее разобраться с возникающими задачами, рассмотрим ситуацию с организацией распределенной вычислительной системы. Разумеется, чем больше компьютеров входят в кластер, тем выше его вычислительная мощность. Наиболее распространненные системы кластерных вычислений на сегодня – Parallel Virtual Machine и Message Passing Interface. Обе позволяют пользователю, в данном случае разработчику программ, пересылать куски данных, нуждающихся в обработке, между узлами кластера и синхронизировать получение результатов с разных узлов. Это фасад системы. За кулисами происходит обращение к удаленному командному интерпретатору и вызов определенных программ в нем. То есть администратору такой системы необходимо добиться, чтобы пользователи кластера имели доступ к командному интерпретатору на узлах кластера и, более того, этот доступ должен быть беспарольным для каждой пары компьютеров в кластере. Не очень-то удобна система, где запуск нескольких параллельных копий программы требует от пользователя регистрации на каждом из узлов кластера.
Таким образом, во-первых, информация о пользователях должна совпадать на всех этих компьютерах. Один из вариантов решения – иметь одинаковые копии /etc/passwd и /etc/shadow на каждом из узлов с их последующим обновлением с помощью скриптов при добавлении нового пользователя. Во-вторых, если в качестве удаленного командного интерпретатора используется rsh, то добиться беспарольного входа с помощью внесения всех компьютеров, входящих в этот кластер, в файл /etc/hosts.equiv (этот файл также должен совпадать на всех узлах кластера). Однако использование rsh гарантирует вам проблемы с безопасностью, если предположить возможность доступа к кластеру извне локальной сети, который, как вы помните, должен быть беспарольным. Можно сконфигурировать доступ по адресу компьютера (с помощью tcp-wrappers) и бороться с ip-spoofing внешними средствами или настраивать openssh в качестве удаленного командного интерпретатора. В последнем случае вам придется мириться с тем, что процессорные циклы будут расходоваться не на расчет, а на кодирование/раскодирование блоков данных. Тем не менее ни одно из этих решений нельзя считать удачным.
Далеко не каждому из вас приходится сталкиваться с настройками вычислительных кластеров. Но именно эта проблема построения распределенной вычислительной системы Athena заставила в начале 80-х годов программистов из Массачусетского технологического института разработать и внедрить протокол удаленной аутентификации пользователей. Комбинирование специальных криптографических средств позволяло, с одной стороны, свести на нет вероятность перехвата паролей и иметь шифрованный канал для передачи данных между компьютерами (эта возможность могла отключаться по желанию пользователя). А с другой – иметь систему с единой регистрацией (single sign-on), что дает возможность пользователю регистрироваться один раз при входе в систему и в дальнейшем иметь свободный доступ к сетевым ресурсам на основе этой регистрации.