Está en la página 1de 10

Manual de Configuracin de FTP

MANUAL DE CONFIGURACION DE UN SERVIDOR FTP EN CENTOS

Autor: Roger Armando Contreras Corrales ( Fecha: 15 de Enero del 2011)

Pgina 1 / 10

Manual de Configuracin de FTP

ndice de contenido
1.Introduccin:.....................................................................................................................................3 2.Instalacin y configuracin..............................................................................................................5 3.Definir que mquinas pueden establecer una conexin con el servicio FTP:..................................7 4.Utilizacin de certificados de seguridad:.........................................................................................8 5.Conexin al servidor FTP :.............................................................................................................10

Pgina 2 / 10

Manual de Configuracin de FTP

CONFIGURACIN DEL SERVIDOR FTP

1. Introduccin:
Antes de proceder con la configuracin de nuestro servidor FTP, vamos a suponer que tenemos un servidor Web, el cual lo hemos configurado para alojar dos sitios: uno que es el portal web de nuestra institucin y el otro la intranet. Dada la situacin anterior, sera adecuado disponer de un servidor FTP en la cual existan dos usuarios autorizados para publicar archivos en estos dos sitios Web, el esquema de esta solucin sera similar al siguiente:

Nombre de Usuario intranet webmaster

Sitio Web Intranet Institucional Portal Web institucional

Carpeta de Acceso /var/www/intranet /var/www/web

De acuerdo al esquema, vamos a necesitar dos usuarios, uno que sirve para publicar archivos en la Intranet, y otros para publicar en el portal Web de la institucin. Para implementar el servicio FTP haremos uso de VSFTP. Podemos obtener mas informacin de VSFTP en la siguiente URL: http://vsftpd.beasts.org/ Para instalar VSFTP se ha hecho uso de la versin en RPM que viene en el disco DVD de CentOS 5.5. Si se tiene tal disco, se puede proceder a insertarlo en nuestro lector de DVD y ejecutar la siguientes rdenes para tenerlo montado en la carpeta /mnt/disco :
# cd / # mkdir -p /mnt/disco # mount -t iso9660 /dev/cdrom /mnt/disco/

Con las rdenes anteriores si nos dirigimos al directorio /mnt/disco ya debemos tener acceso al disco de CentOS.

Pgina 3 / 10

Manual de Configuracin de FTP

Si no tenemos tal disco podemos acceder a descargar la versin RPM desde la siguiente URL que corresponde a uno de los mirrors de CentOS: http://mirror.its.sfu.ca/mirror/CentOS/5.5/os/i386/CentOS/vsftpd-2.0.5-16.el5_4.1.i386.rpm Ejecutando la siguiente orden podemos descargar el paquete mencionado en la URL anterior en el directorio donde nos encontremos:
# wget http://mirror.its.sfu.ca/mirror/CentOS/5.5/os/i386/CentOS/vsftpd-2.0.516.el5_4.1.i386.rpm

Hay que recordar que el manual explica como instalar el servidor FTP usando el paquete RPM que se encuentra en el disco de Centos. Si no se tiene el disco se debera copiar el paquete RPM descargado de Internet en el directorio /mnt/disco/CentOS/, esto con la finalidad de ejecutar las rdenes explicadas posteriormente en el presente manual sin ningn problema. El servidor FTP debe ser configurado para que presente las siguientes caractersticas: Ningn usuario especial del sistema puede hacer login va FTP. Acceso annimo debe estar inhabilitado, as como las operaciones que se puedan hacer con este. Se debe especificar de manera explcita que usuarios podrn hacer login va FTP. Se debe utilizar chroot para evitar el libre desplazamiento por directorios de los usuarios que hagan login (Este comportamiento debe ser el por defecto para hacer login). Slo determinadas mquinas deberan conectarse al servidor FTP. De manera opcional permitir que uno pueda elegir si desea establecer una comunicacin cifrada (Uso de certificados de seguridad).

Pgina 4 / 10

Manual de Configuracin de FTP

2. Instalacin y configuracin
Instalamos VSFTP ejecutando la siguiente orden:
# cd /mnt/disco/CentOS/ # rpm -ivh vsftpd-2.0.5-16.el5_4.1.i386.rpm

Una vez instalado el paquete podemos comprobar la informacin de este con las siguientes rdenes:
# rpm -qi vsftpd # rpm -ql vsftpd

Editamos el archivo de configuracin de VSFTP, lo haremos con el editor vi:


# vi /etc/vsftpd/vsftpd.conf

Editamos de tal manera que se tengan las siguientes opciones (Si alguna de ellas no se encuentra, agregarla al final del archivo):
anonymous_enable=NO local_enable=YES write_enable=YES anon_upload_enable=NO anon_mkdir_write_enable=NO ftpd_banner=Servidor FTP Institucional chroot_local_user=YES chroot_list_enable=NO chroot_list_file=/etc/vsftpd/chroot_list listen_ipv6=NO userlist_enable=YES max_clients=3 userlist_deny=NO

Se puede encontrar una explicacin detallada de estas opciones en la siguiente URL: http://vsftpd.beasts.org/vsftpd_conf.html Una vez que se ha comprobado lo anterior guardamos los cambios y cerramos el archivo. Luego de esto ejecutamos la siguiente orden, para crear el archivo donde colocaremos los usuarios que vamos a crear, de tal manera que estos una vez que ingresen al servidor FTP slo puedan desplazarse en su directorio local (Directorio Home):
Pgina 5 / 10

Manual de Configuracin de FTP # cd /etc/vsftpd/ # touch chroot_list

Creamos los dos usuarios que tendrn acceso a nuestros sitios Web:
# adduser intranet -d /var/www/intranet/ -g ftp -s /sbin/nologin # adduser webmaster -d /var/www/web/ -g ftp -s /sbin/nologin

Asignamos contraseas a los usuarios anteriormente creados (Se recomienda una clave con mnimo de 6 caracteres que sean alfa-numricos y especiales):
# passwd intranet # passwd webmaster

Ahora debemos editar el siguiente archivo:


# vi /etc/vsftpd/user_list

En ese archivo encontraremos varios usuarios, borramos todos estos y slo dejamos lo siguiente:
# vsftpd userlist # If userlist_deny=NO, only allow users in this file # If userlist_deny=YES (default), never allow users in this file, and # do not even prompt for a password. # Note that the default vsftpd pam config also checks /etc/vsftpd/ftpusers # for users that are denied. intranet webmaster

En el anterior archivo deben estar los nombres de los usuarios que pueden hacer login va FTP. Guardamos los cambios y cerramos el archivo. Ahora debemos cambiar los permisos de las carpetas y archivos a los cuales vamos acceder va FTP
# # # # # cd /var/www/ chown -R intranet intranet chmod -R 755 intranet chown -R webmaster web chmod -R 755 web

Ahora debemos reiniciar nuestro servidor FTP con la siguiente orden:


# /etc/init.d/vsftpd restart

Pgina 6 / 10

Manual de Configuracin de FTP

Para que el servicio FTP se inicie automticamente con el sistema operativo, debemos ejecutar la siguiente orden:
# chkconfig --level 345 vsftpd on

3. Definir que mquinas pueden establecer una conexin con el servicio FTP:
Ahora vamos a configurar para que slo algunas mquinas puedan conectarse al servicio FTP, para esto es necesario habilitar el soporte TCP wrappers, el cual permitir el uso de archivos como el hosts.allow y hosts.deny, para controlar quienes pueden usar el servicio FTP. Editamos el archivo de configuracin principal a travs del siguiente comando:
# vi /etc/vsftpd/vsftpd.conf

Agregamos las siguientes lineas al final del archivo (Slo la primera lnea es obligatoria para habilitar esta opcin) :
tcp_wrappers=YES pasv_min_port=50000 pasv_max_port=60000

Guardamos los cambios y cerramos el archivo, despus tenemos que reiniciar el servicio FTP:
# /etc/init.d/vsftpd restart

Ahora debemos editar los archivo hosts.allow y hosts.deny. Supongamos que deseamos establecer que slo las mquinas con IP 192.168.4.26 y 192.168.4.28 puedan conectarse. Entonces debemos editar lo siguiente: En el archivo /etc/hosts.allow, debe haber la siguiente lnea de contenido (En este archivo deben estar las IP's de las mquinas que podrn acceder al servicio FTP):
vsftpd: 192.168.4.26 192.168.4.28

En el archivo /etc/hosts.deny, debe haber la siguiente lnea de contenido:


vsftpd: ALL

Pgina 7 / 10

Manual de Configuracin de FTP

4. Utilizacin de certificados de seguridad:


En esta parte se va a explicar como utilizar los protocolos SSL y TLS a travs de un certificados RSA. Esto se utilizar con la finalidad de cifrar la comunicacin que se envi y/o reciba cuando se este usando el servidor FTP. En primer lugar creamos un directorio donde se almacenaran los certificados de seguridad para todas las comunicaciones SSL y TLS. Para lo cual ejecutamos la siguiente orden.
# mkdir -m 0700 /etc/ssl

El directorio anterior sirve para almacenar todos los certificados que vamos a guardar, por ejemplo podemos almacenar certificados de seguridad para el servicio Apache, SSH, FTP, SMTP, etc. Para poder tener una organizacin sobre estos certificados, vamos a crear un directorio donde se almacenar el certificado para el servicio FTP. Para esto ejecutamos la siguiente orden:
# mkdir -m 0700 /etc/ssl/ftp

Ahora vamos a ingresar a este directorio, y en el vamos a crear nuestro certificado:


# cd /etc/ssl/ftp/ # openssl req -x509 -nodes -days 1460 -newkey rsa:1024 -keyout vsftpd.pem -out vsftpd.pem

Al ejecutar lo anterior vamos a crear un certificado de seguridad que tendr una duracin de 1460 das (4 aos), este utilizar como algoritmo de cifrado el RSA de 1024 Kb. Tambin no se hace uso de triple DES, con la finalidad de que el servicio FTP inicie de manera normal sin ningn tipo de interaccin. El fichero donde se almacena el certificado estar ubicado en /etc/ssl/ftp/vsftpd.pem Al momento de generar el certificado de seguridad, este solicitar la siguiente informacin: Cdigo de dos letras del pas. (Se recomienda seguir el ISO 3166-1 alfa-2) Nombre del estado o provincia. Nombre de la localidad. Nombre de la organizacin. Nombre de la unidad organizacional. Nombre comn (Puede ser el nombre de uno, o el nombre del host) Direccin de email

Pgina 8 / 10

Manual de Configuracin de FTP

Los resultados que se han tenido al momento de generar el certificado son:


Generating a 1024 bit RSA private key ............++++++ ...........++++++ writing new private key to 'vsftpd.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]:PE State or Province Name (full name) [Berkshire]:Lambayeque Locality Name (eg, city) [Newbury]:Chiclayo Organization Name (eg, company) [My Company Ltd]: Nombre empresa Organizational Unit Name (eg, section) []: Oficina de Informatica Common Name (eg, your name or your server's hostname) []:Roger Contreras Email Address []:rcontreras@company.com

Ahora debemos modificar los permisos de nuestros certificados para que estos sol puedan ser ledos por el usuario root. Para esto ejecutamos las siguientes rdenes:
# cd /etc/ssl/ftp/ # chmod 400 vsftpd.pem

Luego de lo anterior, necesitamos modificar el archivo de configuracin principal del servidor FTP, para lo cual usaremos el editor vi:
# vi /etc/vsftpd/vsftpd.conf

En este archivo debemos agregar las siguientes lneas al final:


# Habilitamos el soporte de TLS/SSL ssl_enable=YES # Permitir el uso de TLS/SSL a usuarios annimos allow_anon_ssl=YES # Obligar el uso de TLS/SSL para cualquier operacin force_local_data_ssl=NO force_local_logins_ssl=NO # Preferir TLSv1 sobre SSLv2 y SSLv3 ssl_tlsv1=YES ssl_sslv2=NO ssl_sslv3=NO # Ubicacion del certificado rsa_cert_file=/etc/ssl/ftp/vsftpd.pem

Pgina 9 / 10

Manual de Configuracin de FTP

Guardamos los cambios y cerramos el archivo, despus tenemos que reiniciar el servicio FTP:
# /etc/init.d/vsftpd restart

5. Conexin al servidor FTP :


Una vez que hemos configurado todo lo anterior, ya podemos utilizar nuestro servicio FTP. Para esto haremos uso de un cliente FTP, en este caso vamos a usar Core FTP. Este programa puede ser descargado desde la siguiente pgina: http://www.coreftp.com/ Una vez que se haya instalado este programa, lo ejecutamos y nos mostrar la ventana de conexin:

En esta ventana debemos ingresar las opciones que nos solicitan, teniendo cuidado con la opcin Connection, ya que al usar certificados de seguridad, debemos variarla. En esta opcin vamos a dejarla con el valor AUTH TLS. Si no queremos usar una conexin cifrada debemos elegir en la opcin Connection el valor FTP. La IP 192.168.4.3 es la ip de la mquina donde se ha instalado y configurado el servicio FTP.
Pgina 10 / 10

También podría gustarte