Ubuntu - PHPMyAdmin seguro no Nginx

Ubuntu - PHPMyAdmin seguro no Nginx

Eu segui as instruções neste site parainstalando PHPMyAdmin. No entanto, esta 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 é minha configuração 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;
        }

}

Responder1

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

Edite o arquivo do site correspondente em /etc/nginx/sites-enabled/

se sua localização for parecida com 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

em seguida, reinicie/recarregue o Nginx.

Responder2

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

server {
listen 80;
server_name name;

location / {
  root /phpmyadmin;
  passenger_enabled on;

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

Claro, você precisa alterar isso para que funcione com o seu endereço IP.

Por padrão, o PHPMyAdmin é instalado /usr/share/phpmyadminno Ubuntu. Deve phpMyAdmin.confhaver uma opção para permitir apenas o seu IP.

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

informação relacionada