5

Scenario : - User logs on to his computer gets authenticated by Kerberos Authentication and submits a map reduce job Hadoop безопасности

Я пытаюсь узнать "Как Kerberos может быть реализована в Hadoop?" Я прошел через этот документ https://issues.apache.org/jira/browse/HADOOP-4487 Я также прошел через материал Basic Kerberos (https://www.youtube.com/watch?v=KD2Q-2ToloE)

После изучения этих ресурсов я пришел к выводу, который я представляю через диаграмму. Сценарий: - Пользователь регистрируется на своем компьютере, получает аутентификацию Kerberos Authentication и отправляет справку по карте (Пожалуйста, ознакомьтесь с описанием схемы, которой вряд ли нужно 5 минут вашего времени) Я хотел бы объяснить диаграмму и задать вопросы связанный с несколькими шагами (выделена жирным шрифтом) Числа в желтом фоне представляет весь поток (цифры от 1 до 19) DT (с красным фоном) представляет делегацию маркера BAT (с зеленым фоном) представляет собой блок маркер доступа JT (с Brown Background) представляет токен работы

Этапы 1,2,3 и 4 представляют: - Запрос для TGT (Ticket Granting Ticket) Запрос на услугу Билет для имени узла. Вопрос1) Где должен находиться KDC? Может ли быть на машине, где присутствует мой узел имени или отслежыватель заданий?

Шаги 5,6,7,8 и 9 представляют: - Показать билет на обслуживание, чтобы назвать узел, получить подтверждение. Имя узла будет выдавать Делегирование токен (красный) Пользователь сообщит о Renewer лексем (в данном случае это Job Tracker)

Вопрос2) Пользователь подает thisDelegation Токен вместе с заданием на Job Tracker. Будет ли общий токен делегирования включен в Task Tracker?

Шаги 10,11,12,13 и 14 представляют собой: - Задать билет службы для работы трекера, получить билет службы от KDC Показать этот билет для работы Tracker и получить ACK от JobTracker Добавить работу + Токенция для JobTracker.

Шаги 15, 16 и 17 представляют: - Генерируют токен доступа к блоку и распространяются по всем узлам данных. Отправить blockID и блокировать доступ к Токен работы Tracker и Job Tracker будет передать его на TaskTracker

Вопрос 3) Кто будет просить за BlockAccessToken и идентификатор блока от имени узла? JobTracker или TaskTracker

Извините, я пропустил номер 18 по ошибке. Step19 представляет: - Job tracker генерирует токен работы (коричневый) и передает его в TaskTrackers.

Вопрос4) Могу ли я заключить, что на одного пользователя, который будет распространяться по всему кластеру, будет один токен делегирования, а будет один токен задания на задание? Таким образом, у пользователя будет только один токен делегирования и многие токены работы (равные количеству заданий, представленных им).

Скажите, пожалуйста, если я пропустил что-то или я ошибся в какой-то момент моего объяснения.

+1

Rohit! Хороший анализ; У вас было какое-то решение для защиты Hadoop? Если да, можете ли вы поделиться ответом в этом сообщении? –

+0

Пожалуйста, уточните ответ, если вы получили его @Rohit Sarewar – Rengasamy

ответ

0

шаги, чтобы следовать, чтобы убедиться, что Hadoop является безопасным

  1. Установка Kerberos в любом сервере, доступном для всех узлов кластера. ня установить krb5-сервер ни установить krb5 рабочие станции ня установить krb5-LIBS

  2. Изменение конфигурацию файл конфигурацию сервера KDC для установки аКЛы файлов, администратор Keytab файлов, для хоста. /var/kerberos/krb5kdc/kdc.conf

  3. Конфигурация Изменить файл /etc/krb5.conf для настройки KDC хоста и администратор сервера

  4. Создание базы данных в KDC хоста

    $ kdb5_util создать - г host_name -s

  5. Добавить администраторов в файл ACL

    1. VI /etc/kdamin.acl
    2. Добавить администратор принципала админ/админ @ имя_хост 'в этом файл
  6. Добавить ADMIN принципалу $ addprinc админ/админ @ имя_хост

Установка клиентов Kerberos на все узлы кассетного

yum install krb5-рабочая станция

Скопируйте krb5.conf на все узлы кластера

Убедитесь, чтобы включить безопасный режим в Hadoop путем установки требуемых конфигураций https://hadoop.apache.org/docs/current/hadoop-project-dist/hadoop-common/SecureMode.html

Проверка:

  • Войти как обычный пользователь к кластеру шлюз или узел, где развертываются keytabs пользователя
  • Run «Kinit -k -t/location/of/keytab имя_пользователя @ host_name "
  • И запускать команды HDFS или выполнять задания mapreduce для проверки защиты кластера

Это основные шаги, чтобы убедиться, что в вашем кластере включен kerberos.