Autor: Fco Javier Mejías Fernández
FTP y SSH
2013
[Status]
Fco Javier Mejías Fernández 2
-FTP y SSH -
FTP y SSH
Índice FTP ........................................................................................................................................................................ 3
Instalación y configuración del servicio FTP en Linux con VSFTPD. ................................................................. 3
Cliente FTP ........................................................................................................................................................ 4
Configuración segura de FTP ............................................................................................................................ 6
Instalación y configuración de un servidor NAS con OPENMEDIAVAULT ........................................................ 9
Configuración de un sistema RAID 1 ..............................................................................................................10
Crear usuario grupos y carpetas compartidas. ...............................................................................................12
Configuración del servicio FTP (tanto sin certificado como con certificado) .................................................14
SSH ......................................................................................................................................................................17
Instalación y configuración del servicio SSH ...................................................................................................17
Cliente SSH ......................................................................................................................................................17
Creación de túneles SSH .................................................................................................................................18
Fco Javier Mejías Fernández 3
-FTP y SSH -
FTP
Instalación y configuración del servicio FTP en Linux con VSFTPD. -Configuramos la red como adaptador puente:
-Una vez iniciado el sistema procedemos a la instalación del servicio FTP, para ello utilizamos el
siguiente comando:
apt-get install vsftpd
-Para iniciar FTP utilizamos el siguiente comando, con el comando ps comprobamos que está en
proceso:
service vsftpd start
ps aux|grep ftp
-Para poder configurar FTP, tenemos el fichero de configuración /etc/vsftpd.conf, en el podemos
habilitar o deshabilitar las directivas, en las que podemos encontrar las siguientes. Cada vez que
cambiemos una directiva tendremos que reiniciar el servicio que lo haremos con este comando:
service vsftpd restart
Para poder conectarnos al servidor con usuarios del sistema y poder escribir,
descomentamos las siguientes líneas.
Fco Javier Mejías Fernández 4
-FTP y SSH -
Para permitir que los usuarios anónimos se conecten, pueden ser anonymous o ftp y sin
contraseña. Por defecto esta activada, en caso de que no queramos poner NO:
Para que los usuarios puedan ver solo su directorio personal y no el de los demás usuarios, esto lo
hacemos por motivos de seguridad, en ese caso descomentamos la siguiente directiva :
Para cambiar el mensaje de bienvenida, que será mostrado al usuario cuando se conecte. El
comentario lo introducimos después del igual. Para ello descometamos la siguiente directiva:
Para enjaular a usuario, esto significa que los usuarios que metamos en la carpeta descrita en esa
directiva puedan ver las carpetas personales de los demás usuarios. Para ello tendremos que realizar
lo siguiente:
La el fichero que asignamos en la directiva chroot_list_file tendremos que crearlo, al fichero lo podemos
llamar de la forma que queramos siempre y cuando en la directiva se llame de la misma manera, en este
caso sería:
nano /etc/vsftpd.chroot_list
Cliente FTP
Primero creamos un usuario:
adduser usuario
Posteriormente nos conectamos y nos dirigimos al directorio personal del usuario:
su usuario
Fco Javier Mejías Fernández 5
-FTP y SSH -
Luego para mostrar un ejemplo creamos una carpeta en el directorio personal del usuario:
mkdir ejemploFTP
Una vez credo el usuario y la carpeta, haremos la comprobación mediante un cliente, en este caso
será FileZilla, para ello tenemos que saber la IP del servidor FTP, el nombre del usuario y la
contraseña. Realizándolo de esta manera:
Ahora podemos también meter contenido en la carpeta ejemploFTP,un ejemplo para ello es desde el
servidor FTP crear un fichero:
nano /home/usuario/ejemploFTP/ejemplo.txt
Posteriormente no dirigimos al fileZilla, para comprbar si en el contenido de la carpeta ejemplo se
crea el fichero:
Fco Javier Mejías Fernández 6
-FTP y SSH -
También podemos pasar contenido desde nuestra maquina al servidor FTP, lo haremos desde
FileZilla de esta manera y estando conectado en la cuenta mejias. Para ello solo tendremos que
arrastrar el contenido hacia la carpeta creada:
Luego comprobamos en el servidor que sea realizado bien la transferencia del archivo:
Configuración segura de FTP Como estamos en un equipo Windows para que nos sea mas fácil la copia de los comandos de esta
parte de la práctica la realizaremos desde el Putty, para ello tendremos que instalar SSH en el
servidor FTP. Lo realizaremos siguiendo los siguientes pasos:
En el servidor FTP:
apt-get install ssh
Una vez instalado SSH iniciamos el Putty y metemos la IP del servidor FTP, de esta manera:
Luego pulsamos en open, y nos pedirá el usuario y la contraseña:
Fco Javier Mejías Fernández 7
-FTP y SSH -
Una vez conectados pasamos a instalar el siguiente comando, ya que OpenSSL es necesario para TLS:
apt-get install vsftpd openssl
Para utilizar TLS, debemos crear una carpeta private donde también le daremos unos permisos,
con los siguientes comando:
mkdir -p /etc/ssl/private
chmod 700 /etc/ssl/private
Después generamos el certificado SSL, de la siguiente manera:
openssl req -x509 -nodes -days 365 -newkey rsa:1024 -keyout /etc/ssl/private/vsftpd.pem -out /etc/ssl/private/vsftpd.pem
Luego nos pedirá la siguiente información, que tendremos que rellenar:
Nombre del país (código de 2 letras) [AU]: <- Introduce el nombre del país (por ejemplo, "DE").
Estado o Provincia Nombre (nombre y apellidos) [Some-Estado]: <- Ingrese tu Estado o
Nombre Provincia.
Nonbre de la localidad: <- Ingrese tu localidad
Nombre de la organización <- Introduce el nombre de la organización (por ejemplo, el nombre de su
empresa).
Nombre de la organización de la unidad <- Ingrese su nombre Unidad administrativa (por ejemplo,
"Departamento de IT").
Nombre común: <- Introduzca el nombre de dominio completo del sistema (por ejemplo,
"server1.example.com").
Dirección de correo electrónico: <- Introduce tu correo electrónico.
Para habilitar TLS habrá que añadir las siguientes directivas en el fichero vsftpd.conf:
nano /etc/vsftpd.conf
# Turn on SSL
ssl_enable=YES
# Allow anonymous users to use secured SSL connections
allow_anon_ssl=YES
# All non-anonymous logins are forced to use a secure SSL
connection in order to
# send and receive data on data connections.
force_local_data_ssl=YES
Fco Javier Mejías Fernández 8
-FTP y SSH -
# All non-anonymous logins are forced to use a secure SSL
connection in order to send the password.
force_local_logins_ssl=YES
# Permit TLS v1 protocol connections. TLS v1 connections are
preferred
ssl_tlsv1=YES
# Permit SSL v2 protocol connections. TLS v1 connections are
preferred
ssl_sslv2=NO
# permit SSL v3 protocol connections. TLS v1 connections are
preferred
ssl_sslv3=NO
# Disable SSL session reuse (required by WinSCP)
require_ssl_reuse=NO
# Select which SSL ciphers vsftpd will allow for encrypted SSL
connections (required by FileZilla)
ssl_ciphers=HIGH
Luego reiniciamos el servicio:
Service vsftpd restart
Posteriormente nos vamos al FleZilla para comprobar que ha creado el certificado, donde nos
tendremos que conectar mediante un gestor de sitio, con un cifrado sobre TLS, tendremos que
poner la IP del servidor FTP y el usuario y contraseña creado en el certificado SSL:
Luego solo tendremos que aceptar el certificado:
Fco Javier Mejías Fernández 9
-FTP y SSH -
Instalación y configuración de un servidor NAS con OPENMEDIAVAULT Para ello necesitamos una maquina con el openmediavaultinstalado, en este caso utilizaremos un
debian.
Luego para poder conectar openmediavaultinstalado mediante la web, tenemos que introducir la IP
der servidor debian.
Posteriormente nos aparecerá un login, donde pondremos usuario:admin y
contraseña:openmediavault:
Fco Javier Mejías Fernández 10
-FTP y SSH -
Configuración de un sistema RAID 1 Para poder realizar esta práctica tenemos que agregar dos disco sata a la máquina virtual, lo
realizamos de la siguiente manera:
Seleccionamos nuevo disco, y lo configuramos:
Quedando así:
Una vez tenemos dos disco en la máquina, nos dirigimos al openmediavaultinstalado, y
seleccionamos la opción Gestión de RAID, y luego en crear:
Fco Javier Mejías Fernández 11
-FTP y SSH -
Luego ponemos nivel espejo, y seleccionamos los discos:
Una vez creado pasaremos a montar, que lo haremos de la siguiente manera, nos iremos a
sistema de archivos y pulsaremos en crear:
Posteriormente en dispositivo seleccionamos el RAID creado y le damos un nombre:
Por último, lo seleccionamos y pulsamos en montar:
Fco Javier Mejías Fernández 12
-FTP y SSH -
Crear usuario grupos y carpetas compartidas. Para ello primero crearemos los usuarios, seleccionando la opción usuario y a la opción
añadir:
Metemos la información del usuario que vamos a crear, en este caso crearemos dos
usuarios:
Ahora creamos el grupo, para ello seleccionamos la opción grupo y añadir:
Fco Javier Mejías Fernández 13
-FTP y SSH -
Introducimos la información para crear el grupo y seleccionamos a los usuarios :
Una vez creado los usuarios y los grupos, crearemos la carpeta compartida, seleccionando la
opción carpeta compartida y añadir:
Luego ponemos la información, en volumen ponemos el RAID creado:
Fco Javier Mejías Fernández 14
-FTP y SSH -
Luego para darle los permisos a la carpeta, la seleccionamos la carpeta y pulsamos en
privilegios:
Y por último le podemos dar los permisos deseados:
Configuración del servicio FTP (tanto sin certificado como con certificado) Sin certificado : Para probar la práctica, primero tendremos que tener un usuario creado
posteriormente, en la pestaña FTP hacemos lo siguiente:
Fco Javier Mejías Fernández 15
-FTP y SSH -
Una vez finalizado esto desde FileZilla lo probamos, introduciendo la IP del servidor FTP , el
usuario y la contraseña:
Con certificado: Para ello nos vamos a la pestaña certificado y añadimos uno nuevo:
Y posteriormente introducimos la información:
Fco Javier Mejías Fernández 16
-FTP y SSH -
Una vez creado el certificado nos dirigimos a la pestaña FTP y ya dentro al SSL/TSL, y
añadamos el certificado y seleccionamos las siguientes pestañas:
Luego lo probamos mediante el fileZilla, siguiendo estos pasos:
Y aceptamos el certificado:
Fco Javier Mejías Fernández 17
-FTP y SSH -
SSH
Instalación y configuración del servicio SSH El comando de instalación de SSH es el siguiente:
apt-get install ssh
La dirección del fichero de configuración en SSH es el siguiente:
nano /etc/ssh/sshd_config
En el podemos configurar las siguientes cosas, como por ejemplo:
-Para asignar a una interface para que entren por ella las peticiones,Primero tener dos
interfaces en el PC. Posteriormente descomentamos la siguiente directiva:
- Para denegar el acceso a los uusrios root, poner No en la siguiente directiva:
-Para poder identificarnos con claves asimétricas:
Cliente SSH Primero creamos un usuario en el servidor SSH:
adduser usuario
Una vez creado el usuario nos conectamos por ejemplo desde putty, de esta manera:
-Primero metemos la ip del servidor SSH:
-Luego meter usuario creado y la contraseña:
Fco Javier Mejías Fernández 18
-FTP y SSH -
-Por último introducimos el siguiente comando para poder conectarnos:
ssh usuario@ip_servidor_ssh
-Luego nos pedirá la contraseña del usuario creado y nos conectaremos.
Creación de túneles SSH Primero nos iremos a un cliente_SSH que en este caso utilizaremos Ubuntu, y ejecutamos el
siguiente comando para crear tanto la contraseña pública como la privada:
ssh-keygen –t rsa
-El primer dato a rellenar es la dirección donde se guardara los dos ficheros.
-y luego la contraseña.
Luego nos creara dos ficheros que se lo debemos pasar al servidor_ssh, con el siguiente
comando. Este fichero se crea en el servidor_ssh en la carpeta:
nano /etc/.ssh/authorized_keys
-El comando que utilizamos en el cliente para pasar la clave pública al servidor es el
siguiente:
ssh-copy-id –i usuario_root_ssh@ip_servidor_ssh
Fco Javier Mejías Fernández 19
-FTP y SSH -
Por último para poder conectarnos desde el cliente poner el siguiente comando:
ssh root@ip_servidor_ssh
-luego en esta ventana tendremos que meter la clave que hemos creado en el certificado que será la
clave pública: