Tu dominio y web PASO a PASO parte II

Esta es la continuación de Como crear tu web con dominio y servidor propio

En esta segunda parte, ya tenemos nuestra web funcionando en nuestro servidor... ¿que viene ahora?

Medidas de seguridad:

No es un estricto orden, pero es recomendable realizar todos estos pasos

Restringir el acceso a phpMyAdmin (a ciertas ips)

Resulta que existen innumerables intentos de acceder al phpmyadmin por parte de algunos bot que empiezan aparecer en tu web, para ello encontre esta solución que brinda el colega David Tabernero de su web Ni pa'lante Ni pa'tras:

Editar /etc/phpmyadmin/config.inc.php. Es este fichero, se configura los aspectos generales del script. Existe una variable "$cfg" que contiene toda la configuración de dicho script. En realidad no es mas que un array, donde se usan índices "personalizados" (siendo sincero, no recuerdo la expresión técnica para este tipo de índices... pero se que la tiene). Nos vamos al elemento con el índice "Servers", donde indicamos lo servidores que vamos a manejar con phpMyAdmin, en mi caso solo uno.

Vamos al fichero y añadimos tras el "$i++;" lo siguiente:
$cfg['Servers'][$i]['AllowDeny']['order'] = 'deny,allow';
$cfg['Servers'][$i]['AllowDeny']['rules'][] = 'allow % from 127.0.0.1';
$cfg['Servers'][$i]['AllowDeny']['rules'][] = 'deny % from all';

Aunque existe una manera mas elegante de meter todas las "rules" en una sola instrucción, creando un array:
$cfg['Servers'][$i]['AllowDeny']['order'] = 'deny,allow';
$cfg['Servers'][$i]['AllowDeny']['rules'] = array(
'deny root from all',
'allow root from localhost',
'allow root from 10.0.0.0/8',
'allow root from 192.168.0.0/16',
'allow root from 172.16.0.0/12',
);
En mi caso para la web Luz Azul utilice el primer método y me funciona muy bien.

No mostrar carpetas indexadas

Para ello debemos modificar el archivo .htacces de nuestro servidor Apache.

.htaccess es el nombre de un archivo de texto que se coloca en el directorio de una página web, para configurar algunos cambios en el servidor. Cada línea del archivo contiene una regla. Cada regla se aplica únicamente en el directorio donde se encuentra, incluyendo sus subdirectorios y ficheros.
Crear un .htaccess es muy sencillo, abrímos el bloc de notas escribimos las directivas y lo guardamos con el nombre “.htaccess” (incluye las comillas, para guardarlo sin la extensión .txt). Ahora, sólo debemos subir el archivo a nuestro servidor Apache, y éste lo procesará cada vez que un cliente realice una petición.

Cuando un directorio no tiene la página de index, cualquier visitante puede observar los archivos contenidos en el directorio, y navegar a través de ellos. Si nosotros queremos prevenir esto, sólo debemos escribir lo siguiente: Options All -Indexes

Anti Spamers (actualizado)
 Si tienes archivos para descargas, foros y correos visibles es necesario que agregues mayor protección.

Para ellos en la web Luz Azul se implemento en el foro Pbhpp3 capcha nuevo, el API de Recaptcha ya ha sido hackeado y el spam es inevitable.


Posteriormente es buena idea implementar el código recapcha para otras tareas tales como descarga, tal como lo hace hotfile (hosting de archivos para descargas), por ejemplo. Por los momentos no tengo información de como aplicar esta solución ya que es algo complicada, pero al conseguir un tutorial actualizare esta edición.

Respaldos automáticos (archivos y base de datos)

Existen varias formas de hacer respaldos del servidor:

Respaldo de Archivos Sincronizando carpetas: 
En mi primer caso mas básico fue sincronizando las carpetas del servidor a mi pc personal, la cual normalmente esta encendida. Para ello utilice la aplicación  AllWaySync (solo disponible para windows), es gratuita y muy fácil de configurar. En todo caso si quieren un tutorial diríjanse a este enlace. Para Linux existe el Rsync cuya información puedes encontrar aqui. Si necesitas mas opciones en la Revista Linux.net desarrollaron un script realmente bueno que cumple con esta función.

Respaldo de base de datos:

Usaremos el script de AutomysqlBackup

Cada día se ejecutará AutoMySQLBackup (si se ha instalado en /etc/cron.daily) y usando mysqldump y gzip hará un volcado de las bases de datos especificadas al directorio /backups/daily, cada semana rotará las copias de seguridad diarias así que no deberías tener más de 7 copias de seguridad aquí.
Cada sábado AutoMySQLBackup hará de nuevo una copia de seguridad de las base de datos que hayas elegido pero estas se guardarán en /backups/weekly, y serán rotadas cada 5 semanas, por lo que aquí nunca debería haber más de 5 copias de seguridad.
El primer día de cada mes AutoMySQLBackup creará una copia de seguridad de todas las bases de datos y la pondrá en /backups/monthly. Estas nunca serán rotadas por lo que tú serás el responsable de mantener este directorio en orden. Te sugiero realizar una copia de esta carpeta a tu disco duro local cada mes para que puedas restaurar tus bases de datos si tienes algún fallo en el disco duro del servidor (aunque quizás te interese descargar la carpeta semanal o diaria, depende de la frecuencia de actualización de tu web).

¿Cómo se usa?
  1. Descargar el script AutoMySQLBackup.
  2. Configurar los parámetros necesarios (usuario, contraseña, servidor, ruta de la carpeta para las copias de seguridad, etc…).
  3. Dar al archivo los permisos necesarios para que se pueda ejecutar: chmod u+rwx
  4. Crear la carpeta donde queremos almacenar las copias de las bases de datos, p. ej.: /backups (la que el script nos propone en la configuración inicial).
  5. Podemos ejecutar el script con ./automysqlbackup.sh para comprobar que funciona correctamente (nos mostrará el resultado en pantalla).
  6. Para que se ejecute diariamente de manera automática podemos mover el archivo a la ruta: /etc/cron.daily

Implementar:
Sitemap
Es recomendable generar un sitemap y enviarlo a los diferentes buscadores, esto mejorara el posicionamiento de nuestra web. Para ello Google nos brinda el uso de webmastertools. Adicionalmente existe una API también de Google que nos genera automáticamente el sitemap. Para aprender a manejar esta herramienta puedes ir a este enlace.

Contadores de Visitas en el servidor

AWStats (recuerda, si seguiste los pasos en el primer tema, AWStats ya esta instalado) es una herramienta open source de informes de análisis web, apta para analizar datos de servicios de Internet como un servidor web, streaming, mail y FTP. AWstats analiza los archivos de log del servidor, y con base a ellos produce informes HTML. Los datos son presentados visualmente en informes de tablas y gráficos de barra. Pueden crearse informes estáticos mediante una interfaz de línea de comando, y se pueden obtener informes on-demand a través de un navegador web, gracias a un programa CGI. Instalacion y configuracion del AWStats

Piwik es otro contador al estilo Google Analitics, pero si nuestro server no es un muy buen equipo no seria recomendable saturarlo con APIs

Pagina 404 personalizada
Un buen tutorial sobre como personalizar nuestra pagina 404 esta en este enlace. Nos permite ayudar a los usuarios a ubicar las paginas bien sea mal indexadas o cambiadas.

Dominio  y web PASO A PASO parte III
Google Apps:
Configuracion de Correo MX
Analytics
Ad Sense
Herramientas para Webmaster
Picassa
Buscador de Google

No hay comentarios:

Publicar un comentario