jueves, 10 de diciembre de 2015

UNIDAD 5 - Servicio FTP


FTP - File transfer protocol - Protocolo de transferencia de archivos

Indice
1. Servicio FTP
2. El cliente FTP
3. El servidor FTP



1. Servicio FTP

- Sistema de redireccionamiento
     ftp://[usuario]:[contraseña]@[maquina]:[puerto]/[ruta-url]

- Como funciona FTP
    Servicio basado en arquitectura cliente-servidor.
    Servidor FTP conectado a la red, proporciona el servicio a través de dos puertos:
    - Puerto 20, para transferencia de datos.
    - Puerto 21, para transferencia de órdenes (control)
    El cliente se conecta por un puerto mayor al 1024 que esté libre y puerto de destino el 21.

- Modos de conexión
    Existen dos modos de conexión en FTP, el modo activo y el modo pasivo.

- Modos de Ejecución
    Existen tambien dos modos de ejecución, el modo aislado y el modo supervisor
    - Modo aislado: Proceso del sistema de forma independiente que permanece a la espera
      Este modo proporciona mayor seguridad.
    - Modo supervisor: Proceso que trabaja a través de INETD. (INETD hace de intermediario)
      Requiere arrancar el proceso cada vez que quiera utilizarse.
 
- Prácticas de clase
    Conectarse al servidor ftp de McGraw Hill desde Windows 7 de tres maneras diferentes:
    Mediante el navegador (Mozilla o Chrome), mediante consola y mediante FileZilla

1. Navegador:
Conectado al servidor mediante Chrome:

2. Consola:
Conectado
Creando un directorio: "sergio-ai1pc107"

Comprobando mediante el navegador que el directorio se ha creado:
 3. FileZilla
Conectado mediante FileZilla

 Extra - Conectarse mediante navegador y consola al servidor FTP del profesor

1. Navegador
Conectado al servidor mediante el navegador Chrome
2. Consola
Conectado al servidor mediante consola
 

miércoles, 2 de diciembre de 2015

IIS Internet Information Services

sistemasenredespresentacion.blogspot.com.es

Tutorial | IIS Internet Information Services | Instalación en Windows Server 2012
https://www.youtube.com/watch?v=GxmTUXAyU5Y

Como configurar IIS 8 en Windows 8, 8.1 y Server 2012 (Reporte de practica)
https://www.youtube.com/watch?v=WFiPEs0XV2E

Instalar Internet Information Service IIS 8 en Windows Server 2012 R2
https://www.youtube.com/watch?v=LpT3ToOo2Qo

Windows Server 2012 - Instalar IIS 8
https://www.youtube.com/watch?v=zErlOVzvTpE

Exchange Server 2013 - Configuraciones IIS por defecto
https://www.youtube.com/watch?v=SL9kBSEwayY

Windows Server 2003 - Instalación de Internet Information services IIS
https://www.youtube.com/watch?v=ZxTUwiOze9Q

HTTPS 6. Activar la seguridad en Apache

Activar módulo SSL desde Webmin:

https://localhost:10000/

Servidores / Servidor web Apache / Configuración Global / Configure Apache Modules
    marcar
Pulsar botón  ===>
Crear host virtual


sudo mkdir -p /var/www/ssl/htdocs

sudo gedit /var/www/ssl/htdocs/index.html

<html>
  <head>
    <title>Bienvenido al servidor seguro Apache SSL</title>
  </head>
  <body>
    <h1>Servicios en RED</h1>
    <h2>ai1pc100</h2>
  </body>
</html>
Webmin / Servidor Web Apache  / Create Virtual Host
443 
Raíz de Documento /var/www/ssl/htdocs


Imágenes integradas 1

Pulsar botón  ===> Crear Ahora

Obtención del certificado:
wget http://librarian.launchpad.net/7477840/apache2-ssl.tar.gz


--2015-11-26 19:40:00--  http://librarian.launchpad.net/7477840/apache2-ssl.tar.gz
Resolviendo librarian.launchpad.net (librarian.launchpad.net)... 91.189.89.225, 91.189.89.224
Conectando con librarian.launchpad.net (librarian.launchpad.net)[91.189.89.225]:80... conectado.
Petición HTTP enviada, esperando respuesta... 301 Moved Permanently
Ubicación: https://launchpadlibrarian.net/7477840/apache2-ssl.tar.gz [siguiente]
--2015-11-26 19:40:05--  https://launchpadlibrarian.net/7477840/apache2-ssl.tar.gz
Resolviendo launchpadlibrarian.net (launchpadlibrarian.net)... 91.189.89.228, 91.189.89.229
Conectando con launchpadlibrarian.net (launchpadlibrarian.net)[91.189.89.228]:443... conectado.
Petición HTTP enviada, esperando respuesta... 200 OK
Longitud: 964 [application/x-tar]
Grabando a: “apache2-ssl.tar.gz.1”

100%[======================================>] 964         --.-K/s   en 0s     

2015-11-26 19:40:10 (2,18 MB/s) - “apache2-ssl.tar.gz.1” guardado [964/964]

Descomprimir el fichero descargado.
tar xzvf apache2-ssl.tar.gz
apache2-ssl-certificate
ssleay.cnf

sudo cp ssleay.cnf  /usr/share/apache2/

sudo cp apache2-ssl-certificate /usr/sbin



sudo mkdir /etc/apache2/ssl


sudo apache2-ssl-certificate

creating selfsigned certificate
replace it with one signed by a certification authority (CA)

enter your ServerName at the Common Name prompt

If you want your certificate to expire after x days call this programm
with -days x
Generating a 1024 bit RSA private key
................++++++
.....++++++
writing new private key to '/etc/apache2/ssl/apache.pem'
-----
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [GB]:ES
State or Province Name (full name) [Some-State]:Cantabria
Locality Name (eg, city) []:Camargo
Organization Name (eg, company; recommended) []:IES
Organizational Unit Name (eg, section) []:VC
server name (eg. ssl.domain.tld; required!!!) []:ai1pc100
Email Address []:sersmr1516@gmail.com

Instalar el certificado:

/etc/apache2/ssl$ sudo mkdir miCA

/etc/apache2/ssl$ sudo mkdir miCA/private


/etc/apache2/ssl$ sudo cp apache.pem miCA/private/cakey.pem

/etc/apache2/ssl$ sudo cp apache.pem miCA/cacert.pem


sudo gedit miCA/serial
01

Certificados para Webmin


 Existing virtual hosts
Servidor Virtual Maneja el servidor basado en nombre en la dirección *.
Dirección Cualquiera
Puerto 443
Nombre del Servidor Automático
Raíz para Documentos /var/www/ssl/htdocs


Imágenes integradas 4

Opciones SSL

Imágenes integradas 5
Comprobación del funcionamiento:

https://localhost
Imágenes integradas 6

Apache Virtual Host en Ubuntu 14.04 LTS 64 bits.

Cómo configurar Apache Virtual Host en Ubuntu 14.04 LTS 64 bits.

Requisitos previos:
    sudo apt-get update

    sudo apt-get upgrade

    sudo apt-get install apache2

1. Crear estructura de directorios

    sudo mkdir -p /var/www/sol100virtual/public_
html
    sudo mkdir -p /var/www/luna100virtual/public_html

2. Concediendo permisos al usuario

ls -al /var/www/
drwxr-xr-x  3 root   root   4096 nov 24 23:01 luna100virtual
drwxr-xr-x  3 root   root   4096 nov 24 23:01 sol100virtual

sudo chown -R $USER:$USER /var/www/sol100virtual/public_html
sudo chown -R $USER:$USER /var/www/luna100virtual/public_html

ls -al /var/www/sol100virtual
drwxr-xr-x 2 profes profes 4096 nov 24 23:01 public_html

ls -al /var/www/luna100virtual
drwxr-xr-x 2 profes profes 4096 nov 24 23:01 public_html

sudo chmod -R 755 /var/www

sudo gedit /etc/apache2/apache2.conf

<Directory /var/www/>
    Options Indexes FollowSymLinks
    AllowOverride None
    Require all granted
</Directory>

<Directory /var/www/sol100virtual/public_html>
    Options Indexes FollowSymLinks
    AllowOverride None
    Require all granted
</Directory>

<Directory /var/www/luna100virtual/public_html>
    Options Indexes FollowSymLinks
    AllowOverride None
    Require all granted
</Directory>


3. creando páginas index.html en los servidores virtuales.
gedit /var/www/sol100virtual/public_html/index.html


<html>
  <head>
    <title>Bienvenido virtualhost sol100!</title>
  </head>
  <body>
    <h1>Sol100 virtual host está trabajando!</h1>
  </body>
</html>

gedit /var/www/luna100virtual/public_html/index.html

<html>
  <head>
    <title>Bienvenido virtualhost luna100!</title>
  </head>
  <body>
    <h1>Luna100 virtual host está trabajando!</h1>
  </body>
</html>

4.  Creando ficheros de los nuevos Virtual Host

sudo cp /etc/apache2/sites-available/000-default.conf /etc/apache2/sites-available/sol100virtual.conf

sudo gedit /etc/apache2/sites-available/sol100virtual.conf

<VirtualHost *:80>
    ServerAdmin admin@sol100virtual.com
        ServerName sol100virtual.com
        ServerAlias www.sol100virtual.com
    DocumentRoot /var/www/sol100virtual/public_html
    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

sudo cp /etc/apache2/sites-available/sol100virtual.conf /etc/apache2/sites-available/luna100virtual.conf

sudo gedit /etc/apache2/sites-available/luna100virtual.conf

<VirtualHost *:80>
    ServerAdmin admin@luna100virtual.com
        ServerName luna100virtual.com
        ServerAlias www.luna100virtual.com
    DocumentRoot /var/www/luna100virtual/public_html
    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

5. Activando los ficheros de los nuevos Virtual Host

sudo a2ensite sol100virtual.conf
Enabling site sol100virtual.
To activate the new configuration, you need to run:
  service apache2 reload

sudo a2ensite luna100virtual.conf
Enabling site luna100virtual.
To activate the new configuration, you need to run:
  service apache2 reload

6. Actualizando /etc/hosts dominios e IPs

sudo gedit /etc/hosts

127.0.0.1    localhost
127.0.1.1    ai1pc100
192.168.1.100    ai1pc100

192.168.1.100    sol100virtual.com
192.168.1.100    luna100virtual.com

# The following lines are desirable for IPv6 capable hosts
::1     ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters

7. Probando resultados con el navegador
http://sol100virtual.com
http://luna100virtual.com

Host virtual desde consola

Permisos
sudo chmod -R 777 /var/www

Crear un fichero de nombre fqdn (Fully Qualified Domain Name)
sudo gedit  /etc/apache2/conf-available/fqdn.conf
ServerName localhost
o
ServerName 127.0.0.1

Creación de los directorio para cada sitio virtual
~$ sudo mkdir /var/www/sol100virtual
~$ sudo mkdir /var/www/luna100virtual

Creación y edición de las páginas índice de inicio.
~$ sudo touch /var/www/sol100virtual/index.html
~$ sudo touch /var/www/luna100virtual/index.html

~$ sudo echo "Bienvenid@s al sitio virtual SOL" > /var/www/sol100virtual/index.html
~$ sudo echo "Bienvenid@s al sitio virtual LUNA" > /var/www/luna100virtual/index.html


Creando sitios disponibles y habilitándolos.
~$ sudo touch /etc/apache2/sites-available/sol
~$ sudo touch /etc/apache2/sites-available/luna
~$ sudo gedit /etc/apache2/sites-available/sol

<VirtualHost *:80>
    ServerAdmin webmaster@localhost
    DocumentRoot /var/www/solvirtual
    ServerName www.sol100virtual.com
    ErrorLog /var/log/apache2/error.log
</VirtualHost>

~$ sudo gedit /etc/apache2/sites-available/luna

<VirtualHost *:80>
    ServerAdmin webmaster@localhost
    DocumentRoot /var/www/lunavirtual
    ServerName www.luna100virtual.com
    ErrorLog /var/log/apache2/error.log
</VirtualHost>

ServerAdmin: indica la dirección de correo electrónico del administrador de este dominio
DocumentRoot: Indica la ubicación de los archivos de este dominio
ServerName: Nos indica el dominio de este VirtualHost
ErrorLog: Nos permite especificar un archivo de log especial para este dominio en caso de no desearlo así dejamos el default.


~$ sudo ln -s /etc/apache2/sites-available/sol /etc/apache2/sites-enabled/sol
~$ sudo ln -s /etc/apache2/sites-available/luna /etc/apache2/sites-enabled/luna



Asignación de IP y URL virtual. En DNS o fichero /etc/hosts

 sudo gedit /etc/hosts
127.0.0.1    localhost
127.0.1.1    profe02-laptop

192.168.1.100   www.sol100virtual.com
192.168.1.100    www.luna100virtual.com


Reiniciamos el apache mediante comando:
sudo service apache2 restart

Probando en el navegador:
http://www.sol100virtual.com/
http://www.luna100virtual.com/

TEMA 4 - UserDir desde consola o terminal. Apache2 HTTP

Cada usuario tiene su sitio web en su carpeta personal public_html

Ir a la carpeta de configuración de Apache
profes@ai1pc100:~$ cd /etc/apache2

profes@ai1pc100:/etc/apache2$ ls

apache2.conf  envvars     magic           mods-enabled  sites-available
conf.d        httpd.conf  mods-available  ports.conf    sites-enabled

apache2.conf es el archivo de configuración de apache,
conf.d es un directorio con configuraciones también,
httpd.conf  para que el administrador del sistema agregue sus configuraciones.

mods-enabled y mods-available contienen los módulos disponibles y los que se cargan (Estas dos carpetas son con las que vamos a trabajar),

sites-available y sites-enabled, sitios disponibles y activados, cumplen una función similar a las carpetas de los mods o modulos,

envvars son variables de entorno
ports.conf es de puertos


cd /etc/apache2/mods-available

ls userdir*


userdir.conf  userdir.load

estos archivos del módulo están disponibles pero no activados, para activarlos debemos meternos dentro del directorio mods-enabled y crear enlaces simbólicos hacia estos dos archivos.

cd /etc/apache2/mods-enabled
profes@ai1pc100:/etc/apache2/
mods-enabled$ ls userdir*

ls: no se puede acceder a userdir*: No existe el archivo o directorio

crea un enlace simbólico (ln  -s)
(¡atención después del asterisco: espacio punto (directorio actual) !)

profes@ai1pc100:/etc/apache2/mods-enabled$ sudo ln -s /etc/apache2/mods-available/userdir* .
profes@ai1pc100:/etc/apache2/mods-enabled$ ls userdir*
userdir.conf  userdir.load

ls -la userdir*

sudo service apache2 restart

sudo /etc/init.d/apache2 restart

En el directorio home o carpeta de usuario y creamos una carpeta llamada public_html, es ahí donde guardamos nuestros archivos web, vamos a crear una página sencilla con el nombre de index.html en esa carpeta.

Lo siguiente es abrir nuestro navegador de internet y en la barra de direcciones poner lo siguiente: http://localhost/~profes/
el carácter virgulilla ~ indica la ruta de la carpeta home

TEMA 4 Servicio HTTP. Casos prácticos.

Caso práctico 1
Puertos utilizados por el protocolo  HTTP

cat /etc/services | grep http
type C:\WINDOWS\system32\drivers\etc\services

Caso práctico 2
Métodos y mensajes del esquema de una comunicación

telnet www.apache.org 80
HEAD /

telnet www.w3.org 80

Caso práctico 3
Tipos MIME en las cabeceras HTTP
En el navegador 'Ver código fuente'
En el cliente de correo electrónico, ver las cabeceras completas del mensaje.

Favicon de una página web
http://es.wikipedia.org/wiki/Favicon
http://www.iesvalledecamargo.org/

cat /etc/mime.types | grep http


Caso práctico 4
Instalación del servidor web Apache 2 (Ubuntu GNU/Linux)
Centro de Software de Ubuntu

apache2 -v
<h1>Bienvenidos al servidor Apache 2</h1>
<h2>Servicios en Red</h2>
<h3>AI1PC100</h3>
<h4>profes</h4>

Caso práctico 5
Utilizacoón de módulos Apache2
sudo gedit /etc/apache2/mods-available/userdir.load

LoadModule userdir_module /usr/lib/apache2/modules/mod_userdir.so

sudo gedit /etc/apache2/mods-available/userdir.conf

/home/alumno101/public_html
http://localhost/~alumno101
/var/www/ejemplo/.htaccess
AddType text/ejemplo .eje
o
/etc/apache2/sites-available/default

Caso práctico 6
Utilización de hosts virtuales en Apache2

sudo gedit /etc/apache2/mods-available/userdir.conf
/var/www/virtualA
virtualA.aulaI1.com

Caso práctico 7
Autenticación básica en Apache2
/var/www/directorio_protegido
módulo auth_basic

Caso práctico 8
Firefox y certificado digital en Windows