miércoles, 9 de noviembre de 2011

Ejercicio 3: Servidor LAMP

Instrucciones para instalar un servidor LAMP con Ubuntu Server 10.04.3

1. Crear una máquina virtual normal, con un sólo disco duro.
Lo único reseñable es poner la tarjeta de red en modo puente.

2. Instalar Ubuntu Server, sin añadir ningún servidor durante la instalación. Se recomienda usar como nombre de usuario admon y como contraseña u1234.
* He utilizado usuario admon y contraseña u1234.




 Seleccionamos el Idioma.


 Seleccionaremos instalación completa.


 Zona Geográfica.


 El teclado suele detectarse por defecto correctamente, si no es así podemos elegirlo de una lista manualmente.


 Escribimos el nombre que se le dará a la máquina.



 De nuevo elegiremos nuestra zona.



 Elegimos zona horaria.


 Deberemos elegir y particionar un disco duro.






En este punto guardaremos y ejecutaremos los cambios para el disco duro seleccionado.



Como hemos indicado antes seleccionaremos de usuario "admon", contraseña "u1234".



Una vez asignada parte del disco duro (la mayor) y una pequeña para Swap iniciaremos los cambios.




El instalador te alertará si detecta una contraseña demasiado simple, de todas formas no habrá problema ya que estamos trabajando con una máquina virtual y no un servidor real.


 No nos hará falta cifrar la carpeta personal.



 Los servicios que necesitaremos más adelante son el servidor LAMP y el OpenSSH para conectarnos desde Putty (por ejemplo) como si estuvieramos fuera del servidor (remotamente).
Aunque en la imágen los seleccionamos no los instalaremos en éste caso para poder hacerlo manualmente más adelante.


 Para ahorrar tiempo deshabilitaremos las actualizaciones automáticas.





 Siempre seleccionaremos el arranque grub, que detectará otros sistemas operativos si los hubiera y mostrará al iniciar la máquina todos éstos para que seleccionemos el que queramos ejecutar.


Listo, solo queda reiniciar.



3. Concluida la instalación, iniciar sesión.
Comprobar la dirección IP que tenemos con el comando ifconfig.
Si necesitamos una nueva dirección IP por DHCP, usamos sucesivamente los comandos sudo dhclient -r (para liberar) y luego sudo dhclient (para asignar una nueva dirección).


Aquí vemos le resultado de un ifconfig.

4. Dado que los repositorios españoles están muy lentos recientemente, vamos a configurar para usar los repositorios principales.

Para ello, editamos como root el archivo /etc/apt/sources.list : sudo nano /etc/apt/sources.list . Quitamos en todas las URLs que aparecen el prefijo “es.” .


Guardamos y salimos de nano.
Actualizamos la lista de paquetes: sudo apt-get update.


Esperamos a que concluya el proceso de actualización, si nos fijamos, todos los paquetes provendrán de .com no de .es

5. Instalar OpenSSH Server: sudo apt-get install openssh-server.
A partir de este momento, podemos minimizar nuestra máquina virtual, ya que todas las operaciones necesarias las haremos remotamente.


Aquí vemos el proceso resaltado.

6. Desde el ordenador host (o desde cualquier otro de la red) usamos un cliente de SSH (como putty, tanto en Windows como en Linux). Iniciamos sesión SSH en el servidor.



Conectamos por Putty al servidor remoto.

7. Instalación y configuración de apache
a) Instalación: sudo apt-get install apache2



Nos pedirá (si tenemos una instalación antigua del apache2) actualizarlo, escogeremos si y reemplazará la instalación antigua existente por la nueva, podremos apreciar como incluso detiene el servicio antiguo para ducha tarea.

b) Configuración: No es necesaria ninguna configuración. Simplemente, cada vez que queramos publicar un sitio creamos su alias correspondiente siguiendo las instrucciones que dimos.

c) Reinicio: Para reiniciar el servidor web, usar sudo service apache2 restart


d) Prueba: Acceder desde una navegador a la dirección IP del servidor.
Debe aparecer la página “It works”.


8. Instalación y configuración de vsftd (FTP)
a) Instalación: sudo apt-get install vsftpd

En mi caso ya tenía la versión más reciente.

b) Configuración. Editar el archivo de configuración: sudo nano /etc/vsftpd.conf .


Aquí se muestra el fichero de configuración abierto, procederemos pues a su modificación para nuestros intereses.

Deben estar activas (sin comentarios) las líneas:
• listen=YES → para poner el servidor a la escucha
• anonymous_enable=NO → para no permitir usuarios anónimos
• local_enable=YES → para permitir el acceso a los usuarios del sistema
• write_enable=YES → para permitir escritura
• local_umask=022 → para que los permisos de los archivos y carpetas
creados sean 755 (rwxr-xr-x, lectura y ejecución/”acceso directorio” para
todos, escritura sólo para el propietario).
• chroot_local_user=YES → para que los usuarios que accedan queden
restringidos a su carpeta personal, y no al resto de carpetas del sistema.

c) Reinicio: Para reiniciar el servidor ftp, usar sudo service vsftpd restart



d) Prueba: Desde un cliente de ftp (los exploradores de archivos lo son) escribir la
dirección ftp://nombre_o_ip_servidor .
Pedirá usuario (admon) y contraseña (u1234).
Comprobar que se pueden crear carpetas y subir archivos.



9. Instalación y configuración de PHP
a) Instalación: sudo apt-get install php5. Se instalará automáticamente también el módulo de apache2 para php5.


b) Configuración: No es necesaria configuración.

c) Reinicio: No es necesario reiniciarlo

d) Prueba: Crea en el directorio público del servidor web un archivo llamado
test.php con el siguiente contenido:
<?php phpinfo( ); ?>

Guarda el archivo. Desde un navegador, accede al archivo: deberás acceder a
una tabla resumen de la configuración de PHP.

------
 Para que eso pueda ser posible debemos realizar los siguientes pasos para crear un alias y dar de alta la página en el servidor:

1) Crearemos un directorio llamado "web1"  dentro del directorio público, en el que introduciremos el fichero "test.php", con lo cual la ruta pública quedará así "http://192.168.1.30/web1/test.php", y la interna, en el servidor "/home/admon/web1/test.php".

2) En el Putty, iremos al directorio de configuración del apache2 "cd /etc/apache2".

3) Ahora iremos al directorio de sitios disponibles "cd sites-available".

4) Creamos un fichero llamado (por ejemplo) web1.
Al ser la carpeta del usuario root, para crear el archivo debes usar sudo: "sudo nano web1", pedirá contraseña y escribiremos lo que explicamos en el paso siguiente.

5) En la primera línea: "Alias /web1 /home/admon/web1":
Ésta linea explica que habrá un alias (web1), cuya dirección dentro del servidor está en la raíz y en el usuario (admon) en la carpeta (web1).

En la segunda línea: "<Directory /home/admon/web1>
Order allow,deny
Allow from all
</Directory>"
Este conjunto de líneas conceden permisos de acceso al directorio.
En este caso, se indica que se apliquen primero las directivas allow (permitir) y después las directivas deny (denegar).
En este caso, sólo hay una directiva que permite el acceso desde cualquier lugar.

Contenido opcional: "DirectoryIndex index.htm index.html", dentro de la etiqueta "Directory";
Esta línea iría dentro del bloque Directory anterior, e indicaría que cuando lo que se pida en la URL sea el directorio (es decir, no se especifique ningún archivo) se responda con el archivo index.htm, y si no está con el archivo index.html.
Se pueden indicar los archivos que se deseen, siendo el orden en que aparecen el orden en que se buscan.


Contenido opcional: "Option Indexes FollowSymLinks"; también dentro de "Directory";
Esta línea iría dentro del bloque Directory anterior, e indicaría que cuando lo que se pida en la URL se el directorio (es decir, no se especifique ningún archivo) y no se encuentren los archivos indicados en DirectoryIndex, se sirva una lista con el contenido del directorio, mostrando enlaces a cada uno de los archivos que contiene.

6) Guardamos y cerramos el fichero, es decir, "ctrl+o" (elegimos un nombre, que iva a ser web1, y enter) y "ctrl+x" (salir).

7) Activamos el sitio web: "sudo a2ensite nombre_archivo_configuracion_alias", en nuestro caso "sudo a2ensite web1".

8) Finalmente, reiniciamos el servidor apache2: "sudo service apache2 restart".
------



10.Instalación y configuración de MySQL
a) Instalación: sudo apt-get install mysql-server mysql-client .
Durante la instalación se pedirá que establezcamos la contraseña del usuario root de mysql.
Esa contraseña es imprescindible para poder instalar posteriormente aplicaciones web en nuestro servidor. Poner para no olvidar sql1234



b) Configuración: No es necesaria configuración
c) Reinicio: sudo service mysql restart


d) Prueba: mysql --user=admon --password=sql1234 . Debe aparecer el prompt “mysql>” .
Para salir escribimos quit.


11.Instalación y acceso a phpmyadmin
a) Instalación: sudo apt-get install phpmyadmin.



Durante la instalación se pedirá la contraseña de root de mysql, que pusimos en el apartado anterior (sql1234).


Además, se pide definir una contraseña para la propia base de datos
de phpmyadmin (poner psql1234, dos veces).


Además, se pide que se seleccione el servidor web que se esté utilizando; debemos marcar con la barra espaciadora Apache.

(((Esto lo pide al principio antes de las contraseñas)))

b) Configuración: no es necesario

c) Reinicio: no es necesario

d) Prueba: Para probar, ir a un navegador y escribir la dirección o URL
http://nombre_o_ip_servidor/phpmyadmin .
Indicar como usuario root y como contraseña sql1234 (o la que se haya puesto).



12.Instalación de unzip
a) Instalación: sudo apt-get install unzip



b) Uso: cuando sea necesario descomprimir una archivo, sólo habrá que ejecutar el comando unzip nombreArchivo.zip

13.Instalación del navegador elinks
a) Instalación: sudo apt-get install elinks


b) Ejecución y prueba: elinks www.google.es



NOTAS:
• Cuando hayas terminado tu servidor, no olvides hacer una instantánea de tu máquina virtual y de exportarla, para tener una instalación perfecta del servidor que usar cuando necesitemos.

• Al importar una máquina virtual exportada anteriormente dentro de la misma red, debes tener en cuenta que las dos máquinas virtuales (la original y restaurada) tienen la misma MAC. 

Esto es un problema si quieres tener las dos máquinas funcionando simultáneamente en la misma red (aunque sea en hosts distintos), y deberás cambiar la MAC de una de ellas. Para ello, ve a las propiedades de la tarjeta de red en virtualbox, pulsa sobre Avanzadas y pulsa sobre el botón para
cambiar la MAC.
Cambiar la MAC de una máquina supone que se pierda su configuración IP en Ubuntu Server. Para corregir el error:
◦ Edita el archivo /etc/network/interfaces : sudo nano /etc/network/interfaces
◦ Borrar la línea donde aparece eth0 y la inmediatamente superior (para borrar líneas puedes usar Ctrl+K)
◦ Cambiar los eth1 (o cualquier otro número que aparezca) por eth0
◦ Guardar y salir de nano
◦ Reiniciar la red: sudo service networking restart Servidor

No hay comentarios:

Publicar un comentario