Bloqueando los ataques más básicos

En las tareas rutinarias de revisión de los logs, podemos encontrar intentos de acceso por fuerza bruta en el servicio de correo, ssh, ftp, y logs en apache de los scanners más comunes buscando por rutas concretas de foros phpbb, mysqladmin, etc…

Una solución muy cómoda y rápida para bloquear los ataques más básicos es fail2ban que revisa los logs en busca de expresiones regulares que definimos para bloquear IPs.

En nuestro caso vamos a bloquear las ips que están generando errores 404 en apache, es decir están itentando consultar páginas que no existen.

Como es habitual tenemos un script de copiar y pegar para instalar fail2ban y agregar nuestra regla :

apt-get --yes install fail2ban

cat > /etc/fail2ban/filter.d/apache-404.conf << EOF
##
## http://www.hostingaldescubierto.com
## stop web scanners
##
## Bassed on : http://blog.barbarycodes.com/2010/10/06/automated-banning-of-script-kiddies-with-fail2ban/
##
##
[Definition]
failregex = (?P[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}) .+ 404 [0-9]+ "
ignoreregex =
EOF

cat >> /etc/fail2ban/jail.conf << EOF
[apache-404]
enabled = true
port = http,https
filter = apache-404
logpath = /var/log/apache2/access.log
bantime = 3600
findtime = 60
maxretry = 5
EOF

/etc/init.d/fail2ban restart

Esperamos que os sirva y que os quite algunos dolores de cabeza 😀

Prestashop : estructura de los ficheros de idiomas

Si estas tocando a mano los ficheros de idiomas de prestashop, tienes que saber básicamente esto :

Una linea de ejemplo:

[shell]
$_MODULE[‘< {blocksearchpalpusa}prestashop>blocksearchpalpusa-top_13348442cc6a27032d2b4aa28b75a5d3′] = ‘Buscar’;
[/shell]

Descripción de los campos :

[shell]
{blocksearchpalpusa} : nombre del modulo ( directorio )
prestashop -> theme por defecto
locksearchpalpusa-top : nombre del fichero .tpl
13348442cc6a27032d2b4aa28b75a5d3 : md5 de la cadena de texto a traducir md5( ‘Search’ )
[/shell]

Son notas rápidas sólamente 😀

Prestashop : Listado categorías de módulos

Si estais desarrollando un módulo y no sabeis qué categoría asignarle a un módulo , aquí está el listado:

Prestashop 1.4 ( /admin/tabs/AdminModules.php )

[shell]
$this->listTabModules = array(
‘administration’ => $this->l(‘Administration’),
‘advertising_marketing’ => $this->l(‘Advertising & Marketing’),
‘analytics_stats’ => $this->l(‘Analytics & Stats’),
‘billing_invoicing’ => $this->l(‘Billing & Invoicing’),
‘checkout’ => $this->l(‘Checkout’),
‘content_management’ => $this->l(‘Content Management’),
‘export’ => $this->l(‘Export’),
‘front_office_features’ => $this->l(‘Front Office Features’),
‘i18n_localization’ => $this->l(‘I18n & Localization’),
‘merchandizing’ => $this->l(‘Merchandizing’),
‘migration_tools’ => $this->l(‘Migration Tools’),
‘payments_gateways’ => $this->l(‘Payments & Gateways’),
‘payment_security’ => $this->l(‘Payment Security’),
‘pricing_promotion’ => $this->l(‘Pricing & Promotion’),
‘quick_bulk_update’ => $this->l(‘Quick / Bulk update’),
‘search_filter’ => $this->l(‘Search & Filter’),
‘seo’ => $this->l(‘SEO’),
‘shipping_logistics’ => $this->l(‘Shipping & Logistics’),
‘slideshows’ => $this->l(‘Slideshows’),
‘smart_shopping’ => $this->l(‘Smart Shopping’),
‘market_place’ => $this->l(‘Market Place’),
‘social_networks’ => $this->l(‘Social Networks’),
‘others’=> $this->l(‘Other Modules’));
[/shell]

Error: f.easing[i.animatedProperties[this.prop]] is not a function

Para que alguien le solucione la vida :

Este error aparece en una instalación de wordpress 3.3.2 al instalar lightbox y con ‘theme’ Zerafin :

[shell]
Error: f.easing[i.animatedProperties[this.prop]] is not a function
[/shell]

Es un problema de compatibilidades de jquery… los que no nos dedicamos a programar con jquery es para nosotros bastante tedioso solucionar este tipo de problemas…

En este caso, hay un problema de compatiblidad de jquery.1.7.1.js con jquery.easing.1.1.js y se puede solucionar así

[shell]
# en la carpeta que contiene el theme Zerafin wp-content/themes/Zerafin/js
wget http://gsgd.co.uk/sandbox/jquery/easing/jquery.easing.1.3.js
wget http://gsgd.co.uk/sandbox/jquery/easing/jquery.easing.compatibility.js
[/shell]

y modificar el header.php del theme

[shell]
eliminar :
wp_enqueue_script(‘easing’, get_stylesheet_directory_uri() . ‘/js/jquery.easing.1.1.js’);

agregar :
wp_enqueue_script(‘easing’, get_stylesheet_directory_uri() . ‘/js/jquery.easing.1.3.js’);
wp_enqueue_script(‘easing-comp’, get_stylesheet_directory_uri() . ‘/js/jquery.easing.compatibility.js’);
[/shell]

y funciona.

Actualización:

Reemplazar en NUESTRO CÓDIGO :
“easeout”,”easein”,”easeinout” por “easeOutQuad”,”easeInQuad” o “easeInOutQuad”.
Gracias a http://blog.brothersmorrison.com/?p=154

Error: f.easing[i.animatedProperties[this.prop]] is not a function

Para que alguien le solucione la vida :

Este error aparece en una instalación de wordpress 3.3.2 al instalar lightbox y con ‘theme’ Zerafin :

Error: f.easing[i.animatedProperties[this.prop]] is not a function

Es un problema de compatibilidades de jquery… los que no nos dedicamos a programar con jquery es para nosotros bastante tedioso solucionar este tipo de problemas…

En este caso, hay un problema de compatiblidad de jquery.1.7.1.js con jquery.easing.1.1.js y se puede solucionar así

# en la carpeta que contiene el theme Zerafin wp-content/themes/Zerafin/js
wget http://gsgd.co.uk/sandbox/jquery/easing/jquery.easing.1.3.js
wget http://gsgd.co.uk/sandbox/jquery/easing/jquery.easing.compatibility.js

y modificar el header.php del theme

eliminar :
wp_enqueue_script('easing', get_stylesheet_directory_uri() . '/js/jquery.easing.1.1.js');

agregar :
wp_enqueue_script('easing', get_stylesheet_directory_uri() . '/js/jquery.easing.1.3.js');
wp_enqueue_script('easing-comp', get_stylesheet_directory_uri() . '/js/jquery.easing.compatibility.js');

y funciona.

Options FollowSymLinks or SymLinksIfOwnerMatch is off which implies that RewriteRule directive is forbidden

Otro error recurrente que aparece mucho en instalaciones con wordpress

[Mon Jun 11 08:17:25 2012] [error] [client 127.0.0.1] Options FollowSymLinks or SymLinksIfOwnerMatch is off which implies that RewriteRule directive is forbidden: /var/www/vhosts/hostingaldescubierto.org/httpdocs/index.pl

En instalaciones Debian se corrige editando el fichero /etc/apache2/mods-available/dir.conf
La linea original es esta:

          DirectoryIndex index.html index.cgi index.pl index.php index.xhtml index.htm

y vamos a dejar una reducida

          DirectoryIndex index.html index.php

De forma que sólo se ejecuten estos ficheros como índices del directorio.