Si estas viendo esta pagina sin estilo es por que estas usando Internet Explorer, un navegador anticuado que no visualiza correctamente las ultimas tecnologias de internet.
Si quieres seguir viendo mi pagina sin estilo alguno, continua usando este navegador, si en cambio quieres ver mi pagina correctamente, lee este articulo y actua en consecuencia.

Contenido

Estos dias he recibido la donacion de un nuevo ordenador por parte de mi padre, un magnifico, sobre todo por su precio, Celeron con 96 megas de Ram y 10 Gigas de disco duro.


Este nuevo ordenador bautizado como Dédalo, padre de Icaro ,constructor del laberinto del Minotauro y prisionero de Minos, hara las funciones de servidor externo e interno, para ello me dispuse a acometer las siguientes tareas, tras haberle instalado una distribucion Ubuntu, a la vista de que Sarge no acaba de salir.



Mi servidor dedalo

Como apreciais en la imagen tengo un pequeño problema de cableado :)


Asi que el dominio kharkoma.homelinux.com ahora se esta sirviendo desde Dédalo, dejando a mi maquina Minos con su Debian SID como la maquina de juguete, que puedo colgar cuando desee.


Comenzamos


Configurar Apache con php y host virtual

$sudo apt-get install apache


$sudo apt-get install apt-get php4


$sudo vi /etc/apache/httpd.conf


<IfModule mod_dir.c>
    DirectoryIndex index.html index.htm index.shtml index.cgi index.php
</IfModule>
NameVirtualHost 192.168.1.34
<VirtualHost 192.168.1.34>
   ServerName kharkoma.homelinux.com
   DocumentRoot /var/www/kharkoma
</VirtualHost>
AddType application/x-httpd-php .htm
AddType application/x-httpd-php .html

$sudo vi /etc/hosts


192.168.1.34    kharkoma.homelinux.com  kharkoma

Migracion de la Base de datos MySql

Guardamos la bd 


$mysqldump -u kharkoma -p blog > blog.sql


Borramos la de pruebas anterior


$mysqldump -u kharkoma -p blog > blog.sql


Creamos la bd de nuevo


$mysqladmin -u kharkoma -p create blog


Recuperamos la bd


$mysql -u kharkoma blog -p < blog.sql



Configurar Drupal

Comprimimos el directorio donde residia la pagina web


$tar cvfj blog.tgz /var/www/kharkoma


Descomprimimos en Dédalo el directorio de la pagina web


$cd


$tar -jxfv blog.tgz


Ahora cambiamos la configuracion de Drupal


$sudo vi /var/www/kharkoma/blog/includes/conf.php


$base_url = "http://kharkoma.homelinux.com/blog/";

Tambien debemos ejecutar una consulta diaria al fichero cron.php de Drupal


Por ser Ubuntu una Debian, usamos los directorios /etc/cron.daily/ para dejar los scripts que se ejecutan a diario, creamos ahora el script


$vi drupalcron


#!/bin/sh
lynx http://kharkoma.homelinux.com/blog/cron.php --dump /dev/null

Esto funcionara teniendo instalado el lynx, sudo apt-get install lynx, existen muchas otras formas de hacer sin usar lynx, por ejemplo con wget


Hacemos el script druplacron ejecutable


$chmod 755 drupalcron


$sudo  mv drupalcron  /etc/cron.daily/


Si quereis tener mas informacion sobre una instalacion de Drupal desde cero, podeis consultar el Tutorial de instalación drupal disponible en Badopi


Instalar y Configurar el servidor de correo

Aunque Ubuntu trae Postfix por defecto, instalo Exim simplemente por que era el que venia con mi Debian Sid


$sudo apt-get install exim


Se desintalara postfix :) y aparecera el programa de configuracion de exim el eximconfig, al que contestaremos de la siguiente manera:


Seleccionamos la primera opcion, por que no necesitamos mas.


kharkoma.homelinux.com


none none none


kharkoma


contestamos y para los aliases


contestamos y para grabar toda la configuracion


ya podemos probar el servidor desde la linea de comando escribiendo algo como esto:


$echo "Esto es una prueba" | mail -s "Prueba" kharkoma@direcci.com


Si queremos que Drupal envie correos tendremos que autorizar al usuario www


sudo vi /etc/email-addresses


Instalar y configurar actualizador de direccion IP.

Como actualizador de direcciones IP usaré ddclient por que viene con Ubuntu y funciona con DynDNS.org


$sudo apt-get install ddclient


y aparece debconf, seleccionamos la opcion de DynDNS.org


y el fully qualified domain sera kharkoma.homelinux.com


el usuario y contraseña de DynDNS.org


y el interface de red con conexion a internet, en este caso eth0


probamos y !No funciona! :( nos graba la direccion de la red interna entre el router y el PC, asi que tendremos que tocar el fichero de configuracion


$sudo vi /etc/ddclient.conf


pid=/var/run/ddclient.pid
protocol=dyndns2
use=web, web=checkip.dyndns.org
if=eth0
server=members.dyndns.org
login=kharkoma
password=**********************
kharkoma.homelinux.com

ahora creamos el script


$vi ddclient


#!/bin/sh
/etc/init.d/ddclient restart /dev/null

$chmod 755 ddclient


$sudo mv ddclient /etc/cron.daily/


Seguridad Tripwire, Snort y Chkrootkit

Dedalo solo permite acceder desde el exterior al puerto 80, gracias a la configuracion de NAT en el router, aun asi por mantener unos niveles de seguridad decentes voy a instalar 3 herramientas de las denominadas IDS (Intruder Detection System)


Tripwire es una aplicacion que permite detectar cambios en los ficheros del sistema


$sudo apt-get install tripwire


Y para la configuracion en Bulma exite un completo articulo Instalando y configurando Tripwire en Debian


Seguimos con Snort, una aplicacion que captura y analiza paquetes de red,un sniffers del tráfico de red.


$sudo apt-get install snort


Y para la configuracion en Linuca exite un completo articulo Snort ,MySQL y Acid


Y como ultima medida tambien instalamos chkrootkit, una aplicacion que escanea el sistema en busca de rootkits


$sudo apt-get install chkrootkit


Servicios para la intranet

Al ser un servidor independiente sin monitor ni teclado necesito, por comodidad, algunos servicios para el manejo remoto del servidor


Lo primero es instalar ssh


$sudo apt-get install ssh


para usar la solucion Putty + X11 comentada en anteriores articulos.


Estadisticas del Servidor

Para las estadisticas usaremos dos aplicaciones, la primera MRTG es una herramienta que monitoriza el trafico en los interfaces de red, y Webalizer una aplicacion que analiza los fichero de log de un servidor web.


Empezamos con MRTG


$sudo apt-get install mrtg


A nuestro querido debconf le respondemos Si


Y tambien, por que no


$sudo apt-get install mrtg-ping-probe mrtg-contrib mrtgutils


El demonio snmp, mas info en Gestión SNMP con Linux


$sudo apt-get install snmpd


y recomiendo cambiar la configuracion de /etc/snmp/snmpd.con a readonly ;)


ahora editamos el archivo de configuracion


$sudo vi /etc/mrtg.cfg


# Global configuration
WorkDir: /var/www/mrtg
WriteExpires: Yes
Language: spanish
Options[_]: growright
Target[eth0]: `/usr/bin/mrtg-ip-acct eth0`
MaxBytes1[eth0]: 32000
MaxBytes2[eth0]: 16000
Title[eth0]: Análisis del tráfico total en eth0
YLegend[eth0]: Tráfico
PageTop[eth0]: <H1>Análisis del tráfico</H1>
#Options[eth0]: growright

Con estos cambios ya podemos ejecutar la aplicacion


$sudo mrtg


Seguimos con Webalizer


$sudo apt-get update webalizer


$sudo vi /etc/webalizer.conf


LogFile                 /var/log/apache/access.log

y ya podemos ejecutar la aplicacion


$sudo webalizer


Y con esto ya doy por terminada la instalacion y configuracion del servidor, como temas interesantes que aun deberia hacer quedan.


  • Ejecutar el servidor en una jaula
  • Instalar algun control de versiones, cvs o svn
  • Instalar algun servidor de ficheros, NFS, Samba o FTP

Pero eso es labor para otro dia y otro articulo.


Se admiten y esperan todo tipo de comentarios, criticas y correcciones al artículo.


Sergio
« Noviembre 2009  
SuMoTuWeThFrSa
1
2
4
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
 
RSSBuscarTagsTaxonomiasMúsica

Feedster