Настройка на HPC изчислителен сървър за извличане на POSIX потребителска информация от LDAP директориен сървърСъдържание:
1. Предварителна информацияЦелта на този документ е да покаже по какъв начин един HPC изчислителен сървър (на който се изпълняват потребителските задачи), взаимодейства със записите, направени за POSIX потребителите в LDAP директорийния сървър, съгласно процедурата описана в документа "Инсталиране и конфигуриране на 389 директориен сървър за удостоверяване на потребителите в HPC под CentOS 7 и Scientific Linux 7". Отбележете следното важно обстоятелство (важи за повечето HPC инфраструктури): Изчислителните сървъри в HPC инфраструктурата НЕ УДОСТОВЕРЯВАТ POSIX потребители, защото използват само част от информацията, описана в потребителския профил, която не включва паролата или SSH публичния ключ. Въпреки, че тези сървъру изпълняват процеси със собсвеността на конкретния POSIX потребител, процесите се стартират от мениджъра на задачи, от името на потребителя, след като са зададени в опашката на този мениджър. Това означава, че на HPC изчислителните сървъри, не е нужно да бъде достъпвана информацията за потребителската парола, а също така не е нужно да се създават локални копия на SSH публичните ключове на потребителите. Удостоверителната информация е нужна само на HPC порталните сървъри, в системата на които потребителите влизат на база на протокола SSH (или през web-интерфейс, ако такъв, има) и задават задачите за изпълнение.
2. Настройка за криптиране на обменяната с LDAP сървъра информация, чрез TLSЦелта на използването на TLS между локалния за системата LDAP клиент и LDAP директорийния сървър, е да предотврати евентуално подслушване на обменяната информация и нейната подмяна. Използването на криптирана комуникация "клиент-сървър" е от критична важност! Първата стъпка в процедурата по създаване на настройките за използване на криптирана комуникация, е създадаването на директория, в която да поставите удостоверителския (CA) X.509 сертификат, чрез който се проверява автентичността на веригата на сертификата на LDAP директорийния сървър. За примерите по-долу, тази директория е: /etc/openldap/cacerts но ако желаете или това е нужно, може да използвате и друга директория. След като я създадете (ако не е създадена преди това), влезте в нея, поставете там копие от X.509 сертификата на удостоверителя (може да поставите повече от един такъв) и създайте "symlink" обект към хеширания "Subject" на сертификата. В примера по-долу е обяснено как да бъде изтеглен X.509 сертификата на удостоверителя на Софийския Университет и как да се създаде "symlink" обекта (адаптирайте тази стъпка към конкретния за вас случай): # cd /etc/openldap/cacerts # wget https://pki.uni-sofia.bg/crt/SU_ECC_Root_CA.crt # ln -s SU_ECC_Root_CA.crt `openssl x509 -hash -in SU20ECC20Root20CA20-20uni-sofia.bg.pem -noout`.0 Ако при създаването на "symlink" обекта (това е последния команден ред по-горе), получите съобщение за грешка от типа: ln: failed to create symbolic link ‘4c5f24de.0’: File exists то или имате този сертификат в директорията (поставен е там преди това и към него има вече създаден "symlink" обкет, чието име завършва на ".0"), или просто стойността на "Subject" полето за два сертификата в директорията съвпада. В този случай, може заменете ".0" в края на името на "symlink" обекта с ".1", или ".2" и т.н, за да няма колизия на имената. Следващата стъпка е настройка на използваните протоколи и шифри, които ще се използва при TLS комуникацията и базова настройка за третиране на потребителските имена. Всичко това трябва да направите като редактирате файла TLS_CACERTDIR /etc/openldap/cacerts TLS_PROTOCOL_MIN 1.2 TLS_CIPHER_SUITE ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384 SASL_NOCANON on Минималната версия на TLS протокола, зададена по-горе като, стойност след деклрацията
3. Използване на authconfig-tui за създаване на настройките за извличане на потребителска информация за POSIX потребителите от LDAP директориен сървърНастройките се създават лесно с използване на инструмента С права на super user (root), изпълнете: # authconfig-tui В псевдографичното меню, което той ще стартира, трябва да изберете "Use LDAP", "Use Shadow Passwords", "Use LDAP Authentication" и след това натиснете "Next" (навигирайте с помощта на клавиша "Tab"): Оперирайки със следващото меню, трябва да въведете името на хост на LDAP сървъра и да укажете къде в дървото, което той поддържа, да бъдат търсени POSIX групите и потребителите: За примера по-горе е използвано името на хост на сървъра hpc-service-host.unite.uni-sofia.bg (предхождано от протоколния локатор ВНИМАНИЕ! Винаги маркирайте "Use TLS", за да защитите комуникацията между локалния LDAP клиент (свързан с PAM) и LDAP директориния сървър! След натискането на бутона "OK" (навигирайте до него чрез клавиша "Tab"), ще бъдете върнати в командния интерпретатор. С това настройките са завършени. Не е нужно да рестартирате системата. Настройките влизат в сила веднага. Единствено трябва да проверите дали комуникацията с LDAP директорийния сървър функционира правилно и се извлича информация за потребителите. Например, изпълнявайки следния команден ред (заменете потребителското име vesso в примера, с POSIX име, което имате регистрирано в LDAP директорията): # id vesso Ако комуникацията с LDAP сървъра е установена и заявките за извличане на информацията за POSIX потребителите се обслужват, ще получите отговор като този: uid=1000(vesso) gid=1000(vesso) groups=1000(vesso) В случай, че не получите подобен отговор, трябва да проверите дали се осъщствява комуникация с LDAP сървъра и дали записите за потребителите се търсят там, където трябва. |
Последна актуализация: 18 април 2019
2019 УНИТе, Веселин Колев