miércoles, 8 de febrero de 2017

https

Con esta práctica queremos conseguir que la información que se envía a través del cliente/servidor esté segura, es decir, que sea cifrada de manera que sólo estos dos puedan ver la información que están generando entre ellos.

Para ello se necesita el siguiente proceso:

- el servidor envía su clave pública junto a un certificado de confianza que demuestre que este es quien dice ser.

- el cliente recibe la clave y decide si el certificado es de una fuente confiable y si pertenece al servidor con el que queremos comunicarnos.

- el cliente responde cifrando con la clave pública del servidor para que sólo él, al descifrarlo con su clave privada, pueda leer la información.

Para esto necesitaremos primeramente crear un certificado de nuestro servidor. Introducimos el siguiente comando en el terminal:


Nuestro country name, ES.


y los demás datos.


Una vez generado la clave la encontraremos en el home de nuestro usuario.


Copiaremos el contenido de este archivo y acudiremos a comodo.com para generar un certificado SSL gratuito, donde pegaremos el contenido.


Cuando introduzcamos los datos en la página, comodo firmará o no el certificado.

Seguidamente instalaremos tinyca con sudo apt-get install tinyca, una vez instalado lo ejecutaremos con el comando sudo tinyca2 para crear nuestro CA.


Introduciremos los datos.





Seguidamente iremos a la pestaña peticiones y crearemos una nueva petición.


Introduciremos los datos y firmaremos la petición como servidor.

una vez firmada, vamos a la pestaña certificados y lo exportaremos.


Exportaremos la clave del mismo modo.

Ahora iremos al servidor Apache y dentro del host virtual www.aulaser.com escogeremos el certificado y la clave generada en el anterior paso.


Guardaremos y aplicaremos la configuración.

con esto ya tendríamos el certificado terminado, ahora sólo nos queda importar el certificado en nuestro navegador para que lo reconozca.



martes, 7 de febrero de 2017

Habilitar public_html con userdir

En esta práctica vamos a habilitar la carpeta public_html para poder visualizar desde el navegador nuestro localhost. Para ello empezaremos acudiendo al servidor Apache desde webmin y, en la configuración global, buscaremos el apartado Configure Apache Modules.


Seguidamente habilitaremos la opción userdir situada al final de la lista.


Una vez activado, crearemos nuestra propia carpeta public_html, dentro de esta carpeta introduciremos los archivos que queramos manejar desde el navegador.


Uno de estos archivos debe ser un .html que contenga la página principal de nuestro portal , en nuestro caso hemos creado el archivo indice.html con el texto siguiente:


Por defecto no leerá nuestro archivo porque tiene un nombre que no está guardado en nuestro fichero de indidices de directorio, por lo que vamos a introducirlo. Acudimos a Default Server y entramos en Directory Indexing.


introducimos el nombre del fichero que queremos que aparezca en el apartado que está subrayado en la siguiente imagen.


Ahora reconocerá este archivo como el fichero que tiene que enseñar, pero con la configuración actual no aparecerá la página directamente, sino que veremos el contenido situado dentro de la carpeta public_html. Para resolver esto y aparezca directamente el archivo indice.html entraremos de nuevo en el servidor por defecto y acudirremos a Document Options.


En esta opción podemos configurar globalmente la opción de que genere índices de directorio o no, para que aparezca directamente nuestro .html. Si queremos que sólo se configure nuestra carpeta public_html haremos lo mismo pero específicamente en este directorio.


Y lo configuraremos:






Otro método es crear el archivo .htacces en el directorio donde queramos o no indexar e introducir lo siguiente (+ para que haya indexado y - para que no lo haya):



El resultado sería este:


miércoles, 25 de enero de 2017

Servicio HTTP

http es el método más común de intercambio de información en la web.

Es un protocolo cliente/servidor, uno tiene un rol de cliente y el otro, siempre a la escucha,
de servidor.

El hipertexto es el texto que te permite acceder a otros documentos desde el mismo.

https permite el uso de cualquier método de cifrado siempre que lo compartan el servidor
y el cliente.

El  puerto se encarga de unir los programas para reconocer a qué servicio del servidor
estamos accediendo (ftp, etc.).

El protocolo http es un protocolo sin estado, es decir, no recuerda nada relativo a conexiones
anteriores a la actual.

- Si el servidor lo encuentra, lo envía.
- Si no existe, envía un código de error.

Esto permite que no hayan datos adicionales pendientes de trámites anteriores.

Para Cada objeto que se transfiere por la red se realiza una conexión independiente.

Pero esto no permite guardar información de peticiones pendientes, para solucionar esto empleamos las cookies.

en http podemos utilizar tres operaciones:

-GET
-POST
-HEAD

------------

Abrimos terminal.

utilizaremos telnet para hacer peticiones

después de telnet insertaremos la url de la que deseamos extraer información y seguidamente el
puerto que queremos utilizar (en este caso 80, tcp).



Se conectará a la url en concreto.

Le haremos la petición GET seguido de nuestra petición seguido del protocolo que queremos.



Si hemos empleado un protocolo que el servidor pueda entender, nos responderá con la petición

y nos otorgará el recurso.

Si se desea descargar el contenido que hay en una dirección en concreto, se puede utilizar el comando WGET.
-----------

Los tipos MIME indican tipo de archivo que se transfiere del servidor al cliente.


MIME multipart se emplea para la subida de archivos, se hace desde POST.

martes, 17 de enero de 2017

DNS Dinámico

La finalidad de esta práctica es que nuestro servidor principal sea capaz de actualizarse por si mismo, de modo que al asignar una dirección automática a sus clientes, el servidor guarde el nombre del cliente y la dirección asignada en sus zonas correspondientes del dominio.

Para ello será necesario generar una clave DNSSEC

Abrimos terminal.

introducimos sudo dnssec-keygen -K /etc/bind -a HMAC-MD5 -b 128 -n USER usuariodeclave (en nuestro caso usuario1).

K = directorio donde guarda los ficheros con las claves
a = algoritmo
b = tamaño en bits
n = tipo de clave



Como queremos visualizar la clave para copiarla, introduciremos en el terminal sudo nano clavegeneradaenBIND (en nuestro caso Kusuario1.key).


Seguidamente configuraremos BIND.


Acudimos a BIND/DNS KEYS.



Introduciremos el usuario y su respectiva clave, copiada anteriormente del archivo generado.




Guardaremos los cambios y acudiremos a Edit zone options de la zona aulaser.

Introdicumos key usuario (en nuestro caso usuario1).



Realizaremos lo mismo en la zona inversa.

Para comprobar que el servidor funciona correctamente y se actualiza introduciremos el comando nsupdate seguido de las siguientes órdenes:



Por último, comprobaremos que funciona haciendo dig a pruebaaulaser.com.