Existe alguma maneira de renomear ou esconder o wp-login.php?

25

Qualquer forma de alterar o URL wp-login.php? Parece inseguro que todos que já usaram o Wordpress podem facilmente ver se o seu site está usando, e ir direto para a página de login.

Costumava haver um plugin chamado "Stealth login", mas não foi atualizado. (E, portanto, nossa relutância em confiar em plugins).

    
por David 06.01.2011 / 02:46
fonte

4 respostas

23

Se você estiver fazendo isso para seu próprio site, usar .htaccess pode ser a maneira mais fácil, embora possa ser complicado se você quiser que funcione para um plug-in, pois há várias diferenças sutis de configuração para serem suportadas.

Aqui estão alguns artigos que podem ajudar; nem todos estão respondendo diretamente à sua pergunta, mas todos abordam sua preocupação de segurança de uma forma ou de outra:

E, claro, isso não é um blog especializado em Apache e WordPress do que o cara que escreve AskApache . Não deixe de conferir estes:

por MikeSchinkel 06.01.2011 / 10:06
fonte
10

Eu encontrei o mesmo problema recentemente, e você está certo de que o plugin Stealth não é mais suportado. No entanto, porque eu finalmente percebi que o plugin Stealth era a melhor opção, eu fiz uma instalação limpa do WordPress para a última versão do WordPress que o plugin Stealth suportou para descobrir como o plugin funciona. Acontece que a única coisa que o plugin está fazendo é criar um arquivo .htaccess com alguma mágica. O arquivo .htaccess vai parecer um pouco assim:

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^logout wp-login.php?action=logout&_wpnonce=asdfasdf&stealth_out_key=asdfasdfasdfasdf [L]
RewriteRule ^login wp-login.php?stealth_in_key=asdfasdfasdf&redirect_to=http://example.com/login [R,L]
RewriteRule ^admin wp-admin/?stealth_admin_key=asdfasdfasdfasdf [R,L]
RewriteCond %{HTTP_REFERER} !^http://example.com/wp-admin
RewriteCond %{HTTP_REFERER} !^http://example.com/wp-login\.php
RewriteCond %{HTTP_REFERER} !^http://example.com/login
RewriteCond %{HTTP_REFERER} !^http://example.com/admin
RewriteCond %{QUERY_STRING} !^stealth_in_key=asdfasdfasdfasdf
RewriteCond %{QUERY_STRING} !^stealth_out_key=asdfasdfasdfasdfasd
RewriteCond %{QUERY_STRING} !^stealth_reg_key=asdfasdfasdfasdfasdf
RewriteCond %{QUERY_STRING} !^stealth_admin_key=asdfasdfasdfasdfasdf
RewriteRule ^wp-login\.php http://example.com [R,L]
RewriteCond %{QUERY_STRING} ^loggedout=true
RewriteRule ^wp-login\.php http://example.com [R,L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>

Eu mudei todas as chaves para alguma variação de "asdfasdfasdf" - obviamente você precisaria criar algumas chaves secretas para si mesmo.

Espero que isso ajude!

    
por epaps 06.01.2011 / 09:19
fonte
-2

ou você pode renomear de wp-login.php para some-obscure-name.php, então quando você quiser fazer o login, digite seu url / some-obscure-name.php ao invés de ir para wp-admin.php

    
por user35833 26.07.2013 / 23:26
fonte
-3

Veja o que eu fiz:

Eu simplesmente renomei o diretório wp-admin para algum nome obscuro pfgkn, por exemplo.

ir para http://your-domain.com/wp-admin/ redireciona você para sua página inicial em http://your-domain.com/ ou qualquer outra coisa para a qual seu 404 não foi redirecionado.

Quando eu preciso fazer o login - eu apenas renomeio o diretório pfgkn para o wp-admin, faço minhas alterações e depois renomeio para pfgkn.

    
por BigArn 19.04.2013 / 03:58
fonte