LINUX.ORG.RU
ФорумAdmin

Apache + kerberos + sso + cross domain authentication

 , , ,


0

1

Hello World Lor!

Дано :

  • Linux сервер ( intranet.example.com )
  • AD Серер example.com

На intranet'е настроен apache + kerberos + sso. Всё прекрасно работает. Вот только появилось требование - сделать чтобы приложение работало и на другом домене ( допустим domain.com) но с аутентификацией пользователей с домена example.com. Если просто добавить/изменить virtualhost то по новому домену sso аутентификация перестаёт работать.

Внимание вопрос : Как настроить некий cross domain authentication?

★★★★★

сделать чтобы приложение работало и на другом домене ( допустим domain.com) но с аутентификацией пользователей с домена example.com

Не совсем вдуплил. Просто хочешь чтобы оно авторизовало юзеров из обоих доменов?

Если так, то как я понимаю тебе нужно:

1. KrbAuthRealms example.com domain.com

2. Получить у обоих доменов keytab на твой сайт и их слепить в один (через какую-то тулзу из комплекта кербероса можно, не помню какую :)

3. В /etc/krb5.conf прописать параметры обоих доменов.

Что-то такое у меня было, тоже вылезли проблемы какие-то.

Либо почитать ещё про доверие, типа https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/7/html...

blind_oracle ★★★★★ ()
Последнее исправление: blind_oracle (всего исправлений: 2)
Ответ на: комментарий от blind_oracle

AD = site1.com
Сейчас приложение находится по адресу intranet.site1.com
Всё работает.

Нужно сделать чтобы приложение было доступно по адресу site2.com

Update

Просто хочешь чтобы оно авторизовало юзеров из обоих доменов?

AD только один.

snaf ★★★★★ ()
Последнее исправление: snaf (всего исправлений: 1)
Ответ на: комментарий от snaf

Нужно сделать чтобы приложение было доступно по адресу site2.com

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

blind_oracle ★★★★★ ()
Ответ на: комментарий от blind_oracle

Это возможно провернуть имея только 1 AD сервер?

snaf ★★★★★ ()
Ответ на: комментарий от snaf

Вайнот? Генеришь кейтаб для имени site2.com и во второй виртуалхост его.

blind_oracle ★★★★★ ()
Ответ на: комментарий от blind_oracle

Вайнот?

Какие то сомнения пошли уже у меня. Сегодня пару часов потратил на это, но так и не завелось.

snaf ★★★★★ ()
Ответ на: комментарий от snaf

Будет работать, стопрацентаф. У меня как-то один сайт так работал некоторое время. Объеденив два кейтаба, думаю, можно и в один виртуалхост упихать, но не проверял.

blind_oracle ★★★★★ ()
Ответ на: комментарий от blind_oracle

У меня как-то один сайт так работал некоторое время

тогда поделись /etc/krb5.conf конфигом пожалуйста

snaf ★★★★★ ()
Ответ на: комментарий от snaf
[appdefaults]
    pam = {
        debug = false
        alt_auth_map = %s
        force_alt_auth = true
        ticket_lifetime = 24h
        renew_lifetime = 24h
        forwardable = true
    }

[libdefaults]
    default_realm = DOMAIN1.RU
    kdc_timesync = 1
    ccache_type = 4
    forwardable = true
    proxiable = true
    ticket_lifetime = 24h
    dns_lookup_realm = false
    dns_lookup_kdc = false
    rdns = false

    default_tgs_enctypes = rc4-hmac
    default_tkt_enctypes = rc4-hmac
    permitted_enctypes = rc4-hmac

[realms]
    DOMAIN1.RU = {
        kdc = 10.1.0.9
        kdc = 10.1.0.10
        admin_server = 10.1.0.9
        admin_server = 10.1.0.10
        default_domain = DOMAIN1.RU
    }

    DOMAIN2.LOCAL = {
        kdc = 10.1.0.43
        kdc = 10.1.0.46
        admin_server = 10.1.0.43
        admin_server = 10.1.0.46
        default_domain = DOMAIN2.LOCAL
    }

[domain_realm]
    .domain1.ru = DOMAIN1.RU
    domain1.ru = DOMAIN1.RU

    .domain2.local = DOMAIN2.LOCAL
    domain2.local = DOMAIN2.LOCAL

Vhost:

...
        AuthType Kerberos
        AuthName "Support Login"
        Krb5Keytab /etc/apache2/keytabs/support.domain1.ru.keytab
        KrbAuthoritative On
        KrbLocalUserMapping On
        KrbMethodNegotiate On
        KrbMethodK5Passwd On
        KrbAuthRealms DOMAIN1.RU
        Require valid-user
...
Как-то так.

blind_oracle ★★★★★ ()
Ответ на: комментарий от blind_oracle

судя по твоему конфигу у тебя разные kdc для доменов. У тебя для каждого домена отдельный AD?

snaf ★★★★★ ()
Ответ на: комментарий от snaf

В данном случае да. В твоём случае всё проще - в krb5.conf только один домен.

В апаче два виртуалхоста, для каждого отдельный кейтаб через ktpass сгенерируй под его имя и укажи его в виртуалхосте.

blind_oracle ★★★★★ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.