martes, 2 de abril de 2013

How to: Instalar y configurar ProFTPd en Ubuntu Server 12.04

Protocolo FTP
El protocolo FTP (en inglés File Transfer Protocol), es un protocolo de red para la transferencia de archivos entre sistemas conectados a una red con protocolo TCP (Transmission Control Protocol). Está basado en la arquitectura cliente-servidor. Desde un equipo cliente, nos podemos conectar a un servidor, ya sea para descargar archivos de él o para enviarlos, todo esto independientemente del sistema operativo que usemos.


¿Qué es ProFTPd? 
ProFTPd es un servidor FTP bajo licencia GPL y multiplataforma, aunque no está para Microsoft Windows. ProFTPd puede ser fácilmente configurable, siendo sus archivos de configuración muy parecidos a los de Apache. Puede ser enjaulado independientemente del sistema de archivos sobre el que trabaje y soporta IPv6.

Instalando ProFTPd 
Para instalar ProFTPd en Ubuntu Server abrimos un terminal y teclear:

Durante la instalación veremos una pantalla como esta.


Seleccionamos Independiente. Una vez el proceso haya concluido, tendremos instalado ProFTPd en nuestra máquina.

Configurando ProFTPd 
Vamos a pasar ahora a la configuración de ProFTPd.

Previamente seleccionada la opción ( independiente ) para que nos haga funcionar el servidor FTP como servidor independiente. Una vez instalado vamos a añadirle una linea al archivo de configuración de proftpd.conf con la que aremos que cuando un usuario se conecte a nuestro servidor con una cuenta propia no pueda navegar por mas directorios que por los suyos propios. No es necesario pero así nos aseguramos de que nadie nos tocará nada en el disco duro.


Escribimos en terminal:


Ahora nos vamos al final del archivo, y añadimos esta línea:

DefaultRoot ~ 

Una vez hagamos esto guardamos el archivo de configuración y salimos del editor nano pulsando la tecla ( F2 ), después la ( Y ) y el ( Enter ).

Ya tan solo nos queda reiniciar el servidor Proftpd y empezar a subir y bajar archivos desde donde queramos …

Si accedemos a nuestra cuenta FTP con nuestro usuario podremos navegar por nuestro directorio /home/usuario y tendremos permisos suficientes para hacer lo que nos venga en gana.

Esto esta muy bien pero también estaría bien el poder tener la raíz de nuestro servidor Web accesible desde el FTP para poder manejar los archivos que queremos compartir vía Web en nuestro servidor.

Para esto vamos a configurar uno de los ficheros de configuración que Apache Web Server y le indicaremos que la raíz de nuestro servidor Web va a ser uno de los directorios que se encuentra dentro de nuestra cuenta de usuario.

Para empezar vamos a crear un directorio dentro de nuestro home donde todo lo que copiemos lo podremos compartir vía web. ( Yo le voy a llamar web )

En la consola escribimos:

Una vez creado el directorio vamos a editar el archivo default ubicado en la ruta /etc/apache2/sites-available/ con …
 


Veremos una pantalla como esta pero con /var/tuusuario…

Tan solo tenemos que modificar la ruta /var/www/ por la ruta de nuestro directorio /web. En este caso de ejemplo:

Una vez hagamos esto guardamos el fichero de configuración y salimos del editor nano pulsando la tecla ( F2 ), después la ( Y ) y el ( Enter ).

Reiniciamos el Servidor Web Apache para que los cambios surjan efecto con …


Seguidamente borramos el fichero index.html de la ruta /var/www para que podamos ver todos los ficheros que subamos al directorio web …

Ahora todo lo que subamos al directorio /web podremos verlo desde nuestro navegador simplemente con poner la ip de nuestro servidor ( Por ejemplo http://192.168.1.71 )


Listo, solo restaría acceder por medio de proftp typeando nuestro user y pass desde filezilla y nos listara los archivos del directorio que le hemos indicado anteriomente, todo esto con la finalidad de tener un mayor control sobre el servidor y el listing de los mismos ficheros.

Si lo que necesitamos es administrar a varios usuarios dentro del mismo ftp y que cada quien sea autónomo en cuanto a subida y bajada de archivos podemos instalar otra herramienta en un servidor espejo corriendo con windows server 2003 o 2008 y crear un enlace simbolico hacia nuestro directorio ftp en el server 1, la herramienta con GUI se llama Filezilla Server.

Requisitos Server con Windows:
Windows (Cualquiera de sus versiones, yo preferiria XP o Server 2003) corriendo en una maquina tipo server sin ninguna interfaz habilitada, no monitor, no teclado (a menos que se necesite para el POST del BIOS) y no mouse, solo el cable RJ45, el de alimentacion y listo.
Puerto 21 abierto en firewall y router

Requisitos Server con Ubuntu:
Configurado a punto hasta su optimo funcionamiento
Permisos chmod -R 777 "usuario" para aplicar cambios de root a la raiz del usuario y a sus subcarpetas.

En que consiste?:
Se crea un enlace simbolico atravez de la misma red (ambos servers con ip estatica)
Podemos verificar que tenemos acceso a los directorios de ubuntu server desde el server con windows entrando a "Mis Sitios De Red" aparecera un enlace directo hacia el server con Ubuntu Server 12.04, solo restaria verificar acceso a la carpeta que nosotros queremos

En este caso seria:

Directorio principal
            FTP
               Usuario 1
                        Sus Archivos

La que seleccionaremos en Filezilla Server sera "Usuario 1" configurando los permisos de administracion y gestion remota, por ejemplo que pueda crear carpetas y subir ficheros pero que no pueda eliminar nada.

Cuando el usuario cree que esta hablando directamente con Ubuntu Server (Server 1) realmente quien esta gestionando su usuario y contraseña ademas de permisos de ejecucion y gestion de subidas y bajadas de archivos es el server numero 2 corriendo con windows xxx.



Esto para no sobrecargar tando a ubuntu server y darle algo mas de bateria al server con windows server o windows xp sea cual sea la eleccion

Mas delante subo las capturas ya que tengo otros posts un tanto mas aportantes que escribir!

Bytes!

0 comentarios:

Publicar un comentario

Proyectos Documentados, Trabajos, Ideas...

Donar

Noize Nación Radio

Click para escuchar

Compartir

Twitter Delicious Facebook Digg Stumbleupon Favorites More

Social...