Ontem, iniciamos uma sĂ©rie de guias para a incrĂvel ferramenta .htaccess. Para quem ainda nĂŁo leu a primeira parte, .htaccess Ă© um pequeno arquivo de configuração para o servidor da web Apache. Hoje veremos como podemos editĂĄ-lo para melhorar a segurança em uma instalação do WordPress.
Mencionaremos novamente a importĂąncia de processar todos os arquivos (.php, .sql) armazenados em um ambiente Linux, com o editor do bloco de notas ++ e nĂŁo com o bloco de notas clĂĄssico do Windows.
Para começar, vocĂȘ precisa baixar o arquivo no seu computador. Imediatamente apĂłs e apĂłs a instalação do Notepad plus plus, clique nele com o botĂŁo direito do mouse e vocĂȘ terĂĄ a opção: Editar com o Bloco de notas.
Antes de continuar, vocĂȘ precisarĂĄ manter um backup do arquivo baixado.
ApĂłs editar o arquivo, hĂĄ duas maneiras diferentes de salvĂĄ-lo.
O mais fĂĄcil Ă© usar o Ăcone de disquete localizado no canto superior esquerdo do aplicativo Notepad ++.
A segunda maneira serĂĄ necessĂĄria se vocĂȘ quiser salvar .htaccess em um ambiente Windows com salvar como ou salvar como.
Como o Windows considera que .htaccess Ă© o fim de um tipo de arquivo e nĂŁo possui nome, eles solicitarĂŁo que vocĂȘ atribua um nome ao seu arquivo. Por exemplo. name.htaccess. VocĂȘ pode evitar isso usando aspas.
Portanto, tente salvar seu arquivo como “.htaccess”
ApĂłs o bĂĄsico, vamos ver como podemos garantir nosso site WordPress.
Vamos começar proteger o prĂłprio .htaccess VocĂȘ pode usar o mesmo comando para bloquear o acesso a qualquer arquivo que desejar, simplesmente alterando o nome do arquivo.
ordem permitir, negar negar a todos
Desabilite o acesso a vĂĄrios arquivos juntos (vocĂȘ pode adicionar mais se precisar)
Ordem Permitir, Negar Negar de todos
Vamos bloquear o acesso Ă s pastas do site
OpçÔes Todos -Indexes
Isso Ă©:
OpçÔes Todos + Ăndices
Claro, jå que estamos falando de segurança, esqueça o comando acima
Excluir um IP
ordem permitir, negar negar de xxx.xxx.xxx.xxx permitir de todos
Vamos fechar algumas lacunas agora
Desativar o envio de qualquer script com comandos codificados base64_encode
RewriteCond% {QUERY_STRING} base64_encode. * (. *) [OR]
Excluir o método proc / self / environ
RewriteCond% {QUERY_STRING} proc / self / environ [OR]
Proteja-se de qualquer script que tente alterar os valores de php globals
RewriteCond% {QUERY_STRING} GLOBALS (= |[|%[0-9A-Z]{0.2}) [OR]
Proteção contra qualquer script que tente alterar o valor no mosConfig
RewriteCond% {QUERY_STRING} mosConfig_[a-zA-Z_]{1,21} (= | % 3D) [OR]
Excluir URLs contidos na tag
RewriteCond% {QUERY_STRING} (<|%3C).*script.*(>|% 3E) [NC,OR]
Excluir tentativas de alterar variĂĄveis ââ_request
RewriteCond% {QUERY_STRING} _REQUEST (= |[|%[0-9A-Z]{0.2})
Desative o ping em xmlrpc.php
ordem negar, permitir negar de todos
Bloquear o acesso ao debug.log
ordem negar, permitir negar de todos
Exclua alguns SpyBot (vocĂȘ pode adicionar o que quiser)
RewriteEngine On RewriteCond% {HTTP_USER_AGENT ^ ^ SquigglebotBot [NC,OR]
RewriteCond% {HTTP_USER_AGENT. ^ SurveyBot [NC,OR]
RewriteCond% {HTTP_USER_AGENT. ^ VoidEYE [NC,OR]
RewriteCond% {HTTP_USER_AGENT} ^ YottaShopping_Bot [NC,OR]
RewriteCond% {HTTP_USER_AGENT} ^ webcrawl .net [NC]
RewriteRule ^ (. *) $ - [F,L]
Proibição de executar vårios scripts
AddHandler cgi-script .php .pl .py .jsp .asp .htm .shtml .sh .cgi OpçÔes -ExecCGI
Desativar rastreamento de rastreamento
RewriteEngine On RewriteCond% {REQUEST_METHOD} ^ (TRACE | TRACK) RewriteRule. * - [F]
Bloqueando conexÔes de proxy tentando comentar
RewriteCond% {REQUEST_METHOD} = POST RewriteCond% {HTTP: VIA}% {HTTP: FORWARDED}% {HTTP: USERAGENT_VIA}% {HTTP: X_FORWARDNED_FION FFOR ECT $ X}% {HTTP [OR]
RewriteCond% {HTTP: XPROXY_CONNECTION}% {HTTP: HTTP_PC_REMOTE_ADDR}% {HTTP: HTTP_CLIENT_IP}! ^ $ RewriteCond% {REQUEST_pinspin}! W / | -in / | -includes /).* [NC]
RewriteRule. * - [F,NS,L]
Desativar com redirecionamento para 403 caracteres "ruins" e exploraçÔes de espionagem conhecidas
RedirectMatch 403 , RedirectMatch 403 : RedirectMatch 403 ; RedirectMatch 403 = RedirectMatch 403 @ RedirectMatch 403 [
RedirectMatch 403 ]
RedirectMatch 403 ^ ^ RedirectMatch 403 `RedirectMatch 403 {RedirectMatch 403 } RedirectMatch 403 ~ RedirectMatch 403 " RedirectMatch 403 $ RedirectMatch 403 <
RedirectMatch 403 >
RedirectMatch 403. | RedirectMatch 403 . . RedirectMatch 403 % 0 RedirectMatch 403 % A RedirectMatch 403 % B RedirectMatch 403 % C RedirectMatch 403 % D RedirectMatch 403 % E RedirectMatch 403 % F RedirectMatch 403 % 22 RedirectMatch 403 % 27% RedirectMatch 403 RedirectMatch 403 % 29 RedirectMatch 403 % 3C RedirectMatch 403 % 3E RedirectMatch 403 % 3F RedirectMatch 403 % 5B RedirectMatch 403 % 5C RedirectMatch 403 % 5D RedirectMatch 403 % 7B RedCM% 7C RedirectMatch 73% 3 # PADRĂES COMUNS Redirectmatch 403 _vpi RedirectMatch 403 .inc Redirectmatch 403 xAou6 Redirectmatch 403 db _name Redirectmatch 403 select (Redirectmatch 403 convert (Redirectmatch 403 convert (Redirectmatch 403 convert (Redirectmatch 403 / queryM3 403 RedirectMatch / RedirectMatchD 403 ImpEv. function . Redirectmatch 403 remoteFile Redirectmatch 403 servername Redirectmatch 403 & rptmode = Redirectmatch 403 sys _cpanel RedirectMatch 403 db _connect RedirectMatch 403 doeditconfig RedirectMatch 403 check _proxy Redirectmatch 403 system _user Redirectmatch 403 / (null ) / Redirectmatch 403 clientrequest opção Redirectmatch 403 opção _valor RedirectMatch 403 ref .outcontrol # Explora especificamente erros do RedirectMatch 403 . RedirectMatch 403 config . O RedirectMatch 403 inclui . Exibição do RedirectMatch 403 . Registro do RedirectMatch 403 . Redirectmatch 403 senha . RedirectMatch 403 principal . O RedirectMatch 403 autoriza . Redirectmatch 403 macromates . Cabeça do RedirectMatch 403 _auth . O RedirectMatch 403 envia _links . Alteração do RedirectMatch 403 _action . Redirectmatch 403 com _facileforms / RedirectMatch 403 admin _db ââ_utilities . RedirectMatch 403 admin .webring .docs . Redirectmatch 403 Table / Latest / index .
Mais especificamente Request Strings
RedirectMatch 403 (https? | Ftp | php) : // RedirectMatch 403 / (https? | Ima | ucp) / RedirectMatch 403 / (Permanente | Melhor) $ RedirectMatch 403 ( = \ '| = \% 27 | / \ '/? | | ) . Css () $ RedirectMatch 403 (, | ) + | / / , / | {0 } | (/ (| . . . | + + + | || \ "\") RedirectMatch 403 . (Cgi | asp | aspx | cfg | dll | ex | jsp | mdb | sql | ini | rar) $ RedirectMatch 403 /(contac|fpw|install|pingserver|register).php$ RedirectMatch 403 (base64 | domĂnio cruzado | localhost | wwwroot | e107 _) RedirectMatch 403 (eval (| _vti _ | ull (null )) ) | echo. * kae | config .xml) RedirectMatch 403 .bem -known / host -meta RedirectMatch 403 / function.array-rand RedirectMatch 403 ) ; $ (this ) . html (RedirectMatch 403 proc / self / environment RedirectMatch 403 msnbot .htm ) . _ _ RedirectMatch 403 /ref.outcontrol RedirectMatch 403 com _cropimage RedirectMatch 403 indonĂ©sia ht .htm RedirectMUR} 403 irect Direct $ Função 403 () RedirectMatch 403 labels .rdf RedirectMatch 403 /playing.php RedirectMatch 403 muieblackcat
ExclusĂŁo do agente do usuĂĄrio SetEnvIfNoCase
# SetEnvIfNoCase User-Agent ^ $ keep_out SetEnvIfNoCase User Agent (binlar | casper | cmsworldmap | comodo | diavol | dotbot | feedfinder | flicky | ia_archiver | jakarta | kmccrew | nutchik | nutch | planetg | vridl | skylur | turnbot | pyc | zmeu) keep_out
Redirecione cada aplicativo bloqueado para o original com o cĂłdigo de erro 403
RewriteRule ^ (. *) $ Index.php [F,L]
Desativar hotlinkng
RewriteEngine On # Change? Mysite .com / com o domĂnio da sua pĂĄgina RewriteCond% {HTTP_REFERER}! ^ Http: // (.. + .)? Mysite .com / [NC]
RewriteCond% {HTTP_REFERER}! ^ $ # Altere /images/no-hotlinking.png com uma foto sua que desestimule os copiadores RewriteRule. * . (Jpe? G | gif | bmp | png) $ / images / no- hotlinking.png [L]
Esquecemos algo? VocĂȘ pode adicionĂĄ-lo aos comentĂĄrios e nĂłs o adicionaremos ao artigo.
Fim da segunda parte.