lunes, 24 de marzo de 2014

Instalar y configurar vsftpd en centos con iptables y selinux

En este articulo vamos a ver como instalar un servidor de ftp en centos. El servidor que vamos a utilizar es vsftpd. Para ello vamos hacer lo siguiente:
  1. Abrimos un consola y ejecutamos el siguiente comando:
    • "yum install vsftpd -y"
  2. Una vez que haya terminado la instalación tenemos que configurar IPTABLES para que podamos acceder desde fuera:
    • Entramos en la siguiente ruta:
      • "cd /etc/sysconfig"
    • Editamos el fichero "iptables"
      • "nano iptables"
    • Añadimos la siguiente linea:
      • "-A INPUT -m state --state NEW -m tcp -p tcp --dport 21 -j ACCEPT"
    • Guardamos la configuración
    • Para que nos funcione el modo pasivo tenemos que cargar el modulo "ip_contrack_ftp"
    • Editamos el fichero "iptables.config"
      • "nano  iptables.config"
    • Editamos o añadimos la linea "IPTABLES_MODULES=" para cargar el modulo
      • IPTABLES_MODULES="ip_contrack_ftp"
  3. Ahora tenemos que arrancar el servicio y que se inicie cuando arranque el servidor. Para ello:
    • "chkconfig --level 2345 vsftpd on"
    • "service vsftpd start"
  4. Solo nos queda configurar ciertas opciones para que nos funcione y pongamos cierta seguridad. Para ello:
    • "cd /etc/vsftpd"
    • "nano vsftpd.conf"
    • Añadimos o modificamos las siguientes lineas:
      • chroot_local_user=YES -> Bloquea a los usuarios en su HOME
      • pasv_enable=YES -> Habilita el modo pasivo en el ftp
      • pasv_min_port=63000 -> Selecciona el puerto donde empieza a utilizar el modo pasivo
      • pasv_max_port=64000 -> El último puerto que utiliza el modo pasivo
      • port_enable=YES -> Habilita el puerto
      • pasv_address=<IP de tu servidor> -> Dirección IP de nuestro servidor para utilizar el modo pasivo
      • pam_service_name=vsftpd -> Servicio de autenticación
      • userlist_deny=YES -> Habilitamos la lista de usuarios que no pueden hacer ftp (/etc/vsftpd/user_list)
      • tcp_wrappers=YES
      • ftpd_banner=<poner texto de banner> -> Texto cuando nos pide login el servidor.
    • Guardamos y reiniciamos el servicio
      • service vsftpd restart
  5. Si tuvieramos  selinux deberiamos habilitarlo para que pudieran ver los usuarios su HOME
    • "setsebool -P ftp_home_dir=1"
Con esto ya tendríamos configurado nuestro servidor de ftp en linux. Espero como siempre que les sea de utilidad.

0 comentarios:

Publicar un comentario