servidor apache
DESCRIPTION
En esta práctica, emplearemos algunas de las características principalmente, la utilización de servidores virtuales, como configuracion de servidor apache,configuracion de phpmyadmin e instalacion de joomla bajo el entorno ubuntu*TRANSCRIPT
Universidad Tecnológica La Salle
ULSA
Tecnología de Redes Globales Configuración de un Servidor Web Apache
Alejandro Balmaceda Carrión
Fausto León Amador Mairena
Ing. Aldo Martínez
Introducción El servidor web es un programa que permite protocolo HTTP. Dentro del mercado existen diversas implementaciones de servidores web entre las cuales destacan IIS de Microsoft y Apache de Linux. Apache es uno de los servidores web más ampliamente distribuid característica es que posee una gran cantidad de módulos que permiten dotar el servidor de muchas cualidades. En esta práctica, emplearemos algunas de estas características principalmente, la utilización de servidores virtuales.
Objetivos:
Personalizar el funcionamiento de Apache a través de la configuración de los diferentes ficheros.
Crear sitios virtuales y aplicar diferentes políticas a cada uno de ellos.
Instalar y configurar un sitio para que albergue el PHPMyAdmin.
Configurando el Servidor Apache
En la primera parte de la práctica, nos centraremos en configuraciones propias de apache con el objetivo de dejar un servidor altamente funcional y estable:
1. Instalar el Servidor Web Apache con PHP5
La instalación se hará desde la consola ya que muchas veces es el único medio disponible en servidores aunque también hay formas más sencillas de hacerlo mediante el uso de las herramientas gráficas como pueden ser Synaptic, KPackageKit y muchas otras utilidades. Desarrollamos esta práctica en UBUNTU, utilizando los siguientes comando, usaremos sudo para ganar privilegios y la utilidad apt-get. El proceso es bastante sencillo y rápido desde la consola. Es posible que haya que responder "s" a alguna pregunta en el proceso de instalación de Apache.
Ahora para comprobar si la instalación se realizó correctamente, escribiremos en el
navegador de tu preferencia la IP de una de las maquinas cliente. Para obtener las IP
escribes.
Nos mostrará la siguiente página:
sudo apt-get install apache2 sudo apt-get install php5 sudo apt-get install libapache2-mod-php5 sudo /etc/init.d/apache restart
/etc/init.d/networking restart ifconfig -a
2. Elimine la visualización del mensaje de error que indica la versión de apache, de debían, etc. para mayor seguridad.
Mostrar la versión de Apache que se está corriendo en el Servidor, el sistema operativo, así como su versión e incluso, los módulos de apache que están instalados en el servidor, resulta peligroso, ya que los atacantes pueden utilizar esta información como ventaja, al momento de hacer cualquier tipo de ataque. Se agregaran las siguientes líneas, para poder esconder toda esta información valiosa: ServerSignature Off ServerTokens Prod
ServerSignature es la firma del servidor, aparece en los errores 404, listado de directorios, etc. ServerTokens es la que determina lo que Apache incluirá en la cabecera de respuesta HTTP del servidor.
Lo que haremos es escribir en la terminal:
Abrimos el navegador y buscamos por ejemplo /ale.html, nos quedará de esta manera:
nano /etc/apache2/conf.d/security
3. Investigue la forma de aumentar el tamaño máximo de los archivos
subidos al servidor.
Para poder aumentar el tamaño de los archivos subidos al servidor, abra que acceder a la siguiente ruta con el comando ‘nano’: Habrá que modificar los valores de upload_max_filesize y asignarle un valor mayor:
También habrá que aumentar los valores de post_max_size, tamaño máximo de carga por envío, el cual debe ser igual o mayor al especificado en upload_max_filesize, e incluso el de max_execution_time tiempo máximo en segundos que el servidor esperará al script para que termine su ejecución, en este caso, la carga de archivos:
NOTA: para facilitar la búsqueda de estos, puede utilizar la función ctrl w, es una opción de búsqueda.
nano /etc/php5/apache2/php.ini
4. Evite que se puedan listar el contenido de los directorios.
Mantener la seguridad en un Servidor es esencial, por lo tanto evitar que se listen los directorios, es de gran utilidad para conservar este fin. Existen otras formas a la expuesta en la realización de esta guía, pero esta nos resulto muy conveniente. Tendriamos que editar un fichero, para acceder a esa ruta escribimos en la consola lo siguiente Habrá que configurar “Options” como “None” ó “-Indexes”
Obtenemos como resultado:
nano /etc/apache2/sites-available/default
5. Cree un servidor virtual que aloje una página personal virtual
Para la creación de un Host Virtual, accederemos a la siguiente ruta:
Donde copiaremos el archivo ‘default’ y le asignaremos el nombre de nuestro Servidor
Virtual, en nuestro caso ‘ulsa’. Luego accederemos a este, con el comando ‘nano’:
A continuación, editaremos el interior de nuestro Host, de la siguiente manera:
Donde DocumentRoot, será el directorio raíz de nuestro Host.
/etc/apache2/sites-available/
El siguiente paso, será acceder con el comando ‘nano’ a:
Ahí podremos asignar una dirección IP a nuestro Host Virtual:
Introducimos la dirección en el Navegador y comprabamos que funciona:
Ahora solamente habrá que mover los archivos index.html del pequeño sitio web a la
carpeta del Host Virtual, que antes habíamos definido como /ulsa, para que muestre
nuestro pequeña página web.
/etc/apache2/sites-available/
Configuración de phpmyadmin Muchas de las aplicaciones necesitan de bases de datos, en nuestro caso, para solventar esta necesidad instalaremos mysql pero utilizando como front-end del phpmyadmin.
6. Instale el phpmyadmin y configúrelo de tal manera que se pueda
acceder a través del navegador (localhost/phpmyadmin)
Para dotar a nuestro Host Virtual de dinamismo y opciones para guardar información,
como datos, fotografías, etc., deberemos intalar un motor de base de datos y conectarlo
con Apache y PHP.
1. Para instalar MySQL, teclearemos en la terminal el siguiente comando:
Habrá que poner ‘s’, para aceptar y continuar con la instalación.
apt-get install mysql-server
2. Luego de instalar el MySQL-Server, nos mostrará una pantalla donde deberemos
introducir la contraseña de nuestro usuario root, como la ventana que se muestra a
continuación:
3. A continuación, procedemos a instalar phpmyadmin, con el siguiente comando, que se
muestra en la gráfica:
Procedemos la instalación escribiendo ‘s’.
apt-get install phpmyadmin
4. Marcamos ‘apache2’ y pulsamos Aceptar:
5. A continuación, se nos pregunta si queremos configurar la base de datos para
phpMyAdmin con dbconfig-common y contestamos que Sí.
6. En el siguiente paso se nos pregunta por la contraseña de root de MySQL. Esta
contraseña ya existe porque la establecimos al instalar MySQL.
7. Ahora debemos escribir una contraseña para el usuario phpmyadmin que se crea
automáticamente en MySQL.
8. Además, debemos volver a escribir la contraseña.
9. Por último, sólo tenemos que comprobar que tenemos acceso a nuestro phpMyAdmin
usando la dirección formada por nuestra IP o nombre de dominio seguida de
phpmyadmin. Por ejemplo, http://127.0.0.1/phpmyadmin
7. Cree un usuario juan que tenga acceso únicamente a una base de datos creada por él a través de phpmyadmin. 1. Accedemos a PHPMyAdmin.
2. Colocamos ‘usuario’ y ‘contraseña’. En nuestro caso el usuario será ‘root’ y la contraseña
‘pingüino’. Y accedemos, se nos mostrará una ventana de esta manera:
3. Procedemos a la solapa ‘Privilegios’ y creamos el usuario denominado ‘juan’ y le asignamos ahí
mismo, que tenga acceso exclusivamente a una base de datos, llamada igual que su nombre de
usuario.
8. Modifique la configuración de tal manera que el phpmyadmin se ejecute como un sitio virtual y no como un directorio. Ya tenemos nuestro servidor www.ulsa.com, ahora haremos que phpmyadmin funcione
como un host virtual.
Phpmyadmin se encuentra en /etc/phpmyadmin Ahora el siguiente paso es crear un enlace simbólico desde el directorio Raíz de nuestro
servidor web hacia el directorio donde se encuentra phpmyadmin, de la siguiente manera:
Con lo anterior conseguimos que todo lo que esté dentro del directorio /etc/phpmyadmin se vea reflejado en un directorio llamado /phpmyadmin dentro de nuestro directorio raíz real o sea /var/www como si fuera un directorio quedando en la URL. http://phpmyadmin.ulsa.com Ahora nos movemos al directorio de configuraciones del servidor web Apache… cd /etc/apache2/sites-available Para crear los VirtualHost en Apache existe un directorio llamado sites-available y allí es donde crearemos los VirtualHost. Copiamos el archivo por defecto default para crear el primer VirtualHost en este caso para la dirección de nuestro server… cp default phpmyadmin.ulsa.com A continuación editamos el archivo phpmyadmin.ulsa.com con nano phpmyadmin.ulsa.com y colocamos en DocumentRoot y Directory, el directorio /var/www/phpmyadmin , que es donde éste se encuentra.
Instalación de Joomla
Con el objetivo de que se tenga un sitio web por defecto dentro de la página, se necesita de algún CMS para la gestión de todo el contenido. En nuestro caso, vamos a instalar Joomla, para ello:
9. Descargue Joomla y súbala al servidor.
1. Para obtener Joomla, procedemos a crear una carpeta llamada joomla, donde
descargaremos los archivos.
2. Descargamos el archivo con el comando wget, y la dirección url que se muestra en la
pantalla.
3. Una vez descargado el paquete, procedemos a descomprimirlo.
4. Una vez que lo hemos descomprimido, procedemos a borrar el archivo comprimido.
5. Una vez hecho esto, procedemos a mover la carpeta de joomla, a la raíz de nuestro host
virtual, para continuar con su instalación.
10. Siga los pasos correspondientes para la instalación.
1. Accedemos por el navegador a la dirección de nuestro Host Virtual y nos dará la
siguiente pantalla. Elegiremos el lenguaje Español, y daremos click en siguiente.
2. A continuación realizará comprobaciones previas, damos click en siguiente:
3. Leeremos los términos de licencia, si estamos de acuerdo pulsaremos "Siguiente" para
continuar con la instalación:
4. En este paso de la instalación de Joomla! 1.6.3 nos solicitará los datos de acceso a la base de
datos MySQL Server de nuestro servidor web, necesitaremos la IP o el hostname (nombre de red)
del equipo, un usuario de MySQL Server con privilegios suficientes para crear tablas y la base de
datos (esquema) en el que se crearán todas las tablas necesarias para el funcionamiento de
Joomla!.
5. Si queremos habilitar una capa FTP podremos especificar aquí los datos del usuario y la
contraseña, este paso no es necesario de momento:
6. Introduciremos a continuación los datos del sitio web: Introduciremos también en este paso de la instalación de Joomla 1.6 los siguientes datos:
E-mail: introduciremos la dirección de correo electrónico del usuario administrador, para notificaciones.
Usuario del Administrador: introduciremos el nombre de usuario (nick) con el que iniciaremos sesión como administradores de Joomla.
Contraseña del Administrador y Confirmar contraseña del Administrador: introduciremos la contraseña que nos solicitará Joomla para iniciar sesión con el usuario anterior. Es recomendable usar una contraseña segura pues este usuario tendrá todos los permisos de administración de Joomla. si queremos que el asistente para instalar Joomla cree datos de ejemplo (artículos, secciones) ya precargados para
7. Por último, el asistente para instalar Joomla! 1.6 nos indicará que el pack de Joomla! ya se ha
instalado y que debemos eliminar la carpeta de instalación (installation) antes de continuar:
11. Personalice el sitio de tal manera que se visualice en ella, la
información que usted considere pertinente.
1. Para acceder a la administración web del gestor de contenidos Joomla! abriremos un navegador web (Mozilla Firefox, Internet Explorer, Google Chrome), introduciremos la URL del sitio web (si lo tenemos registrado) o de la IP del equipo servidor y añadiremos "/administrator", quedaría: http://www.ulsa.com/administrator
Introduciremos el usuario y la contraseña establecidos en la instalación de Joomla! para acceso
como administradores y pulsaremos "Acceso":
2. En primer lugar configuraremos las opciones globales de nuestro sitio web, para ello
accederemos al menú "Sitio" - "Configuración global".
3. Desde la pestaña "Sitio" podremos configurar opciones generales de nuestro sitio web Joomla
como el nombre del sitio, descactivar o activar el sitio, editor de noticias por defecto, metadatos.
4. Una vez configuradas las opciones globales, es recomendable crear los usuarios que tendrán
acceso a la administración del sitio web Joomla y modificar los datos del usuario super admin. Para
ello pulsaremos en el menú "Usuarios" - "Gestor de Usuarios".
5. Introduciremos los datos para el usuario "Super User" y pulsaremos en "Guardar & Cerrar".
6. Crearemos en esta ventana todos los usuarios que podrán administrar el sitio web con Joomla!,
estableciendo el nivel de acceso (permisos) de cada usuario.