Так как данная настройка в ISPmanager, в общем то, не работает, а лишь вызывает те или иные проблемы, у себя я решил все переделать вручную.
Выкладываю здесь, возможно кому то еще пригодится данный подход.
Apache-itk+nginx
И так задача:
Отключить ihttpd
SSL отдать apache
Сделать панель доступной только по следующим адресам и алиасам на одном домене:
https://cp.domain.ru
https://cp.domain.ru/manager
https://cp.domain.ru/manager/
https://cp.domain.ru/manager/ispmgr
https://cp.domain.ru/manager/ispmgr/
И теже адреса http://-----//-----, но с редиректом на https://
Со всех остальных доменов на сервере убираем доступ к панели, webmail и myadmin
Часть конфига apache:
Код:
# Include the virtual host configurations: Include /etc/apache2/sites-enabled/ Include /usr/local/ispmgr/etc/ispmgr.inc Include /etc/apache2/vhosts/*.inc <Directory /var/www/*/data/> php_admin_flag engine off </Directory> NameVirtualHost 123.123.123.123:443 NameVirtualHost 123.123.123.123:81
В конфигах apache для roundcube и phpmyadmin убираем алиасы и оставляем только описание директрий.
В конфиге nginx ничего не меняем.
Далее вид конфигов панели:
ispmgr.inc
Код:
LoadModule ispmgr_module /usr/local/ispmgr/lib/apache/mod_ispmgr.so Alias /manimg/ /usr/local/ispmgr/skins/ Alias /disabled/ /usr/local/ispmgr/www/disabled/ Alias /mancgi/ /usr/local/ispmgr/cgi/ <Directory /usr/local/ispmgr/> Order allow,deny Allow from all AddDefaultCharset utf-8 </Directory> <Directory /usr/local/ispmgr/cgi/> SetHandler directcgi-handler AddDefaultCharset utf-8 </Directory> <Directory /usr/local/ispmgr/bin/> SetHandler ispwrap-handler AddDefaultCharset utf-8 DirectoryIndex ispmgr billmgr vdsmgr dsmgr dnsmgr ipmgr </Directory> <IfModule mod_ssl.c> <VirtualHost 123.123.123.123:443> ServerName cp.domain.ru DocumentRoot /usr/local/ispmgr/bin/ SSLCertificateFile /usr/local/ispmgr/etc/manager.crt SSLCertificateKeyFile /usr/local/ispmgr/etc/manager.key SSLCACertificateFile /usr/local/ispmgr/etc/manager.bundle SSLEngine on Alias /manager /usr/local/ispmgr/bin/ Alias /manimg/ /usr/local/ispmgr/skins/ Alias /mancgi/ /usr/local/ispmgr/cgi/ Alias /myadmin /var/www/phpmyadmin/ Alias /webmail /var/www/roundcube/ Redirect permanent /manager/ispmgr/ /manager/ispmgr </VirtualHost> </IfModule>
Код:
server { listen 123.123.123.123; server_name cp.domain.ru; if ( $scheme = "http" ) { rewrite ^/(.*)$ https://$host/$1 permanent; } }
Не забудем в добавить в ispmg.conf
Option WebNginxNoSSL
И если используете опцию NgProxyRegexp, то уберите из ее шаблона webmail и myadmin
И не забудем включить в apache mod_ssl, если не включен.
Вот собственно и всё. А про пункт в меняю "Адрес панели" забываем.))
З.Ы. Один из основных косяков был в том, что если мы хотим переложить обработку SSL обратно на apache, а в настройках адреса панели укажем выделенный домен, то в конфигах зачем то добавляется ngix-хост с SSL и соответственно имеем конфликты, ведь apache тоже слушает 443 порт.
Но это уже не важно, для себя я всё переделал, но по идее разработчики должны были. Коли уж сделали эту опцию, то допилили бы ее до конца по человечески или не трогали вообще и оставили всё как было раньше, с возможность отключения панели для определенного домена.
Комментариев нет:
Отправить комментарий