O PZP - Python/Zope/Plone, ou simplesmente Zope/Plone, possui atalhos de acesso que pode ser muitas vezes utilizados indevidamente se abertos para Web.
Para impedir a utilização indevida, pode-se recorrer a configurações em servidores cache; como o varnish ou squid; ou servidores web; como apache.
Este tutorial restringe-se a utilização do servidor web apache.
Na configuração a seguir utiliza-se apenas as diretivas do apache (LocationMatch), não necessitando de nenhum módulo extra ativo.
#Bloqueia as URLs /login_form ou /join_form
<LocationMatch "^/(login|join)_form$">
Options -Indexes -FollowSymLinks -MultiViews
Order deny,allow
deny from all
#Allow from 10.0.0.0/8 .incolume.com.br
</LocationMatch>
#Bloqueia todas URLs que possuem /(login|join)_form
#exceto para rede interna
<LocationMatch "^/(login|join)_form$">
Order deny,allow
deny from all
Allow from 10.0.0.0/8 .incolume.com.br
</LocationMatch>
#Bloqueia todas URLs que possuem /join_form
#exceto para rede interna
<LocationMatch "^/join_form$">
Order deny,allow
deny from all
Allow from 10.0.0.0/8 .incolume.com.br
</LocationMatch>
#todas URLs que possuem /login_form acesso
<LocationMatch "^/login_form$">
Order deny,allow
deny from all
#Allow from 10.0.0.0/8 .incolume.com.br
Allow from all
</LocationMatch>
#Bloqueia todas URLs que possuem /manage
#exceto para rede interna
<LocationMatch "manage(.*)">
Order deny,allow
deny from all
Allow from 10.0.0.0/8 .incolume.com.br
</LocationMatch>
#Bloqueia todas URLs que possuem /plone_control_panel
#exceto para rede interna
<LocationMatch "/plone_control_panel">
Order deny,allow
deny from all
Allow from 10.0.0.0/8 .incolume.com.br
</LocationMatch>
#Bloqueia todas URLs que possuem /member_search_results
#exceto para rede interna
<LocationMatch "/member_search_results">
Order deny,allow
deny from all
Allow from 10.0.0.0/8 .incolume.com.br
</LocationMatch>
#Bloqueia todas URLs que possuem /prefs_users_overview
#exceto para rede interna
<LocationMatch "^/prefs_users_overview">
Order deny,allow
Allow from 10.0.0.0/8 .incolume.com.br
</LocationMatch>
Na configuração a seguir utiliza-se da diretiva do apache Rewrite, necessitando ativar o módulo mod_rewrite.
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteLogLevel 2
RewriteRule ^/icons/ - [L]
# Bloqueia verbos HTTP indesejados
RewriteCond %{REQUEST_METHOD} !=GET
RewriteCond %{REQUEST_METHOD} !=POST
RewriteRule . / [F,L]
# Bloqueia autenticacoes
RewriteCond %{HTTP:Authorization} Basic [OR]
RewriteCond %{HTTP:Cookie} _ac
RewriteRule . /404
#Bloqueia todas URLs que possuem /manage
RewriteCond %{REQUEST_URI} ^/(.*)manage$
RewriteRule . / [F,L]
#Bloqueia todas URLs que possuem /manage
RewriteCond %{REQUEST_URI} ^/(.*)manage_main$
RewriteRule . / [F,L]
#Bloqueia todas URLs que possuem /join_form
RewriteCond %{REQUEST_URI} ^/(.*)join_form$
RewriteRule . / [F,L]
#Bloqueia todas URLs que possuem /login_form
RewriteCond %{REQUEST_URI} login_form(.*)$
RewriteRule . / [F,L]
#Bloqueia todas URLs que possuem /plone_control_panel
RewriteCond %{REQUEST_URI} ^/(.*)plone_control_panel$
RewriteRule . / [F,L]
#Bloqueia todas URLs que possuem /member_search_results
RewriteCond %{REQUEST_URI} ^/(.*)member_search_results
RewriteRule . / [F,L]
#Bloqueia todas URLs que possuem /prefs_users_overview
RewriteCond %{REQUEST_URI} ^/(.*)prefs_users_overview
RewriteRule . / [F,L]
</IfModule>
Para impedir a utilização indevida, pode-se recorrer a configurações em servidores cache; como o varnish ou squid; ou servidores web; como apache.
Este tutorial restringe-se a utilização do servidor web apache.
Na configuração a seguir utiliza-se apenas as diretivas do apache (LocationMatch), não necessitando de nenhum módulo extra ativo.
#Bloqueia as URLs /login_form ou /join_form
<LocationMatch "^/(login|join)_form$">
Options -Indexes -FollowSymLinks -MultiViews
Order deny,allow
deny from all
#Allow from 10.0.0.0/8 .incolume.com.br
</LocationMatch>
#Bloqueia todas URLs que possuem /(login|join)_form
#exceto para rede interna
<LocationMatch "^/(login|join)_form$">
Order deny,allow
deny from all
Allow from 10.0.0.0/8 .incolume.com.br
</LocationMatch>
#Bloqueia todas URLs que possuem /join_form
#exceto para rede interna
<LocationMatch "^/join_form$">
Order deny,allow
deny from all
Allow from 10.0.0.0/8 .incolume.com.br
</LocationMatch>
#todas URLs que possuem /login_form acesso
<LocationMatch "^/login_form$">
Order deny,allow
deny from all
#Allow from 10.0.0.0/8 .incolume.com.br
Allow from all
</LocationMatch>
#Bloqueia todas URLs que possuem /manage
#exceto para rede interna
<LocationMatch "manage(.*)">
Order deny,allow
deny from all
Allow from 10.0.0.0/8 .incolume.com.br
</LocationMatch>
#Bloqueia todas URLs que possuem /plone_control_panel
#exceto para rede interna
<LocationMatch "/plone_control_panel">
Order deny,allow
deny from all
Allow from 10.0.0.0/8 .incolume.com.br
</LocationMatch>
#Bloqueia todas URLs que possuem /member_search_results
#exceto para rede interna
<LocationMatch "/member_search_results">
Order deny,allow
deny from all
Allow from 10.0.0.0/8 .incolume.com.br
</LocationMatch>
#Bloqueia todas URLs que possuem /prefs_users_overview
#exceto para rede interna
<LocationMatch "^/prefs_users_overview">
Order deny,allow
Allow from 10.0.0.0/8 .incolume.com.br
</LocationMatch>
Na configuração a seguir utiliza-se da diretiva do apache Rewrite, necessitando ativar o módulo mod_rewrite.
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteLogLevel 2
RewriteRule ^/icons/ - [L]
# Bloqueia verbos HTTP indesejados
RewriteCond %{REQUEST_METHOD} !=GET
RewriteCond %{REQUEST_METHOD} !=POST
RewriteRule . / [F,L]
# Bloqueia autenticacoes
RewriteCond %{HTTP:Authorization} Basic [OR]
RewriteCond %{HTTP:Cookie} _ac
RewriteRule . /404
#Bloqueia todas URLs que possuem /manage
RewriteCond %{REQUEST_URI} ^/(.*)manage$
RewriteRule . / [F,L]
#Bloqueia todas URLs que possuem /manage
RewriteCond %{REQUEST_URI} ^/(.*)manage_main$
RewriteRule . / [F,L]
#Bloqueia todas URLs que possuem /join_form
RewriteCond %{REQUEST_URI} ^/(.*)join_form$
RewriteRule . / [F,L]
#Bloqueia todas URLs que possuem /login_form
RewriteCond %{REQUEST_URI} login_form(.*)$
RewriteRule . / [F,L]
#Bloqueia todas URLs que possuem /plone_control_panel
RewriteCond %{REQUEST_URI} ^/(.*)plone_control_panel$
RewriteRule . / [F,L]
#Bloqueia todas URLs que possuem /member_search_results
RewriteCond %{REQUEST_URI} ^/(.*)member_search_results
RewriteRule . / [F,L]
#Bloqueia todas URLs que possuem /prefs_users_overview
RewriteCond %{REQUEST_URI} ^/(.*)prefs_users_overview
RewriteRule . / [F,L]
</IfModule>
Comentários