43
FTP Funcionamiento de FTP Funcionamiento de Cliente FTP Instalacion y Configuracion de Servidor VSFTPD VSFTPD + SSL

FTP Funcionamiento de FTP Funcionamiento de Cliente FTP Instalacion y Configuracion de Servidor VSFTPD VSFTPD + SSL

Embed Size (px)

Citation preview

Page 1: FTP Funcionamiento de FTP Funcionamiento de Cliente FTP Instalacion y Configuracion de Servidor VSFTPD VSFTPD + SSL

FTP

Funcionamiento de FTP Funcionamiento de Cliente FTP

Instalacion y Configuracion de Servidor VSFTPD VSFTPD + SSL

Page 2: FTP Funcionamiento de FTP Funcionamiento de Cliente FTP Instalacion y Configuracion de Servidor VSFTPD VSFTPD + SSL

FTP

FTP (FILE TRASFER PROTOCOL)

FTP es un programa que se utiliza para transferir información, almacenada en ficheros, de una

máquina remota a otra local, o viceversa (RFC 959). Para poder realizar esta operación es

necesario conocer la dirección IP (o el "nombre") de la máquina a la que nos queremos

conectar para realizar algún tipo de transferencia.

Al igual que HTTP, FTP se basa en el envío de comandos codificados mediante ASCII, es

decir, en texto plano.

Page 3: FTP Funcionamiento de FTP Funcionamiento de Cliente FTP Instalacion y Configuracion de Servidor VSFTPD VSFTPD + SSL

FTP

Esquema de funcionamientoEsquema de funcionamiento

FTP es un servicio orientado a conexión concurrente que funciona sobre dos puertos 21 para el

intercambio de comandos y 20 para los datos.

Page 4: FTP Funcionamiento de FTP Funcionamiento de Cliente FTP Instalacion y Configuracion de Servidor VSFTPD VSFTPD + SSL

FTP

Page 5: FTP Funcionamiento de FTP Funcionamiento de Cliente FTP Instalacion y Configuracion de Servidor VSFTPD VSFTPD + SSL

FTP

Los elementos que componen el sistema son los Los elementos que componen el sistema son los siguientes:siguientes:

Servidor FTP:Servidor FTP: Máquina a la que nos queremos conectar y que debe aceptar sesiones FTP.

Debe ser una máquina en la que esté activo el servicio FTP.

A su vez se compone de:A su vez se compone de:

Servidor PIServidor DTP

Page 6: FTP Funcionamiento de FTP Funcionamiento de Cliente FTP Instalacion y Configuracion de Servidor VSFTPD VSFTPD + SSL

FTP

Servidor PI (Protocol Interpreter): Servidor PI (Protocol Interpreter):

El intérprete de protocolo del servidor “escucha” en el puerto 21 los comandos que le envía el intérprete de protocolo del cliente y controla el proceso de transferencia de datos del servidor.

Page 7: FTP Funcionamiento de FTP Funcionamiento de Cliente FTP Instalacion y Configuracion de Servidor VSFTPD VSFTPD + SSL

FTP

Servidor DTP (Data Transfer Protocol):Servidor DTP (Data Transfer Protocol): El protocolo de transferencia de datos del servidor se

utiliza para transmitir los datos entre el servidor y el protocolo de transferencia de datos del cliente. Puede estar en modo “pasivo” a la escucha de conexiones en el puerto 20 de datos.

Page 8: FTP Funcionamiento de FTP Funcionamiento de Cliente FTP Instalacion y Configuracion de Servidor VSFTPD VSFTPD + SSL

FTP

Cliente FTP:Cliente FTP:

Máquina con la que nos conectamos al servidor FTP. Está compuesta por los siguientes elementos:

Interfaz de UsuarioCliente IP

Cliente DTP

Page 9: FTP Funcionamiento de FTP Funcionamiento de Cliente FTP Instalacion y Configuracion de Servidor VSFTPD VSFTPD + SSL

FTP

Interfaz de usuario:Interfaz de usuario:

CConjunto de comandos de “alto nivel” que el usuario puede memorizar más fácilmente que los comandos FTP que se envían entrecliente y servidor.

Page 10: FTP Funcionamiento de FTP Funcionamiento de Cliente FTP Instalacion y Configuracion de Servidor VSFTPD VSFTPD + SSL

FTP

Cliente PI:Cliente PI:

El intérprete de protocolo de usuario inicia el control de la conexión a través del puerto 21 con el servidor FTP, envía los comandos FTP una vez codificados por la interfaz de usuario y los envía al intérprete de protocolo del servidor, y controla el proceso de transferencia de los archivos (DTP).

Page 11: FTP Funcionamiento de FTP Funcionamiento de Cliente FTP Instalacion y Configuracion de Servidor VSFTPD VSFTPD + SSL

FTP

Cliente DTP: Cliente DTP:

El proceso de transferencia de datos “escucha” el puerto de datos (20) aceptando conexiones para la transferencia de ficheros.

Page 12: FTP Funcionamiento de FTP Funcionamiento de Cliente FTP Instalacion y Configuracion de Servidor VSFTPD VSFTPD + SSL

FTP

En el modelo descrito en la figura anterior, el PI del cliente inicia la conexión TCP por el puerto 21. Al iniciarse, se envían los comandos mediante dicho PI al PI del servidor y si éste acepta la conexión, solicita una identificación al usuario, pudiéndose realizar un acceso anónimo (no aceptado por todos los servidores). Cuando se solicita un archivo del servidor, se establece una conexión TCP por el puerto 20 para entre el DTP del cliente y el servidor para la transmisión de datos.

Page 13: FTP Funcionamiento de FTP Funcionamiento de Cliente FTP Instalacion y Configuracion de Servidor VSFTPD VSFTPD + SSL

FTP

Modos de conexión del cliente FTP

FTP admite dos modos de conexión del cliente.Estos modos se denominan activo (o Estándar, o PORT, debido a

que el cliente envía comandos tipo PORT al servidor por el canal de control al establecer la conexión) y pasivo (o PASV, porque en este caso envía comandos tipo PASV).

Tanto en el modo Activo como en el modo Pasivo, el cliente establece una conexión con el servidor mediante el puerto 21, que establece el canal de control.

Page 14: FTP Funcionamiento de FTP Funcionamiento de Cliente FTP Instalacion y Configuracion de Servidor VSFTPD VSFTPD + SSL

FTP

Page 15: FTP Funcionamiento de FTP Funcionamiento de Cliente FTP Instalacion y Configuracion de Servidor VSFTPD VSFTPD + SSL

FTP

Page 16: FTP Funcionamiento de FTP Funcionamiento de Cliente FTP Instalacion y Configuracion de Servidor VSFTPD VSFTPD + SSL

FTP

Conectarse al servidor de FTPConectarse al servidor de FTP

[restauracion@/home/crond1 $] ftp www.cabresto.com.arConnected to www.cabresto.com.ar (46.105.246.169).

220 Welcome to blah FTP service.Name (www.cabresto.com.ar:crond1): ubftp

331 Please specify the password.Password:

230 Login successful.Remote system type is UNIX.

Using binary mode to transfer files.ftp>

Page 17: FTP Funcionamiento de FTP Funcionamiento de Cliente FTP Instalacion y Configuracion de Servidor VSFTPD VSFTPD + SSL

FTP

FTP posee varios comandos para obtener ayuda de FTP posee varios comandos para obtener ayuda de cómo utilizarlo.cómo utilizarlo.

Page 18: FTP Funcionamiento de FTP Funcionamiento de Cliente FTP Instalacion y Configuracion de Servidor VSFTPD VSFTPD + SSL

FTP

Desconectarse servidor de FTPDesconectarse servidor de FTP

Para salir de una sesión de FTP, se pueden utilizar los siguientes comandos:

close: termina la sesión de FTP, pero no sale del programa.

bye o quit: termina la sesión de FTP y sale del programa.

Page 19: FTP Funcionamiento de FTP Funcionamiento de Cliente FTP Instalacion y Configuracion de Servidor VSFTPD VSFTPD + SSL

FTP Archivos y directoriosArchivos y directorios

A continuación se da una relación de comandos del A continuación se da una relación de comandos del FTP referentes al manejo de archivos yFTP referentes al manejo de archivos y

directorios.directorios.

Page 20: FTP Funcionamiento de FTP Funcionamiento de Cliente FTP Instalacion y Configuracion de Servidor VSFTPD VSFTPD + SSL

FTP Transferencia de informaciónTransferencia de información

Con FTP se puede realizar la transferencia de información en Con FTP se puede realizar la transferencia de información en dos formatos diferentes: dos formatos diferentes: ascii y binarioascii y binario. Por defecto, la . Por defecto, la transferencia se hace en transferencia se hace en modo ascii.modo ascii.

Page 21: FTP Funcionamiento de FTP Funcionamiento de Cliente FTP Instalacion y Configuracion de Servidor VSFTPD VSFTPD + SSL

FTP

Clientes:Clientes:

Existen diferentes clients de ftp por linea de Existen diferentes clients de ftp por linea de comando:comando:

Ftp, lftp,sftp,gftp,ncftp

Existen diferentes clientes de ftp por grafica:Existen diferentes clientes de ftp por grafica:

filezillafilezilla

Page 22: FTP Funcionamiento de FTP Funcionamiento de Cliente FTP Instalacion y Configuracion de Servidor VSFTPD VSFTPD + SSL

FTP

Instalando Servidor FTP Instalando Servidor FTP

Page 23: FTP Funcionamiento de FTP Funcionamiento de Cliente FTP Instalacion y Configuracion de Servidor VSFTPD VSFTPD + SSL

VSFTPD

FeaturesFeaturesVirtual IP configurationsVirtual IP configurationsVirtual usersVirtual usersStandalone or inetd operationStandalone or inetd operationPowerful per-user configurabilityPowerful per-user configurabilityBandwidth throttlingBandwidth throttlingPer-source-IP configurabilityPer-source-IP configurabilityPer-source-IP limitsPer-source-IP limitsIPv6IPv6Encryption support through SSL integrationEncryption support through SSL integrationetc...etc...

Page 24: FTP Funcionamiento de FTP Funcionamiento de Cliente FTP Instalacion y Configuracion de Servidor VSFTPD VSFTPD + SSL

VSFTPD

Documentacion:Documentacion:

Opciones BooleanasOpciones NumericasOpciones de Strings

Page 25: FTP Funcionamiento de FTP Funcionamiento de Cliente FTP Instalacion y Configuracion de Servidor VSFTPD VSFTPD + SSL

VSFTPD

Archivo de Configuracion:Archivo de Configuracion:/etc/vsftpd/vsftpd.conf

Page 26: FTP Funcionamiento de FTP Funcionamiento de Cliente FTP Instalacion y Configuracion de Servidor VSFTPD VSFTPD + SSL

VSFTPD

Usuarios Anonimos:Usuarios Anonimos:

Una forma de utilizar este tipo de servicio es de forma anónima, permitiendo el uso para subir o bajar archivos de el utilizando como autenticacion el usuario anonymous y como password una dirección de email.

Page 27: FTP Funcionamiento de FTP Funcionamiento de Cliente FTP Instalacion y Configuracion de Servidor VSFTPD VSFTPD + SSL

VSFTPD

Por defecto viene configurado el usuario ftp como anonymous

[root@jmr1 vsftpd]# cat /etc/passwd| grep ftp [root@jmr1 vsftpd]# cat /etc/passwd| grep ftp ftp:x:14:50:FTP User:/var/ftp:/sbin/nologinftp:x:14:50:FTP User:/var/ftp:/sbin/nologin

Page 28: FTP Funcionamiento de FTP Funcionamiento de Cliente FTP Instalacion y Configuracion de Servidor VSFTPD VSFTPD + SSL

VSFTPD

Parametros para Anonymous

Anonymous_enable=nofpt_username=user

no_anon_password=YESdeny_email_enable=YES

banned_email_file=/etc/vsftpd/banned_emails

Page 29: FTP Funcionamiento de FTP Funcionamiento de Cliente FTP Instalacion y Configuracion de Servidor VSFTPD VSFTPD + SSL

VSFTPD

Escritura Anonymous

anon_upload_enable=YESchown_upload_mode=0600 (default)

anon_umas=077 (default)chown_uploads=YES

Chown_username=adecidiranon_mkdir_write_enable=YES

nopriv_user=ftpsecureanon_umask=077 (default)

ascii_download_enable=NO(default)ascii_upload_enable=NO(default)

Page 30: FTP Funcionamiento de FTP Funcionamiento de Cliente FTP Instalacion y Configuracion de Servidor VSFTPD VSFTPD + SSL

VSFTPD

Escritura en Gralwrite_enable=YESlocal_umask=022

file_open_mode=0770

Page 31: FTP Funcionamiento de FTP Funcionamiento de Cliente FTP Instalacion y Configuracion de Servidor VSFTPD VSFTPD + SSL

VSFTPD

Habilitar Usuarios Locales

local_enable=YES

Solo acceden los que no estan en el archivouserlist_enable=YES(default)userlist_file=archivo(user_list)

Solo acceden los que estan en la listauserlist_deny=YES(default)usa archivouserlist_deny=YES(default)usa archivo

Page 32: FTP Funcionamiento de FTP Funcionamiento de Cliente FTP Instalacion y Configuracion de Servidor VSFTPD VSFTPD + SSL

VSFTPD

Enjaunlado Usuarios

chroot_list_enable=YESchroot_local_user=YESchroot_list_file=archivo

Page 33: FTP Funcionamiento de FTP Funcionamiento de Cliente FTP Instalacion y Configuracion de Servidor VSFTPD VSFTPD + SSL

VSFTPD

Mensajes

dirmessage_enable=YESmessage_file=.message(default)

banner_file=archivoftpd_banner=string con datos

Page 34: FTP Funcionamiento de FTP Funcionamiento de Cliente FTP Instalacion y Configuracion de Servidor VSFTPD VSFTPD + SSL

VSFTPD

DISPLAY

hide_idshide_ids=NOuse_localtime=NO(default)ls,mls usa UTC

ls_recurse_enable=NO(default)

Page 35: FTP Funcionamiento de FTP Funcionamiento de Cliente FTP Instalacion y Configuracion de Servidor VSFTPD VSFTPD + SSL

VSFTPD

LOGS

syslog_enable=YESlog_ftp_protocol=YES

xferlog_enable=YES (default)xferlog_std_format=YES(default)

xferlog_file=/var/log/vsftpd.log

Page 36: FTP Funcionamiento de FTP Funcionamiento de Cliente FTP Instalacion y Configuracion de Servidor VSFTPD VSFTPD + SSL

VSFTPD

Valores de Conexion

listen=NO(default)sten=NO(default)listen_address=iplisten_address=ip

listen_port=21(default)listen_port=21(default)max_clients=0(default,sin limite)max_clients=0(default,sin limite)max_per_ip=0(default,sin limite)max_per_ip=0(default,sin limite)

Page 37: FTP Funcionamiento de FTP Funcionamiento de Cliente FTP Instalacion y Configuracion de Servidor VSFTPD VSFTPD + SSL

VSFTPD

Timeouts

accept_timeout=60(default,tiempo espera pasv)connect_timeout=60(default, tiempo espera port)data_connection_timeout=300(default, stalled )

idle_session_timeout=300(default)local_max_rate=0(default,transferencia)

anon_max_rate=0(default)

Page 38: FTP Funcionamiento de FTP Funcionamiento de Cliente FTP Instalacion y Configuracion de Servidor VSFTPD VSFTPD + SSL

VSFTPD

OtrosOtros

user_config_dir=/etc/vsftpd/user_conf pam_service_name=vsftpd(default)

tcp_wrapper=YES(default)

Page 39: FTP Funcionamiento de FTP Funcionamiento de Cliente FTP Instalacion y Configuracion de Servidor VSFTPD VSFTPD + SSL

VSFTPD

Timeouts

accept_timeout=60(default,tiempo espera pasv)connect_timeout=60(default, tiempo espera port)data_connection_timeout=300(default, stalled )

idle_session_timeout=300(default)local_max_rate=0(default,transferencia)

anon_max_rate=0(default)

Page 40: FTP Funcionamiento de FTP Funcionamiento de Cliente FTP Instalacion y Configuracion de Servidor VSFTPD VSFTPD + SSL

VSFTPD

Ejecutar dos FTP en distintas ip's

Crear otro archivo de configuracionEjecutar el binario pasandole la ruta del archivo

de configuracion

Page 41: FTP Funcionamiento de FTP Funcionamiento de Cliente FTP Instalacion y Configuracion de Servidor VSFTPD VSFTPD + SSL

VSFTPD + SSL

Creacion de Certificados

Page 42: FTP Funcionamiento de FTP Funcionamiento de Cliente FTP Instalacion y Configuracion de Servidor VSFTPD VSFTPD + SSL

VSFTPD + SSL

[root@jmr1 vsftpd]# cd /etc/pki/tls/certs

[root@jmr1 certs]# openssl req -x509 -nodes -newkey rsa:1024 -keyout /etc/pki/tls/certs/vsftpd.pem -out /etc/pki/tls/certs/vsftpd.pem

[root@jmr1 certs]# chmod 600 vsftpd.pemAgregar lo siguiente en /etc/vsftpd/vsftpd.conf

rsa_cert_file=/etc/pki/tls/certs/vsftpd.pemssl_enable=YES

force_local_data_ssl=YES force_local_logins_ssl=YES

Reiniciar --> /etc/rc.d/init.d/vsftpd restart