Ubuntu - Protegendo o PHPMyAdmin no Nginx

0

Eu segui as instruções neste site para instalando o PHPMyAdmin . No entanto, essa configuração é para um Apache e estou usando o Nginx. Não consigo encontrar nenhum tutorial on-line sobre como restringir o endereço IP permitido para acessar o PHPMyadmin.

Alguém pode recomendar um site ou me dizer como posso fazer isso?

Editar

Esta configuração do meu Nginx no momento:

server {
        listen   80;

        root /usr/share/nginx/html/cl2g/public/;
        index index.php index.html index.htm;

        server_name schedulium.ca;

        # AnuglarJS UI Front /index.html
        location / {
                rewrite ^/(.*)/$ /$1 redirect;
                if (!-e $request_filename) {
                        rewrite ^(.*)$ /index.html
                        break;
                }
        }

        # PHPMyAdmin
        location /phpmyadmin/ {
                allow my-ip-address;
                deny all;

                rewrite ^/(.*)/$ /$1 redirect;
                if (!-e $request_filename) {
                        rewrite ^(.*)$ /phpmyadmin/index.php;
                }
        }


        # Laravel Back-end /api/index.php
        location /api/ {
               # try_files $uri $uri/ /index.php$is_args$args;
                rewrite ^/(.*)/$ /$1 redirect;
                if (!-e $request_filename) {
                        rewrite ^(.*)$ /api/index.php;
                }
        }

        error_page 404 /404.html;

        error_page 500 502 503 504 /50x.html;
        location = /50x.html {
              root /usr/share/nginx/html;
        }

        # pass the PHP scripts to FastCGI server listening on the php-fpm socket
        # stfu
        location ~ \.php$ {
                fastcgi_pass unix:/var/run/php5-fpm.sock;
                fastcgi_index index.php;
                fastcgi_split_path_info ^(.+\.php)(.*)$;
                fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
                include fastcgi_params;
        }

}
    
por Kousha 18.07.2014 / 20:16

2 respostas

1

No Nginx, você define os argumentos no arquivo do site não por meio do htaccess.

Edite seu arquivo de site correspondente em / etc / nginx / sites-enabled /

se a sua localização for semelhante a esta.

location /phpmyadmin {
....
}

adicione o seguinte

allow 192.168.0.2/32; 
deny all;

Isso só permitirá acesso ao host do IP 192.168.0.2

depois reinicie / recarregue o Nginx.

    
por 18.07.2014 / 20:23
0

Você está usando o .htaccess para restrição de IP se tiver seguido o tutorial ao qual você colocou um link. No Nginx você pode usar o nginx.conf:

server {
listen 80;
server_name name;

location / {
  root /phpmyadmin;
  passenger_enabled on;

  allow   your-public-ip;
  deny    all;
}
}

É claro que você precisa mudar isso para que funcione com o seu endereço IP.

Por padrão, o PHPMyAdmin é instalado em /usr/share/phpmyadmin no Ubuntu. No phpMyAdmin.conf , deve haver uma opção para permitir apenas o seu IP.

Então você pode fazer isso via Nginx ou via PHPMyAdmin.

    
por 18.07.2014 / 20:29