Requisitos: Use o nginx para bloquear alguns IPs de acessar sites, como rastreadores, anúncios, etc. Ou, por questões políticas, você precisa bloquear o acesso a partir de um endereço IP em determinado país.
Acesso IP especificado em bloco
Nginx fornece dois dos comandos mais básicos para mascaramento e permitir IPs: negar bloqueio e permitir permitir o bloqueio, conforme segue:
Especifique diretório para bloquear o acesso a partir de IPs especificados
No arquivo de configuração do Nginx, você pode usar blocos de localização para corresponder a caminhos específicos de URL. Por exemplo, queremos habilitar o mascaramento em caminhos de URL que começam com /foo, correspondendo a todos os caminhos de URL que começam com /foo, como /foo/bar e /foo/baz/qux, etc., da seguinte forma:
Se você quiserCorrespondência exata /foopara usar a seguinte configuração:
Você também pode comparar o diretório com regex:
Bloqueie o acesso ao país (região) especificado.
Às vezes, queremos permitir que apenas certas regiões acessem nosso site. Conhecendo os dois métodos acima, o problema restante é como obter todos os segmentos IP em uma determinada região. Podemos pegar isso pelo ip2location. Endereço:O login do hiperlink está visível.
Selecione o país no lado esquerdo da caixa, selecione V4 ou V6 na caixa do meio e selecione o tipo de regra à direita. Pegue o Japão como exemplo:
Baixe e descompacte para obter o arquivo txt,Exclua a primeira localização / { e a última },Por fim, adicione uma linha para permitir tudo;Mude o nome do sufixo de .txt para .conf e faça o upload para o servidor, lembrando o diretório onde foi colocado. (ex.: /usr/local/nginx/conf/nginx.conf/firewall.conf)
Modificar o arquivo de configuração Nginx correspondente ao site, como o diretório /foo, para permitir acesso apenas a partir de IPs não japoneses:
Se quiser que seja para todo o site, pode escrever no servidor ou no campo http, por exemplo:
Em seguida, insira o seguinte comando para recarregar a configuração nginx:
|