<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Apliweb</title>
	<atom:link href="http://apliweb.com/feed" rel="self" type="application/rss+xml" />
	<link>http://apliweb.com</link>
	<description></description>
	<lastBuildDate>Mon, 29 Apr 2013 09:47:30 +0000</lastBuildDate>
	<language>es-ES</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	
		<item>
		<title>Configura alertas por uso de ancho de banda con nagios y check_tcptraffic</title>
		<link>http://apliweb.com/blog/configura-alertas-por-uso-de-ancho-de-banda-con-nagios-y-check_tcptraffic?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=configura-alertas-por-uso-de-ancho-de-banda-con-nagios-y-check_tcptraffic</link>
		<comments>http://apliweb.com/blog/configura-alertas-por-uso-de-ancho-de-banda-con-nagios-y-check_tcptraffic#comments</comments>
		<pubDate>Sun, 28 Apr 2013 23:28:40 +0000</pubDate>
		<dc:creator>raul</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Sistemas]]></category>
		<category><![CDATA[Bandwith]]></category>
		<category><![CDATA[DDoS]]></category>
		<category><![CDATA[Nagios]]></category>
		<category><![CDATA[NRPE]]></category>
		<category><![CDATA[Red]]></category>

		<guid isPermaLink="false">http://apliweb.com/?p=425</guid>
		<description><![CDATA[Hoy una receta interesante para Nagios, que permitirá recibir alertas por consumo de ancho de banda en vuestros servidores, algo muy util para detectar rápidamente un uso fraudulento de vuestra red. Detectamos tráfico anomalo (picos altos de salida o entrada) cuando algo &#8220;no está funcionando de forma normal&#8221;, lo mas habitual es encontrar estos picos [...]]]></description>
				<content:encoded><![CDATA[<p style="text-align: center;"><a href="http://apliweb.com/wp-content/uploads/2013/04/stockvault-server-network-panel142572.jpg"><img class="aligncenter  wp-image-428" alt="Network Switch" src="http://apliweb.com/wp-content/uploads/2013/04/stockvault-server-network-panel142572-1024x653.jpg" width="491" height="314" /></a></p>
<p>Hoy una receta interesante para <a href="http://apliweb.com/tag/nagios" class="st_tag internal_tag" rel="tag" title="Entradas etiquetadas con Nagios">Nagios</a>, que permitirá recibir alertas por consumo de ancho de banda en vuestros servidores, algo muy util para detectar rápidamente un uso fraudulento de vuestra <a href="http://apliweb.com/tag/red" class="st_tag internal_tag" rel="tag" title="Entradas etiquetadas con Red">red</a>.</p>
<p>Detectamos tráfico anomalo (picos altos de salida o entrada) cuando algo &#8220;no está funcionando de forma normal&#8221;, lo mas habitual es encontrar estos picos por alguno de estos motivos:</p>
<p>- Un aumento significativo en el numero de conexiones a alguna web que alojamos (tráfico de salida)<br />
- Estamos sufriendo un <a href="http://apliweb.com/tag/ddos" class="st_tag internal_tag" rel="tag" title="Entradas etiquetadas con DDoS">DDoS</a> contra nuestro servidor (tráfico de entrada)<br />
- Algun alojamiento ha sido hackeado y han conseguido colocar algun script maligno</p>
<p>Si se dá el tercer caso, el tráfico que generen con el script puede ser de cualquier tipo, todo depende de lo que se &#8220;permita&#8221; hacer en el servidor y lo bien bastionado que lo tengamos todo.</p>
<p>Detectar el aumento en el ancho de banda es relativamente sencillo si estamos permanentemente monitorizando el servidor, pero lo que queremos, es que nuestro sistema de <a href="http://apliweb.com/tag/monitorizacion" class="st_tag internal_tag" rel="tag" title="Entradas etiquetadas con Monitorización">monitorización</a> sea capaz de avisarnos de ese aumento de tráfico extraño, sin tener los ojos puestos en las gráficas en todo momento.</p>
<p>Para este manual, nos encontramos con que ya disponemos de un monitor instalado basado en Nagios (ya hemos hablado de el en <a title="Monitorizar estado del RAID con Nagios" href="http://apliweb.com/blog/monitorizar-estado-del-raid-con-nagios" target="_blank">otras ocasiones</a>) y <a href="http://apliweb.com/tag/nrpe" class="st_tag internal_tag" rel="tag" title="Entradas etiquetadas con NRPE">NRPE</a> instalado en el servidor que vamos a monitorizar, con esta base lo que nos permitirá monitorizar el ancho de banda será el plugin &#8220;<a title="Nagios Exchange: Check TCP Traffic" href="http://exchange.nagios.org/directory/Plugins/Network-Connections%2C-Stats-and-Bandwidth/check_tcptraffic/details" target="_blank">check_tcptraffic</a>&#8221; podemos instalarlo siguiendo estos pasos:</p>
<p><strong>EN EL SERVIDOR A MONITORIZAR:</strong> </p>
<p>Descargar check_tcptraffic de aqui: </p>
<pre class="brush:bash">http://exchange.nagios.org/components/com_mtree/attachment.<a href="http://apliweb.com/tag/php" class="st_tag internal_tag" rel="tag" title="Entradas etiquetadas con PHP">php</a>?link_id=1483&amp;cf_id=24</pre>
<p>Y ejecutamos:</p>
<pre class="brush:bash">tar zxvf check_tcptraffic-2.2.4.tar.gz
cd check_tcptraffic-2.2.4
perl Makefile.PL
make
make install</pre>
<p>Una vez instalado es probable que a la hora de ejecutarlo tengamos algun problema con modulos de perl que nos faltan, por ejemplo, si ejecutamos nuestro plugin y obtenemos algun error similar a esto:</p>
<pre class="brush:bash"># /usr/lib/nagios/plugins/contrib/check_tcptraffic
Can't locate Nagios/Plugin/Threshold.pm in @INC (@INC contains: /usr/lib64/perl5/site_perl/5.8.8/x86_64-linux-thread-multi /usr/lib/perl5/site_perl/5.8.8 /usr/lib/perl5/site_perl /usr/lib64/perl5/vendor_perl/5.8.8/x86_64-linux-thread-multi /usr/lib/perl5/vendor_perl/5.8.8 /usr/lib/perl5/vendor_perl /usr/lib64/perl5/5.8.8/x86_64-linux-thread-multi /usr/lib/perl5/5.8.8 .) at /usr/lib/nagios/plugins/contrib/check_tcptraffic line 36.
BEGIN failed--compilation aborted at /usr/lib/nagios/plugins/contrib/check_tcptraffic line 36.</pre>
<p>o esto otro:</p>
<pre class="brush:bash"># /usr/lib/nagios/plugins/contrib/check_tcptraffic
Can't locate Readonly.pm in @INC (@INC contains: /usr/lib64/perl5/site_perl/5.8.8/x86_64-linux-thread-multi /usr/lib/perl5/site_perl/5.8.8 /usr/lib/perl5/site_perl /usr/lib64/perl5/vendor_perl/5.8.8/x86_64-linux-thread-multi /usr/lib/perl5/vendor_perl/5.8.8 /usr/lib/perl5/vendor_perl /usr/lib64/perl5/5.8.8/x86_64-linux-thread-multi /usr/lib/perl5/5.8.8 .) at /usr/lib/nagios/plugins/contrib/check_tcptraffic line 40.
BEGIN failed--compilation aborted at /usr/lib/nagios/plugins/contrib/check_tcptraffic line 40.</pre>
<p>La solución pasa por instalar los modulos que nos falten, mediante CPAN o el sistema de paquetes de nuestra distribución, si teneis <a href="http://apliweb.com/tag/centos" class="st_tag internal_tag" rel="tag" title="Entradas etiquetadas con CentOS">CentOS</a>, seria tan sencillo como hacer esto:</p>
<pre class="brush:bash">yum install perl-Nagios-Plugin perl-Readonly</pre>
<p>Y si queremos hacerlo desde CPAN seria algo así:</p>
<pre class="brush:bash">perl -MCPAN -e 'shell'
cpan&gt; install Nagios::Plugin::Threshold
cpan&gt; install Readonly</pre>
<p>Una vez solucionadas las dependencias, comprobamos que el comando no da errores:</p>
<pre class="brush:bash"># /usr/lib/nagios/plugins/contrib/check_tcptraffic
Usage: check_tcptraffic [OPTIONS]

Missing argument: critical
Missing argument: warning
Missing argument: interface
Missing argument: speed</pre>
<p>Enhorabuena! tenemos el plugin listo para funcionar, tan solo nos falta decidir el ancho de banda a partir del cual nos enviará un warning o un critical, en nuestro caso decidimos que 10mbits/s es un síntoma de alerta y que a partir de 14mbits/s será un critical, como al plugin le tenemos que pasar los valores en bytes/s tendríamos que ejecutar algo así:</p>
<pre class="brush:bash"># /usr/lib/nagios/plugins/contrib/check_tcptraffic -i eth0 -s 100 -w 1310720 -c 1835008
TCPTRAFFIC OK - eth0 288305 bytes/s | TOTAL=288305B;1310720;1835008 IN=282888B;; OUT=5417B;; TIME=1B;;</pre>
<p>OJO! la primera vez que ejecutemos el script, nos indicará que no encuentra la BD y que la inicializa, en la siguiente ejecución tendremos ya datos reales.</p>
<p>Los parametros que tenemos que cambiar en esta llamada son:</p>
<pre class="brush:bash">-i
-s
-w
-c</pre>
<p>Con estos valores configurados, editamos el fichero de configuración de NRPE, normalmente: /etc/nagios/nrpe.cfg y agregamos la linea:</p>
<pre class="brush:bash">command[check_traffic]=/usr/lib/nagios/plugins/contrib/check_tcptraffic -i eth0 -s 100 -w 1310720 -c 1835008</pre>
<p>Una vez agregada, reiniciamos nrpe.</p>
<p><strong>EN EL SERVIDOR NAGIOS:</strong></p>
<p>Agregamos el en el nagios el servicio que monitorizará el tráfico, si disponeis de un front end como <a href="http://apliweb.com/tag/centreon" class="st_tag internal_tag" rel="tag" title="Entradas etiquetadas con Centreon">centreon</a> para el nagios esta tarea se simplifica al máximo, en caso contrario se tendria que crear un servicio similar a este:</p>
<pre class="brush:bash">define service{
	use generic-service
	host_name host.domain.com
	service_description Ancho de banda
	is_volatile 0
	check_period 24x7
	max_check_attempts 4
	normal_check_interval 5
	retry_check_interval 1
	contact_groups admins
	notification_options w,u,c,r
	notification_interval 10
	notification_period 24x7
	check_command check_nrpe!check_traffic
}</pre>
<p>Una vez introducido el servicio, lo asignamos al servidor que vamos a monitorizar y reiniciamos nagios.</p>
<p>Espero que os haya sido de utilidad!</p>
]]></content:encoded>
			<wfw:commentRss>http://apliweb.com/blog/configura-alertas-por-uso-de-ancho-de-banda-con-nagios-y-check_tcptraffic/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Como proteger wordpress de un ataque de fuerza bruta con fail2ban</title>
		<link>http://apliweb.com/blog/como-proteger-wordpress-de-un-ataque-de-fuerza-bruta-con-fail2ban?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=como-proteger-wordpress-de-un-ataque-de-fuerza-bruta-con-fail2ban</link>
		<comments>http://apliweb.com/blog/como-proteger-wordpress-de-un-ataque-de-fuerza-bruta-con-fail2ban#comments</comments>
		<pubDate>Fri, 12 Apr 2013 20:10:15 +0000</pubDate>
		<dc:creator>raul</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Sistemas]]></category>
		<category><![CDATA[Administración de sistemas]]></category>
		<category><![CDATA[ataques]]></category>
		<category><![CDATA[CentOS]]></category>
		<category><![CDATA[fail2ban]]></category>
		<category><![CDATA[Fuerza bruta]]></category>
		<category><![CDATA[sistemas]]></category>
		<category><![CDATA[Wordpress]]></category>

		<guid isPermaLink="false">http://apliweb.com/?p=404</guid>
		<description><![CDATA[Si tienes un wordpress esto te interesa y mucho! Desde hace aproximadamente 2 dias, se está produciendo un ataque distribuido a gran escala contra toda instalación wordpress que se encuentre online. Es posible que si mantienes un cierto control sobre las visitas de tu blog, hayas notado un incremento de visitantes que solo acceden al [...]]]></description>
				<content:encoded><![CDATA[<p><a href="http://apliweb.com/wp-content/uploads/2013/04/Wordpress-e1365797384304.jpg"><img class="aligncenter size-full wp-image-408" alt="Wordpress" src="http://apliweb.com/wp-content/uploads/2013/04/Wordpress-e1365797384304.jpg" width="500" height="247" /></a></p>
<p>Si tienes un <a href="http://apliweb.com/tag/wordpress" class="st_tag internal_tag" rel="tag" title="Entradas etiquetadas con Wordpress">wordpress</a> esto te interesa y mucho!</p>
<p>Desde hace aproximadamente 2 dias, se está produciendo un ataque distribuido a gran escala contra toda instalación wordpress que se encuentre online.</p>
<p>Es posible que si mantienes un cierto control sobre las visitas de tu blog, hayas notado un incremento de visitantes que solo acceden al fichero wp-login.<a href="http://apliweb.com/tag/php" class="st_tag internal_tag" rel="tag" title="Entradas etiquetadas con PHP">php</a>, como ya te habrás imaginado, estos visitantes no buscan nada bueno, se trata de un ataque de <a href="http://apliweb.com/tag/fuerza-bruta" class="st_tag internal_tag" rel="tag" title="Entradas etiquetadas con Fuerza bruta">fuerza bruta</a> contra tu blog y lo único que pretenden es conseguir hacerse con el acceso admin de tu blog, para posteriormente subir código malicioso en tu blog.</p>
<p>Este ataque distribuido que estámos sufriendo puede mitigarse desde varios frentes:</p>
<ol>
<li><strong>Configuración desde Wordpres.</strong></li>
<li><strong>Configuración a nivel de servidor.</strong></li>
</ol>
<p>Lamentablemente,  si tu WordPress está alojado en un servidor compartido, tendrás que descartar la segunda alternativa, pero te animo a que lo comuniques a tu proveedor de hosting, nunca está de más informar para que se tomen las medidas adecuadas, en cualquier caso si que puedes tomar medidas que protegerán bastante bien tu blog frente a atacantes, <a title="Consejos de seguridad wordpress" href="http://www.samuelaguilera.com/archivo/consejos-seguridad-wordpress.xhtml" target="_blank">aquí</a> tienes unas cuantas ideas interesantes, también puedes añadir el plugin &#8220;<a title="Limit login attempts" href="http://wordpress.org/extend/plugins/limit-login-attempts/" target="_blank"><strong>limit login attempts</strong></a>&#8221; es un método extremadamente sencillo de protegerte y el conocido <a title="Better WP Security plugin" href="http://wordpress.org/extend/plugins/better-wp-security/" target="_blank">Better WP Security</a></p>
<p>En este post nos ocuparemos del segundo caso, tenemos control sobre el servidor en el que tenemos instalaciones de wordpress, y aunque seguro que nuestros clientes con wordpress toman las medidas necesarias para evitar estos <a href="http://apliweb.com/tag/ataques" class="st_tag internal_tag" rel="tag" title="Entradas etiquetadas con ataques">ataques</a> (ehem&#8230;) no está de más que nosotros tengamos previstas ciertas medidas de contingencia.</p>
<p>En concreto y ya que en otro post hemos explicado <a title="fail2ban: Evitando ataques en nuestro servidor web" href="http://apliweb.com/blog/fail2ban-evitando-ataques-en-nuestro-servidor-web" target="_blank">como se instala fail2ban para proteger nuestro servidor de ataques</a> de otro tipo, vamos a centrarnos en la configuración de <a href="http://apliweb.com/tag/fail2ban" class="st_tag internal_tag" rel="tag" title="Entradas etiquetadas con fail2ban">fail2ban</a>, simplemente tendremos que agregar una regla para ayudarnos a sortear este ataque.</p>
<p>Si nos hemos fijado en los accesos en los logs, podemos encontrar algo asi:</p>
<pre class="brush:bash">204.**** - - [12/Apr/2013:12:55:16 +0200] "POST /wp-login.php HTTP/1.1" 200 3673 "-" "-"
109.**** - - [12/Apr/2013:13:27:29 +0200] "GET /wp-login.php HTTP/1.1" 200 2768 "-" "Python-urllib/2.7"
109.**** - - [12/Apr/2013:13:27:38 +0200] "GET /wp-login.php HTTP/1.1" 200 2768 "-" "Python-urllib/2.7"
204.**** - - [12/Apr/2013:14:29:59 +0200] "GET /wp-login.php HTTP/1.1" 200 2768 "-" "-"
204.**** - - [12/Apr/2013:14:29:59 +0200] "GET /wp-login.php HTTP/1.1" 200 2768 "-" "-"
204.**** - - [12/Apr/2013:14:30:13 +0200] "POST /wp-login.php HTTP/1.1" 200 3673 "-" "-"
204.**** - - [12/Apr/2013:14:30:13 +0200] "POST /wp-login.php HTTP/1.1" 200 3673 "-" "-"
...
...</pre>
<p>De modo que simplemente tendremos que agregar en nuestro fichero /etc/fail2ban/jail.conf la siguiente entrada:</p>
<pre class="brush:bash">[apache-wp-login]
enabled = true
port    = http,https
filter  = apache-wp-login
action   = iptables-multiport[name=ATAQUE-WP, port="http,https"]
           sendmail-buffered[name=ATAQUE-WP, lines=5, dest=TU EMAIL]
logpath = /var/log/httpd/access_log
maxretry = 5
findtime = 120</pre>
<p>Lo que estamos haciendo es indicar un máximo de 5 reintentos (maxretry) en 2 minutos (findtime) en un fichero de logs concreto (logpath).</p>
<p>Ojo: hay que buscar un log donde se almacenen TODAS las entradas de nuestros alojamientos, si usais <a href="http://apliweb.com/tag/plesk" class="st_tag internal_tag" rel="tag" title="Entradas etiquetadas con Plesk">plesk</a> probablemente tengais que utilizar la linea: logpath = /var/www/vhosts/*/statistics/logs/access_log</p>
<p>Posteriormente agregamos el FILTRO en /etc/fail2ban/filters.d/ creando el fichero apache-wp-login.conf con este contenido:</p>
<pre class="brush:bash"># Fail2Ban configuration file
#
#

[Definition]

# Option:  failregex
# Notes.:  Regexp to catch Apache dictionary attacks on WordPress wp-login
# Values:  TEXT
#
failregex = .*] "(GET|POST) /wp-login.php

# Option:  ignoreregex
# Notes.:  regex to ignore. If this regex matches, the line is ignored.
# Values:  TEXT
#
ignoreregex =</pre>
<p>Una vez creado el fichero, reiniciamos fail2ban, y desde ahora banearemos por iptables las ip que intenten acceder mas de 5 veces a nuestra zona de administración de wordpress en menos de dos minutos, lo malo es que esto te incluye a ti&#8230; asi que si has olvidado la clave de tu blog, no lo intentes más veces!!! en cualquier caso, el baneo por defecto es de 10minutos, de modo que podrás volver a intentarlo pasado ese tiempo.</p>
<p>Te recuerdo que esta medida de contingencia por si sola no es suficiente para prevenir ataques, siempre es recomendable incorporarla a los métodos de prevención de ataques de los que ya se disponga (firewall, mod_evasive&#8230;) y comunicar a los clientes los problemas que van a encontrarse si no mantienen su blog actualizado.</p>
]]></content:encoded>
			<wfw:commentRss>http://apliweb.com/blog/como-proteger-wordpress-de-un-ataque-de-fuerza-bruta-con-fail2ban/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>fail2ban: Evitando ataques en nuestro servidor web</title>
		<link>http://apliweb.com/blog/fail2ban-evitando-ataques-en-nuestro-servidor-web?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=fail2ban-evitando-ataques-en-nuestro-servidor-web</link>
		<comments>http://apliweb.com/blog/fail2ban-evitando-ataques-en-nuestro-servidor-web#comments</comments>
		<pubDate>Tue, 13 Dec 2011 22:56:03 +0000</pubDate>
		<dc:creator>raul</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Sistemas]]></category>
		<category><![CDATA[Administración de sistemas]]></category>
		<category><![CDATA[CentOS]]></category>
		<category><![CDATA[fail2ban]]></category>

		<guid isPermaLink="false">http://www.apliweb.com/?p=392</guid>
		<description><![CDATA[Fail2Ban es un pequeño script programado en python que se encarga de observar los logs en busca de &#8220;patrones&#8221; sospechosos, y es capaz de tomar medidas para bloquear a los atacantes ya sea con iptables o lanzando un comando de nuestra elección. Para instalarlo en CentOS, podemos instalar el repositorio de EPEL siguiendo los siguientes [...]]]></description>
				<content:encoded><![CDATA[<p style="text-align: center;"><img class="aligncenter  wp-image-395" title="fail2ban" src="http://www.apliweb.com/wp-content/uploads/2011/12/fail2ban.jpg" alt="" width="504" height="203" /></p>
<p><a href="http://apliweb.com/tag/fail2ban" class="st_tag internal_tag" rel="tag" title="Entradas etiquetadas con fail2ban">Fail2Ban</a> es un pequeño script programado en python que se encarga de observar los logs en busca de &#8220;patrones&#8221; sospechosos, y es capaz de tomar medidas para bloquear a los atacantes ya sea con iptables o lanzando un comando de nuestra elección.</p>
<p>Para instalarlo en <a href="http://apliweb.com/tag/centos" class="st_tag internal_tag" rel="tag" title="Entradas etiquetadas con CentOS">CentOS</a>, podemos instalar el repositorio de <a title="EPEL Repositorio de paquetes" href="http://fedoraproject.org/wiki/EPEL" target="_blank">EPEL</a> siguiendo los siguientes pasos:</p>
<pre class="brush:bash">rpm -Uvh http://download.fedoraproject.org/pub/epel/6/i386/epel-release-6-5.noarch.rpm</pre>
<p>Una vez instalado el repositorio, instalamos <em>fail2ban</em>:</p>
<pre class="brush:bash">yum -y install fail2ban</pre>
<p>El directorio de configuracion de fail2ban es /ec/fail2ban/ allí encontraremos 2 directorios: action.d y filter.d.</p>
<p>En action.d, encontraremos las acciones que fail2ban realizará cuando alguno de nuestros filtros &#8220;cace&#8221; alguna IP haciendo maldades. Estas acciones pasan por filtrado con iptables, envio de mails de aviso etc, mientras que en filter.d, tenemos todos los filtros que utilizaremos a modo de &#8220;trampa&#8221; para cazar a nuestros atacantes.</p>
<p>En nuestro caso, vamos a configurar fail2ban en un servidor web, al que ultimamente se le ha detectado un alto numero de intentos de ataque de inyección, tanto SQL como XSS, y como mínimo pretendemos bloquear los accesos que hemos detectado en los logs.</p>
<p>Para eso tendremos que editar el fichero <strong>jail.conf</strong> del directorio<strong> /etc/fail2ban/</strong> en este fichero tendremos todas las trampas o &#8220;jails&#8221; y sus correspondientes acciones, acompañados de unos parametros por defecto, de entrada, es recomendable que agreguemos en la linea &#8220;ignoreip&#8221; nuestra ip local, o la de algun servidor con el que podamos conectar en caso de que por error nos bloqueemos nosotros mismos.</p>
<pre class="brush:bash">ignoreip = 127.0.0.1 &lt;nuestra ip&gt;</pre>
<p>Una vez hecho esto, revisamos todas las entradas de este fichero, la primera entrada que encontramos es la de ssh, esta &#8220;jail&#8221; en nuestro caso es asi:</p>
<pre class="brush:bash">[ssh-iptables]
enabled  = true
filter   = sshd
action   = iptables[name=SSH, port=ssh, protocol=tcp]
           sendmail-whois[name=SSH, dest=root, sender=fail2ban@mail.com]
logpath  = /var/log/secure
maxretry = 5</pre>
<p>Tenemos por orden los siguientes campos:</p>
<ul>
<li>El nombre</li>
<li>Si está habilitado</li>
<li>La accion a ejecutar (una por linea), en este caso filtramos con el &#8220;action&#8221; iptables el puerto ssh y mandamos un mail con el action sendmail-whois a fail2ban@mail.com</li>
<li>Indicamos el fichero de logs que leera el filtro <strong>/var/log/secure</strong> es donde logea SSH.</li>
<li>Y le indicamos el numero de intentos con el que ejecutamos la accion (en este caso 5)</li>
</ul>
<p>Nosotros no tenemos acceso SSH al exterior en nuestras máquinas de modo que vamos a dejar &#8220;<em>enabled=false</em>&#8220;, y procederemos a configurar las siguientes &#8220;jails&#8221; que si que son interesantes para el servicio web:</p>
<pre class="brush:bash">[apache-tcpwrapper]
enabled  = true
filter   = apache-auth
action   = hostsdeny
logpath  = /var/www/vhosts/*/statistics/logs/error_log
maxretry = 6

[apache-badbots]
enabled  = true
filter   = apache-badbots
action   = iptables-multiport[name=BadBots, port="http,https"]
           sendmail-buffered[name=BadBots, lines=5, dest=you@mail.com]
logpath  = /var/www/vhosts/*/statistics/logs/access_log
bantime  = 172800
maxretry = 1

# Para prevenir <a href="http://apliweb.com/tag/ataques" class="st_tag internal_tag" rel="tag" title="Entradas etiquetadas con ataques">ataques</a> de inyeccion de codigo
[<a href="http://apliweb.com/tag/php" class="st_tag internal_tag" rel="tag" title="Entradas etiquetadas con PHP">php</a>-url-fopen]
enabled = true
port    = http,https
filter  = <a href="http://apliweb.com/tag/php" class="st_tag internal_tag" rel="tag" title="Entradas etiquetadas con PHP">php</a>-url-fopen
logpath = /var/www/vhosts/*/statistics/logs/access_log
maxretry = 1

# Evitamos ataques de ips que accedan a urls que contengan passthru o system o similares
[apache-hacks]
enabled  = true
port     = http,https
filter   = apache-hacks
action   = iptables-multiport[name=AtaqueApache, port="http,https"]
           sendmail-buffered[name=AtaqueApache, lines=5, dest=you@mail.com]
logpath  = /var/www/vhosts/*/statistics/logs/access_log
maxretry = 3</pre>
<p>Lo realmente importante aqui, es cambiar las lineas logpath, ya que nuestro servidor es un <a href="http://apliweb.com/tag/plesk" class="st_tag internal_tag" rel="tag" title="Entradas etiquetadas con Plesk">plesk</a> la ruta de los logs es &#8220;<em>/var/www/vhosts/*/statistics/logs/access_log</em>&#8221; o &#8220;<em>/var/www/vhosts/*/statistics/logs/error_log</em>&#8221; el resto, son cambios en el mail de destino al que mandaremos el mail, y los nombres de los filtros a aplicar, nosotros aplicamos estos:</p>
<p><strong>apache-tcpwrapper:</strong></p>
<blockquote><p>Bloquea con el fichero /etc/hosts.deny los hosts que se intentan conectar a dominios protegidos con contraseña (estos fallos de autenticación aparecen en el error_log)</p></blockquote>
<p><strong>apache-badbots</strong></p>
<blockquote><p>Bloquea por iptables los hosts que se conectan haciendo uso de un &#8220;User Agent&#8221; sospechoso, y nos envia un mail para avisarnos.</p></blockquote>
<p><strong>php-url-fopen</strong></p>
<blockquote><p>Bloqueamos los hosts, que intentan una inyeccion de código del tipo: GET /index.php?n=http://www.dominio.com/fichero.htm</p></blockquote>
<p><strong>apache-hacks</strong></p>
<blockquote><p>Bloquea los hosts que acceden a urls sospechosas, haciendo un SCAN o directamente acceden a urls intentando inyectar llamadas al sistema desde php (system, passthru&#8230;) esta regla se va rellenando con las expresiones que vamos encontrando en los logs, al final del post, adjuntamos el contenido del filtro en nuestro caso.</p></blockquote>
<p>En el ultimo caso, hemos creado un fichero apache-hacks.conf en el directorio filters.d, para empezar podemos agregar entradas como estas:</p>
<blockquote><p>failregex = ^&lt;HOST&gt; -.*&#8221;(GET|POST).*\?.*passthru.* HTTP\/.*$<br />
^&lt;HOST&gt; -.*&#8221;(GET|POST).*\?.*system.* HTTP\/.*$</p></blockquote>
<p>Y mas adelante agregar nuevas reglas.</p>
<p>Con estos 4 casos, podemos evitar algunos de los intentos de ataque mas comunes, pero no podemos ni por un momento pensar que con solo aplicar esto estamos a salvo.</p>
<p>En otro post vamos a explicar las medidas de seguridad básicas que todo servidor de alojamiento tiene que aplicar para no ser demasiado vulnerable, mod_security, apache ITK, Hardening de PHP, SuHoshin&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://apliweb.com/blog/fail2ban-evitando-ataques-en-nuestro-servidor-web/feed</wfw:commentRss>
		<slash:comments>9</slash:comments>
		</item>
		<item>
		<title>Una alternativa accesible a cufón para la tipografía de tu web</title>
		<link>http://apliweb.com/blog/una-alternativa-accesible-a-cufon-para-la-tipografia-de-tu-web?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=una-alternativa-accesible-a-cufon-para-la-tipografia-de-tu-web</link>
		<comments>http://apliweb.com/blog/una-alternativa-accesible-a-cufon-para-la-tipografia-de-tu-web#comments</comments>
		<pubDate>Thu, 29 Sep 2011 08:15:15 +0000</pubDate>
		<dc:creator>raul</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[Diseño]]></category>
		<category><![CDATA[tipografia]]></category>
		<category><![CDATA[ttf]]></category>
		<category><![CDATA[web-font]]></category>

		<guid isPermaLink="false">http://www.apliweb.com/?p=368</guid>
		<description><![CDATA[Hoy en dia el uso de cufón para agregar tipografias a nuestra web se ha extendido mucho, la mayor parte de themes que encontramos para WordPress lo utilizan para dar un mejor aspecto a los títulos y encabezados. Para el que no lo sepa, cufón es un sistema de reemplazo de fuentes, que nos permite [...]]]></description>
				<content:encoded><![CDATA[<p style="text-align: center;"><img class="aligncenter size-full wp-image-374" title="Tipografía accesible para tu web" src="http://www.apliweb.com/wp-content/uploads/2011/09/fontface.jpg" alt="" width="492" height="191" /></p>
<p>Hoy en dia el uso de cufón para agregar tipografias a nuestra web se ha extendido mucho, la mayor parte de themes que encontramos para <a href="http://apliweb.com/tag/wordpress" class="st_tag internal_tag" rel="tag" title="Entradas etiquetadas con Wordpress">WordPress</a> lo utilizan para dar un mejor aspecto a los títulos y encabezados.</p>
<p>Para el que no lo sepa, cufón es un sistema de reemplazo de fuentes, que nos permite ofrecer una <a href="http://apliweb.com/tag/tipografia" class="st_tag internal_tag" rel="tag" title="Entradas etiquetadas con tipografia">tipografia</a> en la web sin necesidad de que el visitante la tenga instalada en su equipo, para ello, usa javascript y renderiza la tipografía para el navegador, si usamos IE, nos mostrará capas VML, y si nuestro navegador soporta html5, utilizará la etiqueta &lt;canvas&gt;.</p>
<p>La técnica en si es de lo mas sencilla de usar, tan solo tendremos que incluir el archivo javascript <a title="Cufón YUI" href="http://cufon.shoqolate.com/js/cufon-yui.js" target="_blank">canvas-yui</a> y luego generar otro javascript con la utilidad <a title="ufón" href="http://cufon.shoqolate.com/generate/" rel="nofollow" target="_blank">web de cufón</a>, en la que subiremos los archivos <a href="http://apliweb.com/tag/ttf" class="st_tag internal_tag" rel="tag" title="Entradas etiquetadas con ttf">TTF</a> de la tipografía que queremos generar (a ser posible en todos los formatos: regular, negrita, cursiva y negrita-cursiva), indicaremos un nombre para nuestra fuente y la web nos ofrecerá el archivo para descargar que tendremos que incluir en la cabecera.</p>
<pre class="brush:javascript">&lt;script type="text/javascript" src="js/jquery-1.5.2.min.js"&gt;&lt;/script&gt;
&lt;script type="text/javascript" src="js/cufon-yui.js"&gt;&lt;/script&gt;
&lt;script type="text/javascript" src="js/WalkWaySemiBold_400.font.js"&gt;&lt;/script&gt;</pre>
<p>Para mi, uno de los problemas de este sistema, es que no es ni estándar ni accesible, además, no podremos seleccionar la fuente que veremos en la web, ya que nos aparecerá como una imagen.</p>
<p>Para solucionar estos problemas de accesibilidad, ha nacido una alternativa basada en CSS3, que hace exactamente lo mismo siendo accesible, y permitiendo seleccionar el texto que vemos en pantalla, simplemente usando declaraciones @font-face.</p>
<p>¿Y como funciona? es mas sencillo aún que utilizar cufón, hay multiples alternativas (generadores, hosted webfonts&#8230;) yo he optado por utilizar un generador de webfonts que se llama <a title="Font Squirrel" href="http://www.fontsquirrel.com/fontface/generator" rel="nofollow" target="_blank">fontsquirrel</a>.</p>
<p>Una vez estamos en su generador, tan solo tenemos que subir los TTF igual que hacemos para cufón, y el sistema nos descargará los archivos necesarios para nuestra web, y el código que tendremos que colocar en nuestra hoja de estilos, en mi caso, subi la fuente WalkWaySemiBoldRegular, el código que he tenido que agregar es este:</p>
<pre class="brush:css">@font-face {
    font-family: 'WalkwaySemiBoldRegular';
    src: url('css/walkway_semibold-webfont.eot');
    src: url('css/walkway_semibold-webfont.eot?#iefix') format('embedded-opentype'),
         url('css/walkway_semibold-webfont.woff') format('woff'),
         url('css/walkway_semibold-webfont.ttf') format('truetype'),
         url('css/walkway_semibold-webfont.svg#WalkwaySemiBoldRegular') format('svg');
    font-weight: normal;
    font-style: normal;

}</pre>
<p>El resultado funciona en estos navegadores: <strong>Safari 5.03, IE 6-9, Firefox 3.6-4, Chrome 8, iOS 3.2-4.2, Android 2.2-2.3, Opera 11</strong></p>
<p>Podeis ver el resultado en nuestra web, todos los encabezados y títulos de esta página se renderizan con CSS accesible, sin javascript y sin usar canvas o VML.</p>
]]></content:encoded>
			<wfw:commentRss>http://apliweb.com/blog/una-alternativa-accesible-a-cufon-para-la-tipografia-de-tu-web/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Problemas con DotNetNuke y Plesk 9.5 con IIS 7.5</title>
		<link>http://apliweb.com/blog/problemas-con-dotnetnuke-y-plesk-9-5-con-iis-7-5?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=problemas-con-dotnetnuke-y-plesk-9-5-con-iis-7-5</link>
		<comments>http://apliweb.com/blog/problemas-con-dotnetnuke-y-plesk-9-5-con-iis-7-5#comments</comments>
		<pubDate>Fri, 01 Jul 2011 21:39:01 +0000</pubDate>
		<dc:creator>raul</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[Sistemas]]></category>
		<category><![CDATA[Windows]]></category>
		<category><![CDATA[ASP.net]]></category>
		<category><![CDATA[DNN]]></category>
		<category><![CDATA[DotNetNuke]]></category>
		<category><![CDATA[permisos]]></category>
		<category><![CDATA[Plesk]]></category>

		<guid isPermaLink="false">http://www.apliweb.com/?p=148</guid>
		<description><![CDATA[Despues de subir un sitio web a un alojamiento con plesk 9.5 en windows, te puedes encontrar con sorpresas nada agradables. Lo habitual es que de entrada los permisos en el directorio web de ese alojamiento no sean &#8220;correctos&#8221;, correctos para este software significa que tendremos que asignar permisos totales a los usuarios con los [...]]]></description>
				<content:encoded><![CDATA[<p><a href="http://www.apliweb.com/wp-content/uploads/2011/07/dotnetnuke_logo.jpg"><img class="alignleft size-medium wp-image-159" title="dotnetnuke_logo" src="http://www.apliweb.com/wp-content/uploads/2011/07/dotnetnuke_logo-300x180.jpg" alt="" width="300" height="180" /></a>Despues de subir un sitio web a un alojamiento con <a href="http://apliweb.com/tag/plesk" class="st_tag internal_tag" rel="tag" title="Entradas etiquetadas con Plesk">plesk</a> 9.5 en windows, te puedes encontrar con sorpresas nada agradables.</p>
<p>Lo habitual es que de entrada los <a href="http://apliweb.com/tag/permisos" class="st_tag internal_tag" rel="tag" title="Entradas etiquetadas con permisos">permisos</a> en el directorio web de ese alojamiento no sean &#8220;correctos&#8221;, correctos para este software significa que tendremos que asignar <a href="http://apliweb.com/tag/permisos" class="st_tag internal_tag" rel="tag" title="Entradas etiquetadas con permisos">permisos</a> totales a los usuarios con los que se ejecuta <a href="http://apliweb.com/tag/asp-net" class="st_tag internal_tag" rel="tag" title="Entradas etiquetadas con ASP.net">ASP.NET</a> en el servidor, asi como el usuario con el que funciona el pool de aplicaciones de ese dominio, normalmente IIS_WPG(nombredominio) y su correspondiente IUSR_</p>
<p>Estos permisos los tendremos que dar en la carpeta httpdocs del alojamiento, con boton derecho-&gt;propiedades y en la pestaña seguridad tendremos que marcar en esos usuarios la opcion de &#8220;control total&#8221;.</p>
<p>Una vez asignados los permisos &#8220;correctos&#8221; podemos encontrarnos con un nuevo error, en nuestro caso:</p>
<p>Este se produce porque el usuario PSACLN no tiene acceso al GAC dentro de c:/windows/assembly (aunque no aparezca por ningun lado), podemos solucionar este error de dos formas:</p>
<pre class="brush:shell">Error de servidor en la aplicación '/'.
--------------------------------------------------------------------------------

Acceso denegado. (Excepción de HRESULT: 0x80070005 (E_ACCESSDENIED))
Descripción: Excepción no controlada al ejecutar la solicitud Web actual. Revise el seguimiento de la pila para obtener más información acerca del error y dónde se originó en el código.

Detalles de la excepción: System.UnauthorizedAccessException: Acceso denegado. (Excepción de HRESULT: 0x80070005 (E_ACCESSDENIED))

ASP.NET no está autorizado para obtener acceso al recurso solicitado. Considere la posibilidad de conceder derechos de acceso al recurso para la identidad de solicitud de ASP.NET. Si la aplicación no se va a suplantar, ASP.NET utiliza una identidad de proceso base (normalmente {MACHINE}\ASPNET en IIS 5 o Network Service en IIS 6). Si la aplicación se va a suplantar mediante , la identidad será el usuario anónimo (generalmente IUSR_MACHINENAME) o el usuario solicitado autenticado.

Para conceder a ASP.NET acceso a un archivo, desde el Explorador, haga clic con el botón secundario del mouse en el archivo, elija "Propiedades" y seleccione la ficha Seguridad. Haga clic en "Agregar" para agregar el usuario o grupo adecuado. Resalte la cuenta de ASP.NET y active las casillas según el acceso deseado.

Error de código fuente:

Se ha generado una excepción no controlada durante la ejecución de la solicitud Web actual. La información sobre el origen y la ubicación de la excepción pueden identificarse utilizando la excepción del seguimiento de la pila siguiente.

Seguimiento de la pila:

[UnauthorizedAccessException: Acceso denegado. (Excepción de HRESULT: 0x80070005 (E_ACCESSDENIED))]

[FileLoadException: No se puede cargar el archivo o ensamblado 'System.ServiceModel, Version=3.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089' ni una de sus dependencias. Acceso denegado.]
System.Reflection.Assembly._nLoad(AssemblyName fileName, String codeBase, Evidence assemblySecurity, Assembly locationHint, StackCrawlMark&amp;amp; stackMark, Boolean throwOnFileNotFound, Boolean forIntrospection) +0
System.Reflection.Assembly.nLoad(AssemblyName fileName, String codeBase, Evidence assemblySecurity, Assembly locationHint, StackCrawlMark&amp;amp; stackMark, Boolean throwOnFileNotFound, Boolean forIntrospection) +43
System.Reflection.Assembly.InternalLoad(AssemblyNa me assemblyRef, Evidence assemblySecurity, StackCrawlMark&amp;amp; stackMark, Boolean forIntrospection) +127
System.Reflection.Assembly.InternalLoad(String assemblyString, Evidence assemblySecurity, StackCrawlMark&amp;amp; stackMark, Boolean forIntrospection) +142
System.Reflection.Assembly.Load(String assemblyString) +28
System.Web.Configuration.CompilationSection.LoadAs semblyHelper(String assemblyName, Boolean starDirective) +46

[ConfigurationErrorsException: No se puede cargar el archivo o ensamblado 'System.ServiceModel, Version=3.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089' ni una de sus dependencias. Acceso denegado.]
System.Web.Configuration.CompilationSection.LoadAs semblyHelper(String assemblyName, Boolean starDirective) +613
System.Web.Configuration.CompilationSection.LoadAs sembly(AssemblyInfo ai) +57
System.Web.Compilation.BuildManager.GetReferencedA ssemblies(CompilationSection compConfig) +178
System.Web.Compilation.BuildProvidersCompiler..cto r(VirtualPath configPath, Boolean supportLocalization, String outputAssemblyName) +54
System.Web.Compilation.ApplicationBuildProvider.Ge tGlobalAsaxBuildResult(Boolean isPrecompiledApp) +232
System.Web.Compilation.BuildManager.CompileGlobalA sax() +51
System.Web.Compilation.BuildManager.EnsureTopLevel FilesCompiled() +337

[HttpException (0x80004005): No se puede cargar el archivo o ensamblado 'System.ServiceModel, Version=3.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089' ni una de sus dependencias. Acceso denegado.]
System.Web.Compilation.BuildManager.ReportTopLevel CompilationException() +58
System.Web.Compilation.BuildManager.EnsureTopLevel FilesCompiled() +512
System.Web.Hosting.HostingEnvironment.Initialize(A pplicationManager appManager, IApplicationHost appHost, IConfigMapPathFactory configMapPathFactory, HostingEnvironmentParameters hostingParameters) +729

[HttpException (0x80004005): No se puede cargar el archivo o ensamblado 'System.ServiceModel, Version=3.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089' ni una de sus dependencias. Acceso denegado.]
System.Web.HttpRuntime.FirstRequestInit(HttpContex t context) +8897659
System.Web.HttpRuntime.EnsureFirstRequestInit(Http Context context) +85
System.Web.HttpRuntime.ProcessRequestNotificationP rivate(IIS7WorkerRequest wr, HttpContext context) +333</pre>
<p>A la manera plesk:</p>
<pre class="brush: shell">1. Editar el fichero: %plesk_dir%\etc\DiskSecurity\disksecurity.xml

2. Agregar esta linea en el XML:

3. Ejecutar: "%plesk_bin%\applysecurity" --apply

4. Esperar un buen rato...

5. Reiniciar el pool de aplicaciones y probar si se ha arreglado el problema.</pre>
<p>A la manera &#8220;tradicional&#8221; (cacls es tu amigo)</p>
<pre class="brush: shell">1. Abre una consola en modo administrador (boton derecho ejecutar como administrador)

2. ejecuta esto en el terminal:

cacls C:\Windows\assembly\GAC_MSIL /E /R psacln /T /C
cacls C:\Windows\assembly\GAC_MSIL /E /R psaadm /T /C

(tardara un rato y tiene una salida por pantalla de lo mas entretenida)

3. Reinicia el pool de aplicaciones del dominoi y comprueba que funciona.</pre>
<p>Si con estos permisos sigue sin funcionarte, es posible que aun falte una cosa mas: asignar permisos al usuario &#8220;network&#8221; en el alojamiento web (y en general a todos a los directorios que use el <a href="http://apliweb.com/tag/dnn" class="st_tag internal_tag" rel="tag" title="Entradas etiquetadas con DNN">DNN</a> y se indiquen en los errores)</p>
<p>Espero que despues de todo esto funcione correctamente y no tengais mas problemas de permisos.</p>
]]></content:encoded>
			<wfw:commentRss>http://apliweb.com/blog/problemas-con-dotnetnuke-y-plesk-9-5-con-iis-7-5/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Manifiesto por una Red Neutral</title>
		<link>http://apliweb.com/blog/manifiesto-por-una-red-neutral?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=manifiesto-por-una-red-neutral</link>
		<comments>http://apliweb.com/blog/manifiesto-por-una-red-neutral#comments</comments>
		<pubDate>Tue, 30 Nov 2010 08:55:56 +0000</pubDate>
		<dc:creator>raul</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[Internet]]></category>
		<category><![CDATA[España]]></category>
		<category><![CDATA[Neutralidad en la Red]]></category>
		<category><![CDATA[Red Neutral]]></category>

		<guid isPermaLink="false">http://www.apliweb.com/?p=144</guid>
		<description><![CDATA[Los ciudadanos y las empresas usuarias de Internet adheridas a este texto manifestamos. Que Internet es una Red Neutral por diseño, desde su creación hasta su actual implementación, en la que la información fluye de manera libre, sin discriminación alguna en función de origen, destino, protocolo o contenido. Que las empresas, emprendedores y usuarios de [...]]]></description>
				<content:encoded><![CDATA[<p><a href="http://www.apliweb.com/wp-content/uploads/2010/11/internet6.jpg"><img class="aligncenter size-medium wp-image-145" title="internet6" src="http://www.apliweb.com/wp-content/uploads/2010/11/internet6-300x225.jpg" alt="" width="300" height="225" /></a></p>
<p>Los ciudadanos y las empresas usuarias de Internet adheridas a este texto manifestamos.</p>
<ol>
<li>Que Internet es una <a href="http://apliweb.com/tag/red" class="st_tag internal_tag" rel="tag" title="Entradas etiquetadas con Red">Red</a> Neutral por diseño, desde su creación hasta su actual implementación, en la que la información fluye de manera libre, sin discriminación alguna en función de origen, destino, protocolo o contenido.</li>
<li>Que las empresas, emprendedores y usuarios de Internet han podido crear servicios y productos en esa <a href="http://apliweb.com/tag/red-neutral" class="st_tag internal_tag" rel="tag" title="Entradas etiquetadas con Red Neutral">Red Neutral</a> sin necesidad de autorizaciones ni acuerdos previos, dando lugar a una barrera de entrada prácticamente inexistente que ha permitido la explosión creativa, de innovación y de servicios que define el estado de la red actual.</li>
<li>Que todos los usuarios, emprendedores y empresas de Internet han podido definir y ofrecer sus servicios en condiciones de igualdad llevando el concepto de la libre competencia hasta extremos nunca antes conocidos.</li>
<li>Que Internet es el vehículo de libre expresión, libre información y desarrollo social más importante con el que cuentan ciudadanos y empresas. Su naturaleza no debe ser puesta en riesgo bajo ningún concepto.</li>
<li>Que para posibilitar esa Red Neutral las operadoras deben transportar paquetes de datos de manera neutral sin erigirse en “aduaneros” del tráfico y sin favorecer o perjudicar a unos contenidos por encima de otros.</li>
<li>Que la gestión del tráfico en situaciones puntuales y excepcionales de saturación de las redes debe acometerse de forma transparente, de acuerdo a criterios homogéneos de interés público y no discriminatorios ni comerciales.</li>
<li>Que dicha restricción excepcional del tráfico por parte de las operadoras no puede convertirse en una alternativa sostenida a la inversión en redes.</li>
<li>Que dicha Red Neutral se ve amenazada por operadoras interesadas en llegar a acuerdos comerciales por los que se privilegie o degrade el contenido según su relación comercial con la operadora.</li>
<li>Que algunos operadores del mercado quieren “redefinir” la Red Neutral para manejarla de acuerdo con sus intereses, y esa pretensión debe ser evitada; la definición de las reglas fundamentales del funcionamiento de Internet debe basarse en el interés de quienes la usan, no de quienes la proveen.</li>
<li>Que la respuesta ante esta amenaza para la red no puede ser la inacción: no hacer nada equivale a permitir que intereses privados puedan de facto llevar a cabo prácticas que afectan a las libertades fundamentales de los ciudadanos y la capacidad de las empresas para competir en igualdad de condiciones.</li>
<li>Que es preciso y urgente instar al Gobierno a proteger de manera clara e inequívoca la Red Neutral, con el fin de proteger el valor de Internet de cara al desarrollo de una economía más productiva, moderna, eficiente y libre de injerencias e intromisiones indebidas. Para ello es preciso que cualquier moción que se apruebe vincule de manera indisoluble la definición de Red Neutral en el contenido de la futura ley que se promueve, y no condicione su aplicación a cuestiones que poco tienen que ver con ésta.</li>
</ol>
<p>La Red Neutral es un concepto claro y definido en el ámbito académico, donde no suscita debate: los ciudadanos y las empresas tienen derecho a que el tráfico de datos recibido o generado no sea manipulado, tergiversado, impedido, desviado, priorizado o retrasado en función del tipo de contenido, del protocolo o aplicación utilizado, del origen o destino de la comunicación ni de cualquier otra consideración ajena a la de su propia voluntad. Ese tráfico se tratará como una comunicación privada y exclusivamente bajo mandato judicial podrá ser espiado, trazado, archivado o analizado en su contenido, como correspondencia privada que es en realidad.</p>
<p>Europa, y <a href="http://apliweb.com/tag/espana" class="st_tag internal_tag" rel="tag" title="Entradas etiquetadas con España">España</a> en particular, se encuentran en medio de una crisis económica tan importante que obligará al cambio radical de su modelo productivo, y a un mejor aprovechamiento de la creatividad de sus ciudadanos. La Red Neutral es crucial a la hora de preservar un ecosistema que favorezca la competencia e innovación para la creación de los innumerables productos y servicios que quedan por inventar y descubrir. La capacidad de trabajar en red, de manera colaborativa, y en mercados conectados, afectará a todos los sectores y todas las empresas de nuestro país, lo que convierte a Internet en un factor clave actual y futuro en nuestro desarrollo económico y social, determinando en gran medida el nivel de competitividad del país. De ahí nuestra profunda preocupación por la preservación de la Red Neutral. Por eso instamos con urgencia al Gobierno español a ser proactivo en el contexto europeo y a legislar de manera clara e inequívoca en ese sentido.</p>
<p>Si te sientes representado por este manifiesto te pedimos encarecidamente que lo copies y lo publiques en tu blog o que lo menciones en tu cuenta de <a href="http://twitter.com" rel="nofollow" target="_blank">Twitter</a> o en <a href="http://www.facebook.com" rel="nofollow" target="_blank">Facebook</a> usando el hashtag <strong>#redneutral</strong>. ¡Muchas gracias!</p>
]]></content:encoded>
			<wfw:commentRss>http://apliweb.com/blog/manifiesto-por-una-red-neutral/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Monitorizar estado del RAID con Nagios</title>
		<link>http://apliweb.com/blog/monitorizar-estado-del-raid-con-nagios?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=monitorizar-estado-del-raid-con-nagios</link>
		<comments>http://apliweb.com/blog/monitorizar-estado-del-raid-con-nagios#comments</comments>
		<pubDate>Thu, 25 Nov 2010 22:10:14 +0000</pubDate>
		<dc:creator>raul</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Sistemas]]></category>
		<category><![CDATA[CentOS]]></category>
		<category><![CDATA[Centreon]]></category>
		<category><![CDATA[Dell]]></category>
		<category><![CDATA[Monitorización]]></category>
		<category><![CDATA[Nagios]]></category>
		<category><![CDATA[OMSA]]></category>
		<category><![CDATA[RAID]]></category>

		<guid isPermaLink="false">http://www.apliweb.com/?p=132</guid>
		<description><![CDATA[Si hay una utilidad de monitorización conocida por todo administrador de sistemas es Nagios, aunque en muchas ocasiones he visto como se utiliza unicamente para monitorizar servicios dejando de lado el estado del hardware de las máquinas, en este mini how-to vamos a explicar como monitorizar el estado del RAID de los servidores con las [...]]]></description>
				<content:encoded><![CDATA[<p><a href="http://www.apliweb.com/wp-content/uploads/2010/11/dell.jpg"><img class="alignleft size-medium wp-image-141" title="dell" src="http://www.apliweb.com/wp-content/uploads/2010/11/dell-300x225.jpg" alt="" width="300" height="225" /></a>Si hay una utilidad de monitorización conocida por todo administrador de sistemas es <a title="Nagios" href="http://www.nagios.org/" rel="nofollow" target="_blank">Nagios</a>, aunque en muchas ocasiones he visto como se utiliza unicamente para monitorizar servicios dejando de lado el estado del hardware de las máquinas, en este mini how-to vamos a explicar como monitorizar el estado del RAID de los servidores con las herramientas que nos proporcionen los fabricantes.</p>
<p>En nuestro caso tenemos servidores de dos tipos, dependiendo de la controladora que tengamos, unos pueden ser monitorizados con la utilidad de DELL <a title="Open Manage Server Administrator" href="http://en.wikipedia.org/wiki/OpenManage" rel="nofollow" target="_blank">OMSA </a>(OpenManage Server Administrator) imagino que cualquiera que disponga de servidores DELL ya conoce la herramienta, en el otro caso utilizaremos la utilidad mpt-status.</p>
<p>La instalación en ambos casos es muy sencilla, en máquinas con CentOS 5 de 64 bits para instalar OMSA:</p>
<pre class="brush:bash"># wget -q -O - http://linux.dell.com/repo/hardware/latest/bootstrap.cgi | bash
# yum install srvadmin-all
# srvadmin-services.sh start</pre>
<p>Lo que hemos hecho ha sido instalar el repositorio oficial de DELL en la máquina (con las firmas y todo lo que necesita) instalar todos los modulos y luego arrancar los servicios de monitoring, incluyendo el interfaz web del omsa.</p>
<p>Una vez hecho esto podemos comprobar que funciona:</p>
<pre class="brush:bash"># omreport storage controller
 Controller  PERC 6/i Integrated (Embedded)

Controllers
ID                                            : 0
Status                                        : Non-Critical
Name                                          : PERC 6/i Integrated
Slot ID                                       : Embedded
State                                         : Degraded
Firmware Version                              : 6.0.3-0002
Minimum Required Firmware Version             : 6.2.0-0012
Driver Version                                : 00.00.04.08-RH2

Minimum Required Driver Version               : Not Applicable
Storport Driver Version                       : Not Applicable
Minimum Required Storport Driver Version      : Not Applicable
Number of Connectors                          : 2
Rebuild Rate                                  : 30%
BGI Rate                                      : 30%
Check Consistency Rate                        : 30%
Reconstruct Rate                              : 30%
Alarm State                                   : Not Applicable
Cluster Mode                                  : Not Applicable
SCSI Initiator ID                             : Not Applicable
Cache Memory Size                             : 256 MB
Patrol Read Mode                              : Auto
Patrol Read State                             : Stopped
Patrol Read Rate                              : 30%
Patrol Read Iterations                        : 111
Abort Check Consistency on Error              : Not Applicable
Allow Revertible Hot Spare and Replace Member : Not Applicable
Load Balance                                  : Not Applicable
Auto Replace Member on Predictive Failure     : Not Applicable
Redundant Path view                           : Not Applicable
Persistent Hot Spare                          : Not Applicable
Security Capable                              : Not Applicable
Security Key Present                          : Not Applicable
Spin Down Unconfigured Drives                 : Not Applicable
Spin Down Hot Spares                          : Not Applicable</pre>
<p>Y para instalar mpt-status, podemos optar por descargar un RPM o compilarlo, yo optaria por lo sencillo si podeis elegir, en mi caso descargo el RPM de la version de 64bits:</p>
<pre class="brush:bash"># wget http://repo.nixval.com/nixval-centos/5/updates/mpt-status-1.2.0-72.x86_64.rpm
# rpm -i mpt-status-1.2.0-72.x86_64.rpm</pre>
<p>Una vez tenemos los 2 sistemas de monitorización para cada tipo de servidor, nos queda enlazarlo con nuestro Nagios, para ello utilizaremos 2 plugins que podemos descargar de su propia web de nagios exchange, en el primer caso utilizaremos el <a title="check_openmanage" href="http://exchange.nagios.org/directory/Plugins/Hardware/Server-Hardware/Dell/check_openmanage/details" rel="nofollow" target="_blank">check_openmanage</a>, y para el mpt-status el <a title="check_mpt" href="http://exchange.nagios.org/directory/Plugins/Uncategorized/Operating-Systems/Linux/check_mpt/details" rel="nofollow" target="_blank">check_mpt</a>.</p>
<p>Para poder utilizar estas herramientas en nuestros servidores vamos a instalar el plugin NRPE, este plugin permite a nuestro servidor Nagios ejecutar comandos y obtener los resultados de servidores remotos, hay otras alternativas por snmp que ofrecen similares resultados, pero esta es de las mas sencillas de configurar.</p>
<p>En nuestro caso, hemos instalado el paquete RPM de NRPE del repositorio rpmforge, si no lo teneis activo tendreis que instalarlo primero (en caso de tener una CentOS 5 de 64 bits, en caso contrario visitad la web de <a title="Dag RPMFORGE" href="http://dag.wieers.com/rpm/FAQ.php#B" rel="nofollow" target="_blank">Dag </a>para seleccionar el correcto):</p>
<pre class="brush:bash"># rpm -Uhv http://apt.sw.be/redhat/el5/en/x86_64/rpmforge/RPMS//rpmforge-release-0.3.6-1.el5.rf.x86_64.rpm</pre>
<p>Una vez instalado el repositorio, instalamos el paquete nagios-nrpe:</p>
<pre class="brush:bash"># yum install nagios-nrpe</pre>
<p>Una vez instalado, nos descargamos los plugins check_openmanage, o check_mpt segun proceda, y los ponemos en un directorio de nuestra elección, en nuestro caso el RPM de check_openmanage nos crea la estructura de directorios de nagios &#8220;/usr/lib64/nagios/plugins/&#8221; en el caso del check_mpt podemos optar por crear ese mismo directorio y darle permisos de ejecución.</p>
<p>Ahora tendremos que configurar en el fichero /etc/nagios/nrpe.cfg las lineas importantes que son estas (en el caso de openmanage):</p>
<pre id="" class="brush:bash">command[check_storage]=/usr/lib64/nagios/plugins/check_openmanage -b ctrl_fw=all/ctrl_driver=all --only storage</pre>
<p>Una vez configurado, reiniciamos nrpe:</p>
<pre class="brush:bash">service nrpe reload

Y ya tendriamos acceso desde nuestro nagios a la monitorización del estado del RAID.</pre>
]]></content:encoded>
			<wfw:commentRss>http://apliweb.com/blog/monitorizar-estado-del-raid-con-nagios/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Diseño web Irta Group</title>
		<link>http://apliweb.com/proyectos/diseno-web-irta-group?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=diseno-web-irta-group</link>
		<comments>http://apliweb.com/proyectos/diseno-web-irta-group#comments</comments>
		<pubDate>Mon, 13 Sep 2010 07:50:40 +0000</pubDate>
		<dc:creator>raul</dc:creator>
				<category><![CDATA[Proyectos]]></category>
		<category><![CDATA[Diseño web]]></category>
		<category><![CDATA[envasado]]></category>
		<category><![CDATA[Irta Group]]></category>
		<category><![CDATA[Maquinaria]]></category>

		<guid isPermaLink="false">http://www2.apliweb.com/?p=98</guid>
		<description><![CDATA[Web corporativa de empresa de maquinaria en la que se muestran los productos que se fabrican, las noticias de la empresa y las ferias a las que asisten. La programacion permite subir multiples imágenes por cada producto y dispone de una gestion de categorias multinivel (categorias y subcategorias) para cada producto. El sistema genera dinámicamente [...]]]></description>
				<content:encoded><![CDATA[<p style="text-align: center;"><a href="http://www.apliweb.com/wp-content/uploads/2010/09/irta_M.jpg"><img class="aligncenter size-full wp-image-268" title="Diseño web Irta Group" src="http://www.apliweb.com/wp-content/uploads/2010/09/irta_M.jpg" alt="Diseño web Irta Group" width="516" height="224" /></a></p>
<p>Web corporativa de empresa de <a href="http://apliweb.com/tag/maquinaria" class="st_tag internal_tag" rel="tag" title="Entradas etiquetadas con Maquinaria">maquinaria</a> en la que se muestran los productos que se fabrican, las noticias de la empresa y las ferias a las que asisten.</p>
<p>La programacion permite subir multiples imágenes por cada producto y dispone de una gestion de categorias multinivel (categorias y subcategorias) para cada producto.</p>
<p>El sistema genera dinámicamente urls SEF para que los buscadores indexen de forma correcta cada producto en cada idioma, asi como las categorias que se introducen desde la zona de administración.</p>
<p>Se ha creado zona de gestión para los idiomas de forma que el cliente puede realizar las traducciones de forma sencilla, así como incorporar información de cada modulo en varios idiomas.</p>
<p>Disponen de zona privada para clientes con información sobre sus productos, videos y manuales asociados.</p>
<div>
<p>Tecnologia utilizada:</p>
<ul>
<li><a href="http://apliweb.com/tag/php" class="st_tag internal_tag" rel="tag" title="Entradas etiquetadas con PHP">PHP</a></li>
<li>Javascript</li>
<li>MySQL</li>
</ul>
<p><a title="Irta Group" href="http://www.irtagroup.com" target="_blank">Visitar la web</a></p>
</div>
]]></content:encoded>
			<wfw:commentRss>http://apliweb.com/proyectos/diseno-web-irta-group/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Diseño web de la red social SportFactor</title>
		<link>http://apliweb.com/proyectos/diseno-web-de-la-red-social-sportfactor?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=diseno-web-de-la-red-social-sportfactor</link>
		<comments>http://apliweb.com/proyectos/diseno-web-de-la-red-social-sportfactor#comments</comments>
		<pubDate>Sun, 12 Sep 2010 19:38:24 +0000</pubDate>
		<dc:creator>raul</dc:creator>
				<category><![CDATA[Proyectos]]></category>
		<category><![CDATA[Deportistas]]></category>
		<category><![CDATA[Diseño web]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Red social]]></category>
		<category><![CDATA[Sportfactor]]></category>

		<guid isPermaLink="false">http://www2.apliweb.com/?p=91</guid>
		<description><![CDATA[Red social para deportistas. Sportfactor es una red Social orientada a deportistas, el sistema permite la creación de rutinas y dietas personalizadas por usuario, se incluye un &#8220;muro&#8221; en el que los usuarios pueden colgar sus fotos, videos y enlaces y compartirlos con la comunidad de una forma muy sencilla. Se incluye un sistema de [...]]]></description>
				<content:encoded><![CDATA[<div>
<p><a href="http://www.apliweb.com/wp-content/uploads/2010/09/sportfactor_M.jpg"><img class="aligncenter size-full wp-image-272" title="Diseño web red social Sport Factor" src="http://www.apliweb.com/wp-content/uploads/2010/09/sportfactor_M.jpg" alt="Diseño web red social Sport Factor" width="516" height="224" /></a></p>
<p><a href="http://apliweb.com/tag/red" class="st_tag internal_tag" rel="tag" title="Entradas etiquetadas con Red">Red</a> social para <a href="http://apliweb.com/tag/deportistas" class="st_tag internal_tag" rel="tag" title="Entradas etiquetadas con Deportistas">deportistas</a>.</p>
<p><a href="http://apliweb.com/tag/sportfactor" class="st_tag internal_tag" rel="tag" title="Entradas etiquetadas con Sportfactor">Sportfactor</a> es una <a href="http://apliweb.com/tag/red-social" class="st_tag internal_tag" rel="tag" title="Entradas etiquetadas con Red social">red Social</a> orientada a deportistas, el sistema permite la creación de rutinas y dietas personalizadas por usuario, se incluye un &#8220;muro&#8221; en el que los usuarios pueden colgar sus fotos, videos y enlaces y compartirlos con la comunidad de una forma muy sencilla.</p>
<p>Se incluye un sistema de micrositios de deportes en el que se han programado agregadores de noticias categorizadas en cada deporte, ademas de un sistema de comentarios para los usuarios registrados.</p>
<p>El desarrollo hace uso intensivo de llamadas AJAX mediante jquery para los envios de información, obtención de los datos y consultas de todo tipo, ademas de urls amigables para una optima indexación.</p>
<p>El sistema genera de forma automática un siemap en XML y HTML con los datos en tiempo real del sitio.</p>
</div>
<div>
<p>Tecnologia utilizada:</p>
<ul>
<li><a href="http://apliweb.com/tag/php" class="st_tag internal_tag" rel="tag" title="Entradas etiquetadas con PHP">PHP</a></li>
<li>jQuery &#8211; jQuery UI</li>
<li>Javascript</li>
<li>MySQL</li>
<li>URL Rewrite</li>
</ul>
<p><a title="Sport Factor" href="http://www.sportfactor.es" target="_blank">Visitar la web</a></p>
</div>
]]></content:encoded>
			<wfw:commentRss>http://apliweb.com/proyectos/diseno-web-de-la-red-social-sportfactor/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Diseño web Fortuver</title>
		<link>http://apliweb.com/proyectos/diseno-web-fortuver?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=diseno-web-fortuver</link>
		<comments>http://apliweb.com/proyectos/diseno-web-fortuver#comments</comments>
		<pubDate>Sun, 12 Sep 2010 19:35:01 +0000</pubDate>
		<dc:creator>raul</dc:creator>
				<category><![CDATA[Proyectos]]></category>
		<category><![CDATA[Asso Forming]]></category>
		<category><![CDATA[Diseño web]]></category>
		<category><![CDATA[Fortuver]]></category>
		<category><![CDATA[Maquinaria]]></category>
		<category><![CDATA[Metal]]></category>

		<guid isPermaLink="false">http://www2.apliweb.com/?p=87</guid>
		<description><![CDATA[Web corporativa de empresa de maquinaria para el packaging. Web corporativa de empresa de maquinaria para el packaging en la que se muestran los productos que se fabrican, las noticias de la empresa y las ferias a las que asisten. La programacion permite subir multiples imágenes por cada producto y dispone de una gestion de [...]]]></description>
				<content:encoded><![CDATA[<div>
<p style="text-align: center;"><a href="http://www.apliweb.com/wp-content/uploads/2010/09/fortuver_M.jpg"><img class="aligncenter size-full wp-image-277" title="Diseño web Fortuver" src="http://www.apliweb.com/wp-content/uploads/2010/09/fortuver_M.jpg" alt="Diseño web Fortuver" width="516" height="224" /></a></p>
<p>Web corporativa de empresa de <a href="http://apliweb.com/tag/maquinaria" class="st_tag internal_tag" rel="tag" title="Entradas etiquetadas con Maquinaria">maquinaria</a> para el packaging.</p>
<p>Web corporativa de empresa de maquinaria para el packaging en la que se muestran los productos que se fabrican, las noticias de la empresa y las ferias a las que asisten.</p>
<p>La programacion permite subir multiples imágenes por cada producto y dispone de una gestion de categorias multinivel (categorias y subcategorias) para cada producto.</p>
<p>El sistema genera dinámicamente urls SEF para que los buscadores indexen de forma correcta cada producto en cada idioma, asi como las categorias que se introducen desde la zona de administración.</p>
<p>Se ha creado zona de gestión para los idiomas de forma que el cliente puede realizar las traducciones de forma sencilla, así como incorporar información de cada modulo en varios idiomas.</p>
</div>
<div>
<p>Tecnologia utilizada:</p>
<ul>
<li><a href="http://apliweb.com/tag/php" class="st_tag internal_tag" rel="tag" title="Entradas etiquetadas con PHP">PHP</a></li>
<li>Javascript</li>
<li>MySQL</li>
</ul>
<p><a title="Asso Forming" href="http://www.asso-forming.com" target="_blank">Visitar la web</a></p>
</div>
]]></content:encoded>
			<wfw:commentRss>http://apliweb.com/proyectos/diseno-web-fortuver/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
