Как устроенна безопасность Kablink.

Ведение.

 Администратор Kablink, должен понимать как настраивать права пользователей в рабочих областях и папках. Вопросы безопасности Портала тесно связанны с правами доступа и носят немного запутанный характер, в этой публикации попробуем разобраться в этом вопросе, но прежде договоримся о терминологии сокращений:

  • Термины.
    • область — Домашняя рабочая область, Глобальная рабочая область, Персональная рабочая область, Рабочая область коллектива
    • по умолчанию — все настройки рассматриваются в «коробочном» варианте, все роли и права остаются, как после первой установки Kablink
    • (наследование снято) — означает, что нет наследования от родителя
    • роль — набор правил
    • гость — пользователь с минимальными правами доступа, только просмотр

 Kablink представляет собой иерархию рабочих областей и папок с наследуемыми параметрами контроля доступа от родительских областей и папок. Безопасность Kablink, основана на управления ролями доступа, по умолчанию, существует двенадцать ролей для рабочих областей и папок и пять ролей для записей. Если нужно, чтобы конкретный пользователь имел определенные права, то ему необходимо присвоить соответствующую роль. Например, пользователь с ролью участник-гость в рабочей области или папке, владеет следующими правами: добавлять комментарии и ответы, создавать записи, читать записи.

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

Определения.

  • Типы пользователей.
    • встроенные
    • по умолчанию
    • пользователи
    • группы

 Встроенные пользователи.

 Kablink, по умолчанию, имеет двух пользователей и роли связанные с ними, помимо них имеются и другие, но они относятся скорее к службам Портала. Отметим, что владелец рабочей области или папки и участники коллектива это как бы одно лицо, но тем ни менее имеется некоторая двойственность, которая позволяет разделять их. Эту парочку мы будем встречать везде т.к парадигма коллектива является сутью работы Kablink.

Пользователь.

Роль.

Владелец рабочей области или папки.Администратор рабочей области и папки.
Участники коллектива.Участники коллектива.
Таблица №1

 Встроенные группы.

 Kablink,  по умолчанию,  имеет четыре группы пользователей.

Заголовок группы \ Имя группы

Роль.

Admin \ administratorАдминистратор рабочей области и папки.
All \ allВсе пользователи Портала.
Все внешниеГруппа «Все внешние пользователи» содержит список всех внешних пользователей.
Все внутренние пользователи \ allusersГруппа «Все пользователи» содержит список всех зарегистрированных пользователей, кроме учетной записи «Гость».
Таблица №2

Встроенные Роли для рабочих областей и папок.

 В Kablink встроены четыре рабочие области, где можно создавать папки с наследуемыми правами. Корневой областью является Домашняя в неё входит: глобальная, персональная и область коллективов. В таблице указанны все роли которые можно добавлять для управления доступом в областях, * указаны роли, по умолчанию, установленные в Домашней области, которые наследуются всеми областями и папками по умолчанию.

Роль.

Права.

Администратор рабочей области и папкиСоздавать, изменять, удалять рабочие области\папки
Посетитель.Читать ,добавлять комментарии.
Просмотр заголовка средства привязки.Просмотр заголовка средства привязки.
Разрешить общедоступное совместное использование.Разрешить общедоступное совместное использование
Разрешить передачу прав на предоставление совместного доступа.Разрешить передачу прав на предоставление совместного доступа.
Разрешить предоставлять общий доступ к ссылкам на файлы.Совместное использование файловых ссылки
Разрешить совместное использование для внешних пользователей.Разделять рабочие области и папки с внешними пользователями.
Разрешить совместное использование для внутренних пользователей.Разделять рабочие области и папки с внутренними пользователями.
Создатель рабочей области.Добавление рабочих областей.
Участник коллектива.Добавить комментарии или ответы, загрузить папку как CSV-файл, Изменить, переименовать, удалить собственные записи. Создание отчетов и записей. Управление глобальными тегами. Чтение записей. Элементы управления доступом на уровне записи создает владелец.
Участник-гость.Добавить комментарии или ответы. Создать записи. Чтение записей.
Участник.Добавить комментарии или ответы, загрузить папку как CSV-файл, Изменить, переименовать, удалить собственные записи. Создание отчетов и записей. Управление глобальными тегами. Чтение записей. Элементы управления доступом на уровне записи создает владелец.
Таблица №3

Встроенные Роли для записей.

 Под записью в Kablink будем понимать — контент, фото, видео, файлы прикреплении, в общем всё, что может находится в папке.

Роль

Права

ЗаписатьДобавить комментарии или ответы, изменять и переименовывать записи, Создание отчетов, Управление глобальными тегами,Чтение записей
Изменить права доступаДобавить комментарии или ответы, Изменение записей, Изменение прав доступа, Переименовать записи, Создание отчетов, Удаление записей, Управление глобальными тегами, Чтение записей.
Прочитать и ответитьДобавить комментарии или ответы, Чтение записей.
ПрочитатьЧтение записей.
Удалить.Добавить комментарии или ответы, изменять и переименовывать записи, Создание отчетов, Удаление записей, Управление глобальными тегами, Чтение записей.
Таблица №4

Домашняя рабочая область (корень).

 Выше упоминалась, что Домашняя рабочая область — корень для областей и папок. Установленные в ней, по умолчанию, роли и права наследуются без исключения всеми областями и папками Портала.

Пользователь\Группа

Роль.

Владелец рабочей области или папки.Администратор рабочей области и папки.
Участники коллектива.Участники коллектива.
Группа admin (administrator)Администратор рабочей области и папки.
Группа Все внутренние пользователи (allusers)Посетитель, Участник.
Гость. (по умолчанию выключен)Посетитель.
Таблица №5

Персональные рабочие области.

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

Имя пользователя. Роль.
Владелец рабочей области или папкиРазрешить совместное использование для внутренних пользователей, Разрешить совместное использование для внешних пользователей, Разрешить передачу прав на предоставление совместного доступа, Разрешить общедоступное совместное использование, Разрешить предоставлять общий доступ к ссылкам на файлы, Посетитель, Участник, Участник коллектива, Администратор рабочей области и папки
Участники коллектива.Посетитель, Участник, Участник коллектива, Администратор рабочей области и папки
Таблица №6

Создание https соединения Kablink.

Ведение.

 Рассмотрим последовательность действий, для включения дополнительной защиты по HTTPS протоколу, если это требуется политикой предприятия, отметим при этом, что ключи сертификата подлинности бывают: самоподписанными, подписанный центром сертификации (СA) вашей организации, подписанный коммерческим центром (СА) на определённый срок и за определённую плату.

Последовательность действий для формирования ключей.

  • Порядок действий.
    • создать (генерировать) сертификат подлинности
    • на основе созданного сертификата подлинности, создать и отправит запрос в виде .csr файла в СА центр
    • после получения ответа из СА, импортировать полученные ключи в созданный ранние сертификат подлинности
    • импортировать подписанный сертификат подлинности в хранилище Портала
    • перегрузит Портал

 Каталоги хранения keystore.

В java сертификат подлинности называется .keystore,точка указывает на скрытый характер этого файла, хранится он в каталоге /opt/novell/teaming/apache-tomcat/conf, путь для хранения файла .keystore и пароль доступа к нему при операции импорта, указан в /opt/novell/teaming/apache-tomca/con/server.xml файле, значения можно менять, но лучше этого не делать.

 Наша задача состоит в том, что бы полученный тем или иным способом файл сертификата подлинности, импортировать в хранилище и сделать это надо аккуратно и правильно иначе порт 8443 просто не «заведётся».

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

 Виды SSL ключей, утилита keytool.

  • сертификат выданный коммерческим центром сертификации СА, при этом браузеры пользователей будут автоматически принимать их при некоторой задержке в ожидании подтверждения от СА
  • сертификат подписанный СА вашего предприятия и собственный
  • самоподписанный, пользователи будут получать предупреждения при первом соединении с требованием «ручного» подтверждения подлинности при открытии ssl соединения c Порталом в браузере

 Для создания сертификата и его импорта в хранилище существует утилита keytool находится, по умолчанию, в установленном каталоге jdk/bin.

 Рассмотрим несколько теоретически возможных вариантов и манипуляций при создании и импорте сертификата подлинности в хранилище Kablink используя знания из практики работы.

 Подготовка каталогов и путей.

  • Добавляем переменную пути к keytool:
    • export PATH=$PATH:/usr/java/jdk1.8.0_xx/bin/
  • Создаём временный каталог:
    • mkdir /home/mms/sert переходим cd /home/sert

 Создание SSL ключа.

ДействиеПояснения
keytool -genkey -alias tomcat -keyalg RSA -keystore .keystoreЗапускаем сценарий создания ключа сертификата, срок не определён
Enter keystore password: changeitПароль по умолчанию
Re-enter new password: changeitПодтверждение пароля
What is your first and last name?Имя домена
[ Unknown]: moyportal.ru  
What is the name of your organizational unit?Имя подразделения организации
[Unknown]: smal 
What is the name of your organization?Имя организации
[Unknown]: big 
What is the name of your City or Locality?Город
[Unknown]: Moscow 
What is the two-letter country code for this unit?Страна
Unknown]: RU 
Is CN=moyportal.ru, OU=smal, O=big, L=Moscow, ST=Moscow, C=RU correctПроверить данные
[no]: yesЕсли правильно\неправильно
Enter key password for <tomcat>Пароль для контейнера tomcat
(RETURN if same as keystore password): changeit 
Re-enter new password: changeitПодтвердить пароль
Таблица №7

Генерация запроса на подпись CSR.

# keytool -certreq -alias tomcat -keyalg RSA -file certreq.csr -keystore .keystore 

 Импорт полученного отпечатка подписи из центра CA, псевдоним root, в .keystore.

# keytool -import -alias root -trustcacerts -keyalg RSA -keystore .keystore -file CertificateAuthorityCert.der

 Импорт полученного отпечатка подписи из центра CA,псевдоним tomcat, в .keystore.

# keytool -import -alias tomcat -keyalg RSA -keystore .keystore -file certificate_name.cer

 Импорт подписанного центром СА сертификат в хранилище Kablink.

# mv /opt/novell/teaming/apache-tomcat/conf/.keystore keystorebk # cp /home/sert/.keystore /opt/novell/teaming/apache-tomcat/conf # ls -al /opt/novell/teaming/apache-tomcat/conf/.keystore # /etc/init.d/teaming restart
  • Проверка порта 443.
    • https://moyportal.ru :844

 Использования СА ALT Linux.

  • 5. Открываем ЦУС >[Система]>[Удостоверяющий центр УЦ].
    • 5.1 Выполняем действия пункта 1 и 2, переходим в УЦ, выполняем:
    • [Система]>[Удостоверяющий Центр]>[Загрузить запрос]>[Подписать] на выходе отгружается файл output.pem
    • [ Система]>[Удостоверяющий Центр]>[Управление УЦ]отгружаем корневой сертификат ca-root.pem

Расширение pem — Privacy Enhanced Mail Certificate

 Теперь можно импортировать отпечатки созданные УЦ ЦУС в сертификат подлинности .keystore:

# keytool -import -alias root -keyalg RSA -keystore .keystore -file ca-root.pem # keytool -import -alias tomcat -keyalg RSA -keystore .keystore -file output.pem

Выполнить пункты 3 и 3.1

УЦ Alt Linux должен быть встроен в цепочку СА вашей организации.

Использование СА MS AD.

 Нам надо получить сертификат для экспорта в хранилище AD, это можно сделать используя браузер например IE. В адресной строке вводим название Портала, https://moyportal.ru, читаем и игнорируем предупреждение, производим импорт ключа в хранилище сертификатов рабочей станции Windows.

  • В браузере IE открываем:
    • Сервис>[Свойство обозревателя]>[Содержание]>[Сертификаты]> производим импорт ключа Портала в файл с расширением, portal.der или portal.p7b
    • Отправляем сертификат Портала, portal.der/portal.p7b, в контейнер корневого центра сертификации предприятия, находится на DC Active Directory, в папки «Промежуточный центр сертификации» и «Доверенные корневые центры сертификации».
    • Через некоторое время у пользователей в хранилищах сертификатов рабочих станций, появятся сертификаты Портала распространяемые по групповой политике AD — ручная команда для обновления групповой политики GPUpdate.exe.

URL Портала должен присутствовать в списке доверенных адресов корневого центра сертификации AD.

Заключение.

Защита соединения Kablink становится особенно актуальным, когда требования к хранению документов Портала будет возрастать по мере увеличения объёма количества публикаций и создаваемого массива архива и срока хранения принятых в организации.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *