Instalando Ubuntu Server como LAMP Server 1ra parte 26 enero, 2010

Ubuntu es mas que solo un bonito y práctico escritorio, la edición de servidor tiene las características técnicas para competir con los grandes y sobre todo para solucionar tus necesidades, por ejemplo, un servidor de Hosting para hospedar dominios y páginas web. Configurarlo es relativamente simple y te lo muestro después del salto.

Si aun no sabes que es LAMP, se refiere a Linux, Apache, MySQL, PHP. Todos estos servicios son lo que corren en la gran mayoría de los servidores en Internet y en Ubuntu Server también permite dar estos servicios.

El primer paso es Instalar Ubuntu Server, proceso en el que indicas todos tus parámetros y configuraciones necesarias. Cuando llegue a la parte donde indicas que tipo de servicios deseas, debes seleccionar “LAMP” y “OpenSSH” ubicando la selección sobre la opción deseada y presionando la barra espaciadora. Debe aparecer un [*] asterisco a lado izquierdo de cada opción.

Si vas a instalar un Ubuntu Server nunca olvides instalar la opción “OpenSSH” que te permitirá administrarlo por una terminal vía ssh.

Al terminar la instalación reinicia el servidor y espera a que aparezca el promt para ingresar al sistema (recuerda que Ubuntu server no instalar una interfaz gráfica). Se debe ver algo parecido a esto:

Ubuntu 9.10 hosting.servidores tty1
hosting.servidores login:

Claro está que debes ingresar al sistema con el usuario que creaste al momento de la instalación de Ubuntu Server o puedes conectarte de forma remota por una terminal con el siguiente comando:

ssh usuario@123.123.123.123

La primera vez que te conectes te mostrará un mensaje como este

The authenticity of host '123.123.123.123 (123.123.123.123)' can't be established.
RSA key fingerprint is d0:68:7b:fe:4f:a3:e7:ac:83:08:59:7f:14:3d:96:6c.
Are you sure you want to continue connecting (yes/no)?

indica “yes” y  luego te pedirá la contraseña del usuario que indicaste

Bien, ya conectado a tu servidor, debes hacer un par de ajustes para que todo funcione mejor, es decir, que la mayoría de los scripts funcionen y que administrar el servidor de hosting se más sencillo.

Edita el archivo /etc/php5/apache2/php.ini, para hacerlo  utiliza el comando “sudo nano” en la terminal

sudo nano /etc/php5/apache2/php.ini

En ese archivo modifica la siguiente  linea:

memory_limit = 16M

para que e vea así:

memory_limit = 64M

Por ejemplo WordPress requiere al menos de 32MB y Moodle requiere hasta 96MB para operar sin presentar problemas por lo que puede seleccionar el valor que mejor funcione para ti.

Otro aspecto es que algunos scripts requieren el modulo re-wirite activado para hacer esto ejecuta el siguiente comando:

sudo a2enmod rewrite

y te mostrará el siguiente mensaje:

Enabling module rewrite.
Run '/etc/init.d/apache2 restart' to activate new configuration!

haz caso de la indicación y reinicia el servicio apache2 con el siguiente comando:

sudo /etc/init.d/apache2 restart

El servidor está listo para crear usuarios y dominios virtuales. Esto lo haces de manera muy sencilla con estos comandos:

sudo adduser nombreusuario

El comando anterior crea el usuario “nombreusuario”, al que debes indicar una contraseña y algunos datos (opcionales), luego debes ir al directorio “home” de ese usuario y crear una carpeta llamada “www” para los archivos que estarán publicados en Internet, creas dentro de esa carpeta un archivo vacío llamado “index.html”, solo por requisito,  y hacerlos (la carpeta www y al archivo index.html) propiedad del usuario recién creado. Todo esto se resume en estos comandos:

cd /home/nombreusuario
sudo mkdir www
sudo touch www/index.html
sudo chown nombreusuario:nombreusuario * -R

Ahora, la carpeta /home/nombreusuario/www esta lista para publicar archivos en Internet y esto realiza creando un dominio virtual en apache. El directorio donde se resguardan los archivos de los sitios es “/etc/apache2/sites-available”, ahí existe un archivo llamado default que contiene la configuración básica y cuando tecleas “localhost” (claro sin comillas) en Firefox , te muestra el siguiente mensaje cuando el servidor está recién instalado:

It works!

This is the default web page for this server.

The web server software is running but no content has been added, yet.

Para agregar un sitio web nuevo puedes copiar el archivo “default” a un archivo para tu nuevo dominio y luego adecuar los directorios y el nombre específico de dominio  al que va a responder, por ejemplo “sitionuevo.com”. Este es el contenido del archivo defaul:

<VirtualHost *:80>
    ServerAdmin webmaster@localhost

    DocumentRoot /var/www
    <Directory />
        Options FollowSymLinks
        AllowOverride None
    </Directory>
    <Directory /var/www/>
        Options Indexes FollowSymLinks MultiViews
        AllowOverride None
        Order allow,deny
        allow from all
    </Directory>

    ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
    <Directory "/usr/lib/cgi-bin">
        AllowOverride None
        Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
        Order allow,deny
        Allow from all
    </Directory>

    ErrorLog /var/log/apache2/error.log

    # Possible values include: debug, info, notice, warn, error, crit,
    # alert, emerg.
    LogLevel warn

    CustomLog /var/log/apache2/access.log combined

    Alias /doc/ "/usr/share/doc/"
    <Directory "/usr/share/doc/">
        Options Indexes MultiViews FollowSymLinks
        AllowOverride None
        Order deny,allow
        Deny from all
        Allow from 127.0.0.0/255.0.0.0 ::1/128
    </Directory>

</VirtualHost>

Puedes copiarlo con los siguientes comandos:

cd /etc/apache2/sistes-available/
sudo cp default nuevo

Y luego debes editarlo para personalizar el archivo al nuevo dominio y las nuevas ubicaciones con este comando:

cd /etc/apache2/sistes-available/
sudo nano nuevo

y cambiar las partes que están resaltadas

<VirtualHost *:80>
    ServerAdmin tuemail@email.com
    ServerName sitionuevo.com
    ServerAlias www.sitionuevo.com

    DocumentRoot /home/nombreusuario/www
    <Directory />
        Options FollowSymLinks
        AllowOverride None
    </Directory>
    <Directory /home/nombreusuario/www/>
        Options Indexes FollowSymLinks MultiViews
        DirectoryIndex index.html index.htm index.php
        AllowOverride None
        Order allow,deny
        allow from all
    </Directory>
.....

En este momento el nuevo sitio está configurado, pero, para activarlo debes ejecutar el siguiente comando:

sudo ln -s /etc/apache2/sites-available/nuevo /etc/apache2/sites-enabled/001-nuevo

Esto crea un enlace simbólico en la carpeta “sites-enabled” lo que incluye al sitio en la configuración de apache, si deseas desactivar el sitio solo borra el archivo “/etc/apache2/sites-enabled/001-nuevo” y para volver a activarlo solo crea de nuevo el enlace con el comando “ln -s” como en el ejemplo anterior.

Ahora solo debes hacer que servicio apache2 cargue de nuevo la configuración para que tenga efecto.

sudo /etc/init.d/apache2 force-reload

Si requieres que tu sitio en particular utilice el módulo re-write debes cambiar esta sentencia “AllowOverride None” por “AllowOverride All”  en el archivo de configuración por ejemplo en “/etc/apache2/sites-available/nuevo”

    <Directory /home/nombreusuario/www/>
        Options Indexes FollowSymLinks MultiViews
        DirectoryIndex index.html index.htm index.php
        AllowOverride All
        Order allow,deny
        allow from all
    </Directory>

Si en algún momento deseas crear otro sitio solo debes:

  • crear un nuevo usuario,
  • crear su carpeta www,
  • copiar el archivo default a otro nuevo,
  • editar las rutas del nuevo usuario y agregar el nuevo dominio al que va a responder (nuevositio.com),
  • crear el archivo simbólico para activar el sitio y
  • recargar la configuración al servidor apache2

Conclusión 1ra parte

Instalar un Servidor Ubuntu es un proceso sencillo, y usarlo como servidor de hosting u hospedaje de páginas web es una tarea, como ves, de unos cuantos pasos si sabes que archivos utilizar, ya que, Ubuntu Server no proporciona una GUI o Interfaz Gráfica, lo importante es que este servidor lo podrás administrar siempre que cuentes con el acceso a la terminal o al teclado del servidor.

Pero siempre existe una opción si la terminal de aterroriza y es Webmin, una interfaz web que te permite administrar tu servidor de forma mas “visual” en una página web. Para Instalar Webmin en Ubuntu Server sigue este enlace:

http://ubuntumexico.com/2010/01/administra-ubuntu-server-o-desktop-via-web-com-webmin/

Creative Commons LicenseInstalando Ubuntu Server como LAMP Server 1ra parte
por: Luis Armando Medina Avitia

Este contenido está amparado bajo la liencia
Creative Commons Atribución-Licenciamiento Recíproco 2.5
This Content is licensed under a
Creative Commons Attribution-Share Alike 2.5 Licence

Related Posts with Thumbnails
blog comments powered by Disqus
 

Free counter and web stats The Ubuntu Counter Project - user number # 29278

Wikio – Top Blogs