Apache 2.4 com PHP-FPM e ProxyPassMatch para PHPMyAdmin, é seguro?

2

Eu recentemente configurei um Debian 8 com o Apache 2.4. Como tenho uma versão recente do Apache, usei ProxyPassMatch em vez de FastCgiExternalServer.

Mas ao configurar meu alias para o PhpMyAdmin, fiquei imaginando se isso era seguro. Aqui está minha configuração:

<VirtualHost *:80>
    ServerName www.my-website.com

    DocumentRoot /var/www/html/
    Alias /phpmyadmin/ "/usr/share/phpmyadmin/"
    <Directory "/usr/share/phpmyadmin/">
            Options FollowSymLinks
            DirectoryIndex index.php
    </Directory>

    # Disallow web access to directories that don't need it
    <Directory /usr/share/phpmyadmin/libraries>
            Order Deny,Allow
            Deny from All
            Require all granted
    </Directory>
    <Directory /usr/share/phpmyadmin/setup/lib>
            Order Deny,Allow
            Deny from All
            Require all granted
    </Directory>

    ProxyPassMatch "^/(.*\.php(/.*)?)$" "unix:/var/run/php5-fpm-pma.sock|fcgi://localhost/usr/share"

    ErrorLog ${APACHE_LOG_DIR}/error.log

    # Possible values include: debug, info, notice, warn, error, crit,
    # alert, emerg.
    LogLevel warn
</VirtualHost>

O que me incomoda é o ProxyPassMatch, que permite carregar qualquer arquivo no diretório /usr/share/ que termina com .php *. Eu só quero executar arquivos em /usr/share/phpmyadmin/ , mas como é um alias, a parte /phpmyadmin/ já está anexada = >

ProxyPassMatch "^/(.*\.php(/.*)?)$" "unix:/var/run/php5-fpm-pma.sock|fcgi://localhost/usr/share/phpmyadmin/"

não funciona, com o erro que "/usr/share/phpmyadmin/phpmyadmin/index.php" não foi encontrado.

Então minha configuração atual é segura o suficiente em relação ao acesso de /usr/share/ ?

Obrigado pela sua ajuda!

    
por Cyril N. 02.06.2015 / 11:02

1 resposta

0

Eu tive o mesmo problema, primeiro é possível deixar:

ProxyPassMatch ^/(.*\.php(/.*)?)$ unix:/run/php/php7.0-fpm.sock|fcgi://localhost/var/www/html/

no /etc/apache2/sites-available/000-default.conf

Mas o truque é simplesmente criar um link simbólico assim:

ln -s /usr/share/phpmyadmin /var/www/html/phpmyadmin

Depois, você tem que executar " systemctl reload apache2 " e funciona novamente.

    
por 09.11.2017 / 23:51

Tags