Servicio apache gnu linux-centos ::::...

8
Semana 13 - Sistemas Operativos III - Linux SERVICIO APACHE HTTP (Hyper text Transfer Protocol, o Protocolo de Trasferencia de Hipertext), es el método utilizado para transferir o transportar información en la Red Mundial (WWW, World  Wide Web). Su propósito original fue el proveer una forma de publicar y recuperar documentos HTML. El desarrollo del protocolo fue coordinado por World Wide Web Consortium  la IETF (Internet Engineering Task Force, o Fuerza de Trabajo en Ingeniería de Internet), culminando con la publicación de varios RFC (Request For Comments), de entre los que destaca el RFC 2616, mismo que define la versión 1.1 del protocolo, que es el utilizado hoy en día. HTTP es un protocolo de solicitud y respuesta a través de TCP, entre agentes de usuarios (Navegadores, motores de índice y otras herramientas) y servidores,  regularmente utilizando  el puerto  80. Entre la comunicación entre éstos puede intervenir como servidores Intermediarios (Proxies), puertas de enlace y túneles. Apache   es  un   servidor   HTTP,  de  código   abierto   y   licenciamiento  libre,  que funciona  en  Linux, sistemas   operativos   derivados   de   Unix™,   Windows,   Novell   Netware   otras   plataformas.   Ha desempeñado un papel  muy  importante en el crecimiento de la red mundial, y  continua siendo el servidor  HTTP más  utilizado,  siendo  además  el   servidor de  facto   contra   el  cual  se  realizan   las pruebas comparativas y  de desempeño para otros productos competidores. Apache es desarrollado y mantenido por una comunidad de desarrolladores auspiciada por Apache Software Foundation.(http://www.apache.org/) SERVICIO LAMP. El acrónimo LAMP se refiere a un conjunto de subsistemas de software necesarios para alcanzar una solución global, en este caso configurar sitios web o Servidores dinámicos con un esfuerzo reducido. En las tecnologías LAMP esto se consigue mediante la unión de las siguientes tecnologías: Linux, el sistema operativo; Apache, el servidor web; 1

description

HTTP (Hyper text Transfer Protocol, o Protocolo de Trasferencia de Hipertext), es el método utilizado para transferir o transportar información en la Red Mundial (WWW, World Wide Web). Su propósito original fue el proveer una forma de publicar y recuperar documentos HTML. El desarrollo del protocolo fue coordinado por World Wide Web Consortium y la IETF (Internet Engineering Task Force, o Fuerza de Trabajo en Ingeniería de Internet), culminando con la publicación de varios RFC (Request For Comments), de entre los que destaca el RFC 2616, mismo que define la versión 1.1 del protocolo, que es el utilizado hoy en día. PARA MAS TEMAS COMO ESTE VICITENOS -------------------------------------------------------- http://www.informatica-easy.webcindario.com/

Transcript of Servicio apache gnu linux-centos ::::...

Page 1: Servicio apache  gnu linux-centos ::::...

Semana 13 - Sistemas Operativos III - Linux

SERVICIO APACHE

HTTP  (Hyper   text   Transfer   Protocol,   o   Protocolo   de   Trasferencia   de 

Hipertext), es el método utilizado para transferir o transportar información 

en la Red Mundial (WWW, World  Wide Web). Su propósito original fue el 

proveer una forma de publicar y recuperar documentos HTML.

El desarrollo del protocolo fue coordinado por World Wide Web Consortium 

y   la IETF (Internet Engineering Task Force, o Fuerza de Trabajo en Ingeniería de Internet), 

culminando   con   la  publicación   de   varios   RFC  (Request   For   Comments),   de   entre   los   que 

destaca el RFC 2616, mismo que define la versión 1.1 del protocolo, que es el utilizado hoy en 

día.

HTTP es  un  protocolo  de  solicitud  y   respuesta  a   través  de  TCP,  entre  agentes  de 

usuarios (Navegadores, motores de  índice y otras herramientas) y servidores,   regularmente 

utilizando   el puerto   80. Entre la comunicación entre éstos puede intervenir como servidores 

Intermediarios (Proxies), puertas de enlace y túneles.

Apache   es  un   servidor   HTTP,  de  código   abierto   y   licenciamiento  libre,  que 

funciona  en  Linux, sistemas   operativos   derivados   de   Unix™,   Windows,   Novell   Netware 

y   otras   plataformas.   Ha desempeñado un papel  muy  importante en el crecimiento de la red 

mundial, y   continua siendo el servidor   HTTP más   utilizado,   siendo   además   el     servidor 

de  facto   contra   el  cual  se  realizan   las pruebas comparativas y  de desempeño para otros  

productos   competidores.   Apache   es   desarrollado   y   mantenido   por   una   comunidad   de 

desarrolladores auspiciada por Apache Software Foundation.(http://www.apache.org/)

SERVICIO LAMP. 

El acrónimo LAMP se refiere a un conjunto de subsistemas de software necesarios para 

alcanzar una solución global, en este caso configurar sitios web o Servidores dinámicos con un 

esfuerzo reducido.

En las tecnologías LAMP esto se consigue mediante la unión de las siguientes tecnologías:

• Linux, el sistema operativo;

• Apache, el servidor web;

1

Page 2: Servicio apache  gnu linux-centos ::::...

Semana 13 - Sistemas Operativos III - Linux

• MySQL, el gestor de bases de datos;

• Perl, PHP, o Python

La combinación de estas tecnologías es usada primariamente para definir la infraestructura 

de un servidor web.

A   pesar   de   que   el   origen   de   estos   programas   de   código   abierto   no   han   sido 

específicamente diseñado para trabajar entre sí, la combinación se popularizó debido a su bajo 

coste de adquisición y ubicuidad de sus componentes  (ya que vienen pre­instalados en  la 

mayoría de  las distribuciones Linux).  Cuando son combinados,   representan un conjunto de 

soluciones que soportan servidores de aplicaciones.

Entre los navegadores más conocidos tenemos:

• Firefox 

• Konqueror

• Galeon

• Safari 

Mozilla Firefox es un navegador de Internet libre y de código abierto descendiente de Mozilla 

Application   Suite,   desarrollado   por   la   Corporación   Mozilla,   la   Fundación   Mozilla   y   un   gran 

número de voluntarios externos.

Incluye   navegación   por   pestañas,   corrector   ortográfico,   búsqueda   progresiva,   marcadores 

dinámicos, un administrador de descargas y un sistema de búsqueda integrado que utiliza el 

motor de búsqueda que desee el usuario.

Konqueror es un navegador web, administrador de archivos y visor de archivos. Forma parte 

oficial del proyecto KDE. Es software libre y de código abierto, y al igual que el resto de los 

componentes de KDE, está liberado bajo la licencia GPL.

El nombre Konqueror es un juego de palabras con el nombre de otros navegadores: primero 

vino  el  Navigator   (navegador),  después  el  Explorer   (explorador),   y   finalmente  el  Konqueror 

(conquistador). Además, sigue la convención de KDE de que los nombres de los programas 

contengan la letra K.

Instalación del apache a través de yum

#yum install httpd

2

Page 3: Servicio apache  gnu linux-centos ::::...

Semana 13 - Sistemas Operativos III - Linux

Procedimiento de instalación clásico

1. Revisamos si el paquete apache está instalado

#rpm –q httpd 

#rpm –qa | grep httpd

2. Luego visualizamos el estado del servicio

#service httpd status

3. Ingresamos al archivo de configuración que se encuentra en la siguiente ruta:

#vi /etc/httpd/conf/httpd.conf

4. Aquí nos encontramos con 3 sección llamadas:

Sección 1: GLOBAL ENVIROMENT   .      

A continuación mencionamos algunos de los comandos más importantes que tiene dicha 

sección:

Server tokens OS  nos da la información, la versión del servidor.

Server Root  directorio del sistema.

httpd.pid  procesos padre (PID)

Listen  que puerto escucha el servidor

user apache y group apache  permisos y privilegios.

Sección 2: MAIN SERVER CONFIGURATION  

Serveradmin  correo del webmaster

/var/www/cgi­bin  hacer programas en lenguaje “C”.

BrowserMatch  Aplicaciones o navegadores. Optimizar.

ServerName. Use la directriz ServerName para configurar un nombre de servidor y un 

número de puerto (que coincida con la directriz Listen) para el servidor. El ServerName 

no necesita coincidir con el nombre real de la máquina. Por ejemplo, el servidor Web 

puede   ser   www.example.com   pero   el   nombre   del   servidor   es   en   realidad 

foo.example.com.   El   valor   especificado   en   ServerName   debe   ser   un   nombre   del 

Servicio de Nombres de Dominio.

DocumentRoot. DocumentRoot es el directorio que contiene la mayoría de los archivos 

HTML   que   se   entregarán   en   respuesta   a   peticiones.   El   directorio   predeterminado 

DocumentRoot para servidores web seguros y no seguros es /var/www/html.

3

Page 4: Servicio apache  gnu linux-centos ::::...

Semana 13 - Sistemas Operativos III - Linux

Sección 3: VIRTUAL HOSTS.  

NameVirtualHost.  La directriz NameVirtualHost asocia una dirección IP y número de 

puerto,   si   es   necesario,   para   cualquier   máquina   virtual   basada   en   nombres.   El 

hospedaje  virtual  basado en nombres permite a un Servidor  Apache HTTP servir  a 

dominios diferentes sin usar múltiples direcciones IP. 

VirtualHost.  Las   etiquetas   <VirtualHost>   y   </VirtualHost>   crean   un   contenedor 

mostrando  las características de un host  virtual.  El  contenedor  VirtualHost  acepta  la 

mayoría de las directrices de configuración. 

5. Para   este   caso   nos   vamos   a   la   segunda   sección   llamada  MAIN   SERVER 

CONFIGURATION. Buscamos la línea donde se encuentre el nombre llamado Server 

Name y colocamos:

ServerName www.paginaejemplo1.com:80

Verificamos si la ruta del root esta activada por defecto donde se guarda la pagina web.

DocumentRoot “/var/www/html”

6. Guardamos los cambios realizados.

7. Luego modificamos el archivo hosts que se encuentra en etc

#vi /etc/hosts

Allí vemos la configuración:

Debajo de la línea del 127.0.0.1 se deberá de colocar el numero IP de la PC 

cliente, luego tabulamos y colocamos el nombre de la PC o bien el nombre del dominio 

que fue configurado en el archivo httpd.conf.

4

Page 5: Servicio apache  gnu linux-centos ::::...

Semana 13 - Sistemas Operativos III - Linux

10.10.13.240 www.paginaejemplo1 locahost

8. Se crea una página web en el sitio /var/www/html.

#cd /var/www/html

#vi index.html

9. Reiniciamos el servicio apache

#service httpd restart

10.Cargamos el navegador respectivo, se sugiere el KONQUEROR y colocamos

http://10.10.13.240/index.html o colocamos tambien

http://www.paginaejemplo1.com

Configuración de un Virtual HOSTS.

Puede generarse cualquier fichero con extensión     *.conf     dentro del   directorio 

/etc/httpd/conf.d/  de Apache. Puede incluirse contenido como el siguiente:

# Definición del Sitio de Red principal

#NameVirtualHost *:80

NameVirtualHost 192.168.1.254:80

#<VirtualHost *:80>

<VirtualHost 192.168.1.254>

ServerAdmin [email protected]         

DocumentRoot /var/www/html/         

ServerName www.dominio.com         

</VirtualHost>

# Más Sitios de Red virtuales

<VirtualHost 192.168.1.254>

ServerAdmin  [email protected]         

DocumentRoot /usr/share/squirrelmail/         

ServerName webmail.dominio.com         

</VirtualHost>

5

Page 6: Servicio apache  gnu linux-centos ::::...

Semana 13 - Sistemas Operativos III - Linux

Hay que tomar en cuenta que cada sitio virtual creado se deberá de registrar también en el 

archivos hosts, repitiendo el mismo numero ip, pero con sitio web diferente.

Se puede crear una página web por cada sitio creado en el subdirectorio /var/www/html.

Luego se procede a reiniciar el servicio respectivamente.

#service httpd restart.

Se carga el  navegador   respectivamente  colocando  con  el   IP,  cada una de   las  páginas 

creadas o colocando el dominio respectivo.

Ejemplo para crear una página web ingresando clave del usuario.

Genere el fichero /etc/httpd/conf.d/linux1.conf con el siguiente contenido:

Alias /privado /var/www/privado

<Directory "/var/www/privado">

Options Includes

AllowOverride All

Order allow,deny

Allow from all

</Directory>

Genere el directorio /var/www/privado/ realizando lo siguiente:

#mkdir ­p /var/www/privado

Genere el fichero /var/www/privado/.htaccess realizando lo siguiente:

touch /var/www/privado/.htaccess

Edite el fichero /var/www/privado/.htaccess y agregue el siguiente contenido:

AuthName "Solo usuarios autorizados de IDAT 3699"

AuthType Basic

require valid­user

AuthUserFile /var/www/claves

Genere  el   fichero   de   claves   de   acceso   como  /var/www/claves,   utilizando   el   siguiente 

procedimiento:

#touch /var/www/claves

Con el fin de establecer la seguridad necesaria, cambie los atributos de lectura y escritura solo 

para el usuario apache:

6

Page 7: Servicio apache  gnu linux-centos ::::...

Semana 13 - Sistemas Operativos III - Linux

#chmod 600 /var/www/claves

#chown apache:apache /var/www/claves

Agregue algunos usuarios virtuales al fichero de claves, /var/www/claves, utilizando el 

siguiente procedimiento con el mandato htpasswd:

#htpasswd /var/www/claves idat

#htpasswd /var/www/claves linux

Reinicie el servicio httpd:

#service httpd restart

Acceda con cualquier navegador de red hacia http://127.0.0.1/privado/ y compruebe que 

funciona el acceso con autenticación en dicho subdirectorio utilizando cualquiera de los dos 

usuarios virtuales que generó con el mandato htpasswd, es decir idat o linux.

http://127.0.0.1/privado/

Uso del LAMP con JOOMLA.Hay que recordar que necesitamos tener instalado los siguientes paquetes:

#rpm ­q httpd mysql mysql­server php­mysql php­cli php­common

Luego reiniciar la base de datos mysql.

#service mysqld restart

Descargamos el Joomla, para esto usamos la pagina www.joomlaspanish.org copiandolo en el 

root.

Creamos un dominio nuevo en la ruta /var/wwww

#mkdir ­p /var/www/idatjoomla.com

Tambien dentro de este nuevo directorio creamos 4 carpetas mas: html, cgi­bin, icons, error.

#mkdir ­p /var/www/idatjoomla.com/html

Modificamos en la 3ra seccion y agregamos el nuevo dominio.

Copiamos el archivo descargado a la ruta /var/www/idatjoomla.com/html

Luego desempaquetamos el archivo.

#tar ­xzvf Joomla_1.5.9­Spanish­pack_completo.tar.gz

Damos una contraseña a la base de datos

#mysql ­u root

mysql>SET PASSWORD FOR 'root'@'localhost' = PASSWORD (' PASSWORD');

Luego salimos con el comando exit e ingresamos de nuevo

7

Page 8: Servicio apache  gnu linux-centos ::::...

Semana 13 - Sistemas Operativos III - Linux

#mysql ­u root ­p

Creamos una base de datos

msyql > CREATE DATABASES joomla;

mysql>GRANT ALL ON joomla.* TO 'admin'@'localhost' IDENTIFIED BY 'PASSWORD' WITH 

GRANT OPTION;

mysql>FLUSH PRIVILEGES;

mysql>exit;

Cargamos la pagina web en el navegador firefox el dominio que se creo.

Instalando el Joomla.

1. Aparecera el tipo de idioma que se usara en el joomla.

2. Verificamos la base de datos creada

3. Aparece la licencia GPL

4. Colocamos los datos que se nos pide.

5. Obviamos el paso de la configuracion del FTP.

6. Colocamos el nombre del dominio que usara el JOOMLA.

7. Colocamos el usuario y la clave de acceso del usuario administrador.

8. Damos   clic   en   el   boton   llamado   “INSTALAR   LOS   DATOS   DE   EJEMPLO 

PREDETERMINADOS”.

9. Borramos la carpeta “INSTALLATION” por completo.

10. Si queremos ingresar con el usuario administrador colocamos:

            www.idatjoomla.com/administrator

Colocamos la clave respectiva con el usuario creado de la base de datos.

8