Установка сервера afs

Установка сервера afs.

Содержание

1 Первоначальная установка

2 Предварительные замечания

2.1 Минимальная установка

  • Для простой установки можно использовать один сервер для размещения Kerberos KDC, сервера базы данных OpenAFS и файлового сервера OpenAFS.
  • Для производственной среды рекомендуется развернуть Kerberos KDC на выделенном безопасном сервере, серверы баз данных OpenAFS — на трех отдельных компьютерах, а при необходимости — несколько файловых серверов.

2.2 Дисковые разделы

  • Понадобится хотя бы один раздел на файловом сервере для хранения томов для AFS.
  • Его надо будет примонтировать в /vicepa.
  • Если необходимо несколько разделов, их можно смонтировать в /vicepb, /vicepc и т. д.
  • Файловый сервер использует файловое хранилище (не блочное).
  • Файловые системы: ext3, ext4, xfs.
  • Лучше создать для этого отдельную партицию.

2.3 Сеть

  • DNS должен работать правильно при прямом и обратном поиске имён.
  • Серверам необходим хотя бы один интерфейс IPv4, доступный клиентам AFS. Интерфейсы IPv6 пока не поддерживаются.

2.4 Синхронизация времени

  • Kerberos и, следовательно, OpenAFS требуют хорошей синхронизации часов между клиентами и серверами.

3 Брандмауэр

  • Настройки брандмауэра по умолчанию в RHEL будут блокировать сетевые порты, используемые Kerberos и OpenAFS.
  • Необходимо настроить правила брандмауэра на серверах, чтобы разрешить трафик через эти порты.

3.1 Сервер Kerberos

  • На сервере Kerberos откройте порты udp 88 и 646:
    1firewall-cmd --zone=public --add-port=88/udp
    2firewall-cmd --zone=public --add-port=646/udp
    3firewall-cmd --runtime-to-permanent
    

3.2 Сервер баз данных OpenAFS

  • На серверах баз данных OpenAFS откройте udp-порты 7002, 7003 и 7007:
    1firewall-cmd --zone=public --add-port=7002/udp
    2firewall-cmd --zone=public --add-port=7003/udp
    3firewall-cmd --zone=public --add-port=7007/udp
    4firewall-cmd --runtime-to-permanent
    

3.3 Файловый сервер OpenAFS

  • На файловых серверах OpenAFS откройте udp-порты 7000, 7005 и 7007:
    1firewall-cmd --zone=public --add-port=7000/udp
    2firewall-cmd --zone=public --add-port=7005/udp
    3firewall-cmd --zone=public --add-port=7007/udp
    4firewall-cmd --runtime-to-permanent
    

3.4 Клиент OpenAFS

  • Клиенты OpenAFS используют порт udp 7001. Откройте порт udp 7001 в любой системе, в которой установлен клиент OpenAFS:
    1firewall-cmd --zone=public --add-port=7001/udp
    2firewall-cmd --runtime-to-permanent
    

4 Установка Kerberos

  • Установите серверный и клиентский пакеты Kerberos:
    1dnf install -y krb5-server krb5-workstation krb5-libs
    
  • Замените все примеры имени хоста kerberos.example.com фактическим именем вашего сервера Kerberos в файле /etc/krb5.conf.

4.1 Сервер Kerberos

  • На машине сервера Kerberos настройте замените каждый экземпляр EXAMPLE.COM именем своей области в следующих файлах конфигурации:
  • /etc/krb5.conf
  • /var/kerberos/krb5kdc/kdc.conf
  • /var/kerberos/krb5kdc/kadm5.acl
  • Замените все примеры имени хоста kerberos.example.com фактическим именем вашего сервера Kerberos в файле /etc/krb5.conf.
  • Создайте базу данных Kerberos с помощью команды krb5_util (вам будет предложено ввести основной пароль):
    1/usr/sbin/kdb5_util create -s
    
  • Запустите серверы Kerberos:
    1systemctl start krb5kdc
    2systemctl start kadmin
    3systemctl enable krb5kdc
    4systemctl enable kadmin
    

5 Компиляция программного обеспечения

5.1 Компиляция сервера

  • Исходные архивы OpenAFS доступны на веб-сайте OpenAFS.
  • Нужно будет собрать собрать RPM-пакеты с помощью команды rpmbuild.
  • Установите необходимое программное обеспечение:
    1dnf install rpm-build yum-utils make perl libtool bzip2 wget -y
    
  • Скачайте пакет исходных кодов для openafs:
    1wget https://www.openafs.org/dl/openafs/<version>/openafs-<version>-1-src.rpm
    
  • Здесь <version> указывается версия OpenAFS, которую вы хотите установить, например 1.8.10:
    1wget https://www.openafs.org/dl/openafs/1.8.10/openafs-1.8.10-1.src.rpm
    
  • Установите необходимы зависимости:
    1dnf builddep openafs-<version>-1.src.rpm
    
  • Откомпилите исходные коды:
    1rpmbuild --rebuild --define "build_userspace 1" --define "build_modules 0" openafs-<version>-1.src.rpm
    
  • Здесь вы не компилите модули ядра, соответственно не сможете использовать сервер как клиента.
  • Можно откомпилить всё с поддержкой моделей ядра (см. компиляцию для клиентов).

5.2 Компиляция клиента

  • Модуль ядра OpenAFS должен соответствовать вашей версии ядра.

  • Если вы не поддерживаете локальный репозиторий, который отслеживает каждый выпуск ядра и обновляет его сборки kmod, вам нужно будет использовать механизм DKMS для установки модуля ядра.

  • Установите необходимое программное обеспечение:

    1dnf install rpm-build yum-utils make perl libtool bzip2 wget -y
    
  • Скачайте пакет исходных кодов для openafs:

    1wget https://www.openafs.org/dl/openafs/<version>/openafs-<version>-1-src.rpm
    
  • Здесь <version> указывается версия OpenAFS, которую вы хотите установить, например 1.8.10:

    1wget https://www.openafs.org/dl/openafs/1.8.10/openafs-1.8.10-1.src.rpm
    
  • Установите необходимы зависимости:

    1dnf builddep openafs-<version>-1.src.rpm
    
  • Установите версия ядра для разработчиков:

    1dnf install -y "kernel-devel-uname-r == $(uname -r)"
    2dnf install -y elfutils-devel
    3dnf install -y dkms gcc kernel-devel kernel-headers
    
  • Откомпилите исходные коды:

    1rpmbuild --rebuild openafs-<version>-1.src.rpm
    

6 Установка сервера OpenAFS

6.1 Установка сервера

  • Установите серверные пакеты OpenAFS из каталога RPMS rpmbuild:
    1cd ~/rpmbuild/RPMS/x86_64
    2dnf install -y openafs-<version>-1.el9.x86_64.rpm openafs-server-<version>-1.el9.x86_64.rpm openafs-docs-<version>-1.el9.x86_64.rpm openafs-krb5-<version>-1.el9.x86_64.rpm
    

6.2 Установка клиента

  • При установке менеджера кэша на сервере OpenAFS сначала удалите символические ссылки, созданные bosserver. Это будет мешать, если клиент установлен.
    1test -h /usr/vice/etc/ThisCell && rm /usr/vice/etc/ThisCell
    2test -h /usr/vice/etc/CellServDB && rm /usr/vice/etc/CellServDB
    
  • Обязательно перезагрузитесь перед установкой модуля ядра OpenAFS.
  • Установите пакеты OpenAFS из каталога RPMS rpmbuild:
    1cd ~/rpmbuild/RPMS/x86_64
    2dnf install -y  openafs-<version>-1.el9.x86_64.rpm openafs-client-<version>-1.el9.x86_64.rpm openafs-krb5-<version>-1.el9.x86_64.rpm dkms-openafs-<version>-1.el9.x86_64.rpm
    

Дмитрий Сергеевич Кулябов
Дмитрий Сергеевич Кулябов
Профессор кафедры теории вероятностей и кибербезопасности

Мои научные интересы включают физику, администрирование Unix и сетей.

Похожие