it-swarm.com.ru

phpMyAdmin позволяет удаленным пользователям

Мне нужно изменить файл /etc/httpd/conf.d/phpMyAdmin.conf для того, чтобы удаленные пользователи (не только localhost) могли войти в систему

# phpMyAdmin - Web based MySQL browser written in php
# 
# Allows only localhost by default
#
# But allowing phpMyAdmin to anyone other than localhost should be considered
# dangerous unless properly secured by SSL

Alias /phpMyAdmin /usr/share/phpMyAdmin
Alias /phpmyadmin /usr/share/phpMyAdmin

<Directory /usr/share/phpMyAdmin/>
   <IfModule mod_authz_core.c>
     # Apache 2.4
     <RequireAny>
       Require ip 127.0.0.1
       Require ip ::1
     </RequireAny>
   </IfModule>
   <IfModule !mod_authz_core.c>
     # Apache 2.2
     Order Deny,Allow
     Deny from All
     Allow from 127.0.0.1
     Allow from ::1
   </IfModule>
</Directory>

<Directory /usr/share/phpMyAdmin/setup/>
   <IfModule mod_authz_core.c>
     # Apache 2.4
     <RequireAny>
       Require ip 127.0.0.1
       Require ip ::1
     </RequireAny>
   </IfModule>
   <IfModule !mod_authz_core.c>
     # Apache 2.2
     Order Deny,Allow
     Deny from All
     Allow from 127.0.0.1
     Allow from ::1
   </IfModule>
</Directory>

# These directories do not require access over HTTP - taken from the original
# phpMyAdmin upstream tarball
#
<Directory /usr/share/phpMyAdmin/libraries/>
    Order Deny,Allow
    Deny from All
    Allow from None
</Directory>

<Directory /usr/share/phpMyAdmin/setup/lib/>
    Order Deny,Allow
    Deny from All
    Allow from None
</Directory>

<Directory /usr/share/phpMyAdmin/setup/frames/>
    Order Deny,Allow
    Deny from All
    Allow from None
</Directory>

# This configuration prevents mod_security at phpMyAdmin directories from
# filtering SQL etc.  This may break your mod_security implementation.
#
#<IfModule mod_security.c>
#    <Directory /usr/share/phpMyAdmin/>
#        SecRuleInheritance Off
#    </Directory>
#</IfModule>
27
Germano Massullo

Другие ответы до сих пор, по-видимому, требуют полной замены блока <Directory />, это не нужно и может удалить дополнительные настройки, такие как «AddDefaultCharset UTF-8», который теперь включен.

Чтобы разрешить удаленный доступ, вам нужно добавить 1 строку в блок конфигурации 2.4 или изменить 2 строки в 2.2 (в зависимости от вашей версии Apache):

<Directory /usr/share/phpMyAdmin/>
   AddDefaultCharset UTF-8

   <IfModule mod_authz_core.c>
     # Apache 2.4
     <RequireAny>
       #ADD following line:
       Require all granted
       Require ip 127.0.0.1
       Require ip ::1
     </RequireAny>
   </IfModule>
   <IfModule !mod_authz_core.c>
     # Apache 2.2
     #CHANGE following 2 lines:
     Order Allow,Deny
     Allow from All
     Allow from 127.0.0.1
     Allow from ::1
   </IfModule>
</Directory>
77
chris

использовать это, это исправлено для меня, над CentOS 7 

<Directory /usr/share/phpMyAdmin/>
Options Indexes FollowSymLinks MultiViews
AllowOverride all
Require all granted
</Directory>
20
abhirathore2006

Замените содержимое первого тега <directory>.

Удалить:

<Directory /usr/share/phpMyAdmin/>
 <IfModule mod_authz_core.c>
  # Apache 2.4
  <RequireAny>
    Require ip 127.0.0.1
    Require ip ::1
  </RequireAny>
 </IfModule>
 <IfModule !mod_authz_core.c>
  # Apache 2.2
  Order Deny,Allow
  Deny from All
  Allow from 127.0.0.1
  Allow from ::1
 </IfModule>
</Directory>

И поместите это вместо:

<Directory /usr/share/phpMyAdmin/>
 Order allow,deny
 Allow from all
</Directory>

Не забудьте перезапустить Apache после этого.

4
nl-x

Попробуй это

Замещать 

<Directory /usr/share/phpMyAdmin/>
    <IfModule mod_authz_core.c>
        # Apache 2.4
        <RequireAny>
            Require ip 127.0.0.1
            Require ip ::1
        </RequireAny>
    </IfModule>
    <IfModule !mod_authz_core.c>
        # Apache 2.2
        Order Deny,Allow
        Deny from All
        Allow from 127.0.0.1
        Allow from ::1
    </IfModule>
</Directory>

С этим:

<Directory "/usr/share/phpMyAdmin/">
    Options Indexes FollowSymLinks MultiViews
    AllowOverride all
        Order Allow,Deny 
    Allow from all
</Directory>

Добавьте следующую строку для удобства доступа:

Alias /phpmyadmin /usr/share/phpMyAdmin
3
John Guan

Моя установка была немного другой, используя XAMPP. в httpd-xampp.conf мне пришлось внести следующее изменение. 

Alias /phpmyadmin "C:/xampp/phpMyAdmin/"
<Directory "C:/xampp/phpMyAdmin">
    AllowOverride AuthConfig
    Require local
    ErrorDocument 403 /error/XAMPP_FORBIDDEN.html.var
</Directory>

Правка на

Alias /phpmyadmin "C:/xampp/phpMyAdmin/"
<Directory "C:/xampp/phpMyAdmin">
    AllowOverride AuthConfig
    #makes it so I can config the database from anywhere
    #change the line below
    Require all granted
    ErrorDocument 403 /error/XAMPP_FORBIDDEN.html.var
</Directory>

Я должен заявить, что я новичок в этом, так что я просто хакерствую, но вот как я это получил.

2
Thrasher8390

Мой ответ основан на получении ошибки 403, хотя все настройки Apache, упомянутые в других ответах, были правильными. 

Это был свежий сервер Centos 7, и оказалось, что проблема не в настройках Apache, а в том, что PhpMyAdmin не работал вообще. Решением было установить php и добавить директиву php в Apache.conf:

  • Судо ням установить php php-mysql
  • vim /etc/httpd/conf/httpd.confadd что-то вроде 
  • DirectoryIndex index.php index.phtml index.html index.htm Для обслуживания файлов индекса php также , А затем перезапустите Apache

Не забудьте перезапустить сервер Apache, чтобы изменения вступили в силу - systemctl перезапустить httpd.service

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

0
sakumatto

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

#<Directory /usr/share/phpMyAdmin/>
#   <IfModule mod_authz_core.c>
#     # Apache 2.4
#     <RequireAny>
#       Require ip 127.0.0.1
#       Require ip ::1
#     </RequireAny>
#   </IfModule>
#   <IfModule !mod_authz_core.c>
#     # Apache 2.2
#     Order Deny,Allow
#     Deny from All
#     Allow from 127.0.0.1
#     Allow from ::1
#   </IfModule>
#</Directory>
0
ursuleacv