OTRS.ru • Просмотр темы - Как разделить index.pl и customer.pl

Как разделить index.pl и customer.pl

Запросы на решение проблем

Модератор: ykolesnikov

Как разделить index.pl и customer.pl

Сообщение firebolt » 08 авг 2017, 07:19

Всех приветствую!
Обновил тему.
Столкнулся с дурацкой проблемой, нужен совет. Настроил сквозную аутентификацию в OTRS с использованием keytab-файла, но теперь сам не могу войти в OTRS. Мой компьютер не входит в домен, я работаю в openSuSE и это создало мне проблемы :D В окне браузера выходит форма ввода пароля, куда я вводил и sAMAccountName, и userPrincipalName, и mail... В общем, не пускает.

Теперь есть идея разделить конфиг Apache и сделать два отдельных сайта для index.pl и customer.pl. Помогите пожалуйста, грамотно их разделить. Я не могу понять, какая часть файла отвечает за вход в агентскую, а какая - в клиентскую части сайта.

Вот он родной конфиг Apache:

Код: выделить все

ScriptAlias /otrs/ "/opt/otrs/bin/cgi-bin/"
Alias /otrs-web/ "/opt/otrs/var/httpd/htdocs/"

<IfModule mod_perl.c>

    # Setup environment and preload modules
    Perlrequire /opt/otrs/scripts/apache2-perl-startup.pl

    # Reload Perl modules when changed on disk
    PerlModule Apache2::Reload
    PerlInitHandler Apache2::Reload

    # general mod_perl2 options
    <Location /otrs>
#        ErrorDocument 403 /otrs/customer.pl
        ErrorDocument 403 /otrs/index.pl
        SetHandler  perl-script
        PerlResponseHandler ModPerl::Registry
        Options +ExecCGI
        PerlOptions +ParseHeaders
        PerlOptions +SetupEnv

        <IfModule mod_version.c>
            <IfVersion < 2.4>
                Order allow,deny
                Allow from all
            </IfVersion>
            <IfVersion >= 2.4>
                Require all granted
            </IfVersion>
        </IfModule>
        <IfModule !mod_version.c>
            Order allow,deny
            Allow from all
        </IfModule>
    </Location>

    # mod_perl2 options for GenericInterface
    <Location /otrs/nph-genericinterface.pl>
        PerlOptions -ParseHeaders
    </Location>

</IfModule>

<Directory "/opt/otrs/bin/cgi-bin/">
    AllowOverride None
    Options +ExecCGI -Includes

    <IfModule mod_version.c>
        <IfVersion < 2.4>
            Order allow,deny
            Allow from all
        </IfVersion>
        <IfVersion >= 2.4>
            Require all granted
        </IfVersion>
    </IfModule>
    <IfModule !mod_version.c>
        Order allow,deny
        Allow from all
    </IfModule>

    <IfModule mod_filter.c>
        <IfModule mod_deflate.c>
            AddOutputFilterByType DEFLATE text/html text/javascript application/javascript text/css text/xml application/json text/json
         </IfModule>
    </IfModule>

</Directory>

<Directory "/opt/otrs/var/httpd/htdocs/">
    AllowOverride None

    <IfModule mod_version.c>
        <IfVersion < 2.4>
            Order allow,deny
            Allow from all
        </IfVersion>
        <IfVersion >= 2.4>
            Require all granted
        </IfVersion>
    </IfModule>
    <IfModule !mod_version.c>
        Order allow,deny
        Allow from all
    </IfModule>

    <IfModule mod_filter.c>
        <IfModule mod_deflate.c>
            AddOutputFilterByType DEFLATE text/html text/javascript application/javascript text/css text/xml application/json text/json
         </IfModule>
    </IfModule>

    # Make sure CSS and JS files are read as UTF8 by the browsers.
    AddCharset UTF-8 .css
    AddCharset UTF-8 .js

    # Set explicit mime type for woff fonts since it is relatively new and apache may not know about it.
    AddType application/font-woff .woff

</Directory>

# Allow access to public interface for unauthenticated requests on systems with set-up authentication.
# Will work only for RegistrationUpdate, since page resources are still not be loaded.
# <Location /otrs/public.pl>
#     <IfModule mod_version.c>
#         <IfVersion < 2.4>
#             Order allow,deny
#             Allow from all
#         </IfVersion>
#         <IfVersion >= 2.4>
#             Require all granted
#         </IfVersion>
#     </IfModule>
#     <IfModule !mod_version.c>
#         Order allow,deny
#         Allow from all
#     </IfModule>
# </Location>

<IfModule mod_headers.c>
    # Cache css-cache for 30 days
    <Directory "/opt/otrs/var/httpd/htdocs/skins/*/*/css-cache">
        <FilesMatch "\.(css|CSS)$">
            Header set Cache-Control "max-age=2592000 must-revalidate"
        </FilesMatch>
    </Directory>

    # Cache css thirdparty for 4 hours, including icon fonts
    <Directory "/opt/otrs/var/httpd/htdocs/skins/*/*/css/thirdparty">
        <FilesMatch "\.(css|CSS|woff|svg)$">
            Header set Cache-Control "max-age=14400 must-revalidate"
        </FilesMatch>
    </Directory>

    # Cache js-cache for 30 days
    <Directory "/opt/otrs/var/httpd/htdocs/js/js-cache">
        <FilesMatch "\.(js|JS)$">
            Header set Cache-Control "max-age=2592000 must-revalidate"
        </FilesMatch>
    </Directory>

    # Cache js thirdparty for 4 hours
    <Directory "/opt/otrs/var/httpd/htdocs/js/thirdparty/">
        <FilesMatch "\.(js|JS)$">
            Header set Cache-Control "max-age=14400 must-revalidate"
        </FilesMatch>
    </Directory>
</IfModule>

# Limit the number of requests per child to avoid excessive memory usage
MaxRequestsPerChild 4000



Кусок Config.pm:

Код: выделить все
    # Синхронизация БД OTRS с БД LDAP   

    $Self->{'AuthSyncModule'} = 'Kernel::System::Auth::Sync::LDAP';
    $Self->{'AuthSyncModule::LDAP::Host'} = 'maindc.domain.local';
    $Self->{'AuthSyncModule::LDAP::BaseDN'} = 'dc=domain,dc=local';
    $Self->{'AuthSyncModule::LDAP::UID'} = 'sAMAccountName';
    $Self->{'AuthSyncModule::LDAP::AccessAttr'} = 'member';
    $Self->{'AuthSyncModule::LDAP::SearchUserDN'} = 'CN=adreader,OU=Administrators,DC=domain,DC=local';
    $Self->{'AuthSyncModule::LDAP::SearchUserPw'} = 'password';
   
    # Enable Agent Mapping from LDAP to DB #
    $Self->{'AuthSyncModule::LDAP::UserSyncMap'} = {
    UserFirstname => 'givenName',
    UserLastname => 'sn',
    UserEmail => 'mail',
    };

    $Self->{'AuthSyncModule::LDAP::UserSyncInitialGroups'} = [
        'users',
    ];

        # Авторизация агентов через SSO   
#    $Self->{'AuthModule'} = 'Kernel::System::Auth::HTTPBasicAuth';
#    $Self->{LoginURL} = 'http://svrotrs/otrs/index.pl';
#    $Self->{LogoutURL} = 'http://svrotrs/otrs/thanks-for-using-otrs.html';

#     # Авторизация агентов через LDAP   
    $Self->{'AuthModule'} = 'Kernel::System::Auth::LDAP';
    $Self->{'AuthModule::LDAP::Host'} = 'maindc.domain.local';
    $Self->{'AuthModule::LDAP::BaseDN'} = 'OU=Users,DC=domain,DC=local';
    $Self->{'AuthModule::LDAP::UID'} = 'sAMAccountName';
    $Self->{'AuthModule::LDAP::GroupDN'} = 'CN=otrsAgentsGroup,OU=Groups,DC=domain,DC=local';
    $Self->{'AuthModule::LDAP::AccessAttr'} = 'member';
    $Self->{'AuthModule::LDAP::UserAttr'} = 'DN';
    $Self->{'AuthModule::LDAP::SearchUserDN'} = 'CN=adreader,OU=Administrators,DC=domain,DC=local';
    $Self->{'AuthModule::LDAP::SearchUserPw'} = 'password';

    # Авторизация клиентов через Single-Sign-On (сквозная)
    $Self->{'Customer::AuthModule'} = 'Kernel::System::CustomerAuth::HTTPBasicAuth';
    $Self->{'Customer::AuthModule::HTTPBasicAuth::ReplaceRegExp'} ='@DOMAIN.LOCAL';
    $Self->{CustomerPanelLoginURL1} = 'http://svrotrs/customer.pl';
    $Self->{CustomerPanelLogoutURL1} = 'http://svrotrs/customer.pl';
Последний раз редактировалось firebolt 18 авг 2017, 07:17, всего редактировалось 1 раз.
OTRS 5.0.10
Debian 8 Jessie
MySQL 5.5
firebolt
OTRS Новобранец
 
Сообщений: 169
Зарегистрирован: 13 сен 2012, 13:46

Re: Проблемы сквозной аутентификации

Сообщение alexus » 08 авг 2017, 09:31

Надо смотреть настройки авторизации Apache для index.pl и customer.pl. Скорее всего, надо в них настройки SSO разделить.
С уважением,
Алексей Юсов

Prod: OTRS ITSM 5.0.14 on CentOS 7 x64 Linux with MySQL 5.7

Radiant System OTRS Intergrator RU
Radiant System OTRS Intergrator EN
Хотите внедрить OTRS? Спросите меня как!
Следите за нашими новостями на Facebook
alexus
OTRS Гуру
 
Сообщений: 4197
Зарегистрирован: 20 сен 2010, 18:17
Откуда: Москва

Re: Проблемы сквозной аутентификации

Сообщение firebolt » 08 авг 2017, 09:48

alexus писал(а):Надо смотреть настройки авторизации Apache для index.pl и customer.pl. Скорее всего, надо в них настройки SSO разделить.


Спасибо. Попробую разобраться в них.
OTRS 5.0.10
Debian 8 Jessie
MySQL 5.5
firebolt
OTRS Новобранец
 
Сообщений: 169
Зарегистрирован: 13 сен 2012, 13:46

Re: Проблемы сквозной аутентификации

Сообщение firebolt » 09 авг 2017, 07:13

alexus писал(а):Надо смотреть настройки авторизации Apache для index.pl и customer.pl. Скорее всего, надо в них настройки SSO разделить.


В самом файле конфига сайта otrs.conf я не вижу разделений на index.pl и customer.pl. Действуя согласно мануалу, я сделал следующие шаги, чтобы научить апач авторизовывать пользователей.
Вот эту часть конфига:

Код: выделить все
    # general mod_perl2 options
    <Location /otrs>
#        ErrorDocument 403 /otrs/customer.pl
        ErrorDocument 403 /otrs/index.pl
        SetHandler  perl-script
        PerlResponseHandler ModPerl::Registry
        Options +ExecCGI
        PerlOptions +ParseHeaders
        PerlOptions +SetupEnv

        <IfModule mod_version.c>
            <IfVersion < 2.4>
                Order allow,deny
                Allow from all
            </IfVersion>
            <IfVersion >= 2.4>
                Require all granted
            </IfVersion>
        </IfModule>
        <IfModule !mod_version.c>
            Order allow,deny
            Allow from all
        </IfModule>
    </Location>


заменил на это:

Код: выделить все
    # general mod_perl2 options
    <Location /otrs>
#        ErrorDocument 403 /otrs/customer.pl
        ErrorDocument 403 /otrs/index.pl
        SetHandler  perl-script
        PerlResponseHandler ModPerl::Registry
        Options +ExecCGI
        PerlOptions +ParseHeaders
        PerlOptions +SetupEnv

        AuthType Kerberos
        AuthName "Kerberos Authntication"
        KrbAuthRealms RUS.LOCAL
        Krb5Keytab /etc/apache2/svrotrs.keytab
        KrbMethodNegotiate On
        KrbSaveCredentials Off
        KrbVerifyKDC Off
        Require valid-user
    </Location>


И вот эту часть конфига:

Код: выделить все
<Directory "/opt/otrs/bin/cgi-bin/">
    AllowOverride None
    Options +ExecCGI -Includes

    ErrorDocument 403 /index.pl
    DirectoryIndex customer.pl
    AddHandler  perl-script .pl .cgi
    PerlResponseHandler ModPerl::Registry
    PerlOptions +ParseHeaders
    PerlOptions +SetupEnv

    <IfModule mod_version.c>
        <IfVersion < 2.4>
            Order allow,deny
            Allow from all
        </IfVersion>
        <IfVersion >= 2.4>
            Require all granted
        </IfVersion>
    </IfModule>
    <IfModule !mod_version.c>
        Order allow,deny
        Allow from all
    </IfModule>

    <IfModule mod_filter.c>
        <IfModule mod_deflate.c>
            AddOutputFilterByType DEFLATE text/html text/javascript application/javascript text/css text/xml application/json text/json
         </IfModule>
    </IfModule>

</Directory>


заменил на это:

Код: выделить все
<Directory "/opt/otrs/bin/cgi-bin/">
    AllowOverride None
    Options +ExecCGI -Includes

    ErrorDocument 403 /index.pl
    DirectoryIndex customer.pl
    AddHandler  perl-script .pl .cgi
    PerlResponseHandler ModPerl::Registry
    PerlOptions +ParseHeaders
    PerlOptions +SetupEnv

    AuthType Kerberos
    AuthName "Kerberos Authntication"
    KrbAuthRealms RUS.LOCAL
    Krb5Keytab /etc/apache2/svrotrs.keytab
    KrbMethodNegotiate On
    KrbSaveCredentials Off
    KrbVerifyKDC Off
    Require valid-user

</Directory>


Что бы мне теперь тут открутить, чтобы он не спрашивал пароль с агентов?
OTRS 5.0.10
Debian 8 Jessie
MySQL 5.5
firebolt
OTRS Новобранец
 
Сообщений: 169
Зарегистрирован: 13 сен 2012, 13:46

Re: Проблемы сквозной аутентификации

Сообщение firebolt » 09 авг 2017, 07:15

Ввод openSuSE в домен не решил проблему, кстати говоря.
OTRS 5.0.10
Debian 8 Jessie
MySQL 5.5
firebolt
OTRS Новобранец
 
Сообщений: 169
Зарегистрирован: 13 сен 2012, 13:46

Re: Проблемы сквозной аутентификации

Сообщение A.P.Gost » 16 авг 2017, 20:29

а кусок конфига из первого сообщения правда так выглядит или вы там удалили данные чтобы не светить их на форуме?
OTRS 5.0.18
Centose 7
Что не по плечу то пох*й.
A.P.Gost
OTRS Новобранец
 
Сообщений: 5
Зарегистрирован: 31 июл 2017, 23:07

Re: Проблемы сквозной аутентификации

Сообщение firebolt » 17 авг 2017, 06:09

A.P.Gost писал(а):а кусок конфига из первого сообщения правда так выглядит или вы там удалили данные чтобы не светить их на форуме?


Нет, данные я не удалял. Я их заменил. Подозрительный вопрос :D Почему вы хотите это знать?
OTRS 5.0.10
Debian 8 Jessie
MySQL 5.5
firebolt
OTRS Новобранец
 
Сообщений: 169
Зарегистрирован: 13 сен 2012, 13:46


Вернуться в Help

Кто сейчас на форуме

Сейчас этот форум просматривают: Google [Bot] и гости: 3

cron