Proyecto AjpdSoft
Utilizamos cookies propias y de terceros. [Más información sobre las cookies].
Política de cookies
Proyecto AjpdSoft

· Inicio
· Buscar
· Contactar
· Cookies
· Descargas
· Foros
· Historia
· Nosotros
· Temas
· Top 10
· Trucos
· Tutoriales
· Wiki


Montar un servidor de FTP en un equipo con Linux Debian
Fecha Jueves, 24 febrero a las 00:37:10
Tema Linux


Explicamos paso a paso y con capturas de pantalla cómo montar un servidor FTP en un equipo con el sistema operativo GNU Linux Debian o GNU Linux Ubuntu. Explicamos cómo, de forma sencilla y gratuita, podemos convertir nuestro equipo Linux en un servidor de FTP.



 

Requisitos previos para montar un servidor de FTP en GNU Linux Debian ó Ubuntu

Equipo informático con GNU Linux Debian o Ubuntu como sistema operativo y conexión a Internet

En primer lugar deberemos disponer de un equipo con el sistema operativo GNU Linux Debian:

Cómo instalar GNU Linux Debian 5.0.7 virtualizado en VMware Workstation

También podremos usar otras distribuciones o incluso instalar el servidor de FTP en una máquina virtual como por ejemplo GNU Linux Ubuntu sobre Microsoft Windows 7:

Instalar GNU Linux Ubuntu 10.04 LTS (Lucid Lynx) Beta 1 virtualizado en VMware

El equipo Linux debe tener conexión a Internet si queremos que el servidor de FTP sea público y accesible desde cualquier parte del mundo.

Registro de dominio en Internet

Si queremos hacer público nuestro servidor de FTP es recomendable registrar un dominio en Internet. De esta forma los usuarios accederán a una dirección de FTP más o menos sencilla en vez de usar una IP, por ejemplo:

ftp.proyectoa.com

Para ello accederemos a cualquier hosting (por ejemplo Dinahosting), escogeremos un nombre y lo registraremos. El coste suele ser bastante reducido, de unos 10 euros/año. En nuestro caso registraremos proyectoa.com:

AjpdSoft Registro de dominio en Internet

Realizaremos el pago como indica el hosting:

AjpdSoft Registro de dominio en Internet

En unos minutos ya deberíamos tener acceso al panel de control del dominio registrado. El hosting nos habrá enviado un email (o por cualquier otro medio) con los datos de acceso al panel de control para gestionar el dominio. Para el acceso externo (desde cualquier parte del mundo) a nuestro servidor de email, en primer lugar configuraremos en el panel de control del dominio registrado las zonas DNS, en concreto la Zona de tipo A. En dicha zona añadiremos en Host: "ftp" y en IP la IP pública de nuestra conexión a Internet (se puede obtener visitando ip.php):

AjpdSoft Montar un servidor de FTP en un equipo con GNU Linux Debian

Por supuesto, otro requerimiento es que debemos disponer de una dirección IP pública estática (no dinámica) o bien, si no podemos disponer de una dirección IP estática, deberemos usar algún método para cambiar la IP de la zona DNS "ftp". Por ejemplo, en el caso de Dinahosting, cuenta con una aplicación que obtiene la IP actual y actualiza la zona DNS que se le indique si la IP cambia. Es el mismo método que el que usa nuestra aplicación AjpdSoft Aviso Cambio IP Pública, sólo que ésta actualiza zonas DNS.

 

Mapeo y redirección de puertos en cortafuegos o router

Si disponemos de un cortafuegos o router en nuestra red o equipo deberemos abrir el puerto 21 (para el servicio de FTP). Todos los puertos deben ir dirigidos a la IP local del equipo GNU Linux servidor de FTP.

A continuación mostramos un ejemplo de cómo abrir el puerto 21 para la IP 192.168.1.100 (IP del que será servidor de FTP). Abriremos el navegador web, introduciremos la IP para el acceso al router, introduciremos usuario y contraseña de gestión y accederemos a la opción "Virtual Server". Añadiremos un nuevo mapeo con las opciones:

  • Protocol type: tcp.
  • Public Port: 21.
  • Private Port: 21.
  • Private IP Candidates: 192.168.1.100 (IP del servidor de FTP).

AjpdSoft Montar un servidor de FTP en un equipo con GNU Linux Debian

 

Instalar ftpd en GNU Linux Debian, válido para GNU Linux Ubuntu para montar servidor FTP

Abriremos una ventana de Terminal, desde el menú "Aplicaciones" - "Accesorios" - "Terminal", ejecutaremos el siguiente comando linux:

sudo apt-get install ftpd

AjpdSoft Montar un servidor de FTP en un equipo con GNU Linux Debian

Para ver el resultado de la instalación de ftpd pulsa aquí.

Si disponemos de cortafuegos en el equipo deberemos abrir el puerto 21.

Con estos sencillos pasos ya tendremos operativo el servidor de FTP, para probarlo es suficiente con abrir un navegador con soporte para FTP e introducir la IP o la URL registrada para el servidor FTP en las zonas DNS, en nuestro caso:

ftp.proyectoa.com

Nos pedirá usuario y contraseña, debe ser un usuario y contraseña del sistema operativo Linux del servidor de FTP, una vez introducidos accederemos a sus carpetas vía web:

AjpdSoft Montar un servidor de FTP en un equipo con GNU Linux Debian

Por supuesto, para un mejor aprovechamiento del servidor de FTP es recomendable usar algún software cliente de FTP, por ejemplo FileZilla Client:

Instalar FileZilla para acceso a servidor FTP en GNU Linux Debian

 

Configurar usuarios para acceso al servidor FTP en Linux

Ftpd cuenta con un fichero donde se le deben indicar los usuarios del equipo que no tendrán acceso vía FTP, por ejemplo es muy recomendable añadir a este fichero el superusuario root, el usuario anonymous, el usuario ftp y todos los usuarios locales. De esta forma sólo tendrán acceso vía FTP a nuestro servidor aquellos usuarios que no estén en este fichero. Para editarlo ejecutaremos el comando linux:

sudo nano /etc/ftpusers

AjpdSoft Configurar usuarios para acceso al servidor FTP en Linux

Si añadimos, por ejemplo, el usuario local del equipo "ajpdsoft" a este fichero y lo guardamos pulsando Control + O y cerramos la edición pulsando Control + X, al intentar acceder vía FTP con este usuario:

AjpdSoft Configurar usuarios para acceso al servidor FTP en Linux

Nos mostrará el mensaje de error siguiente y no permitirá el acceso vía FTP:

AjpdSoft Configurar usuarios para acceso al servidor FTP en Linux

Con el texto: "530 Login incorrect".

Lo recomendable, por seguridad, es añadir todos los usuarios locales que inicien sesión al fichero /etc/ftpusers y crear uno o varios usuarios específicos para el acceso FTP, para ello usaremos el comando linux::

sudo useradd -m usuarioftp

Estableceremos una contraseña para el usuario "usuarioftp" con el comando linux:

sudo passwd usuarioftp

AjpdSoft Configurar usuarios para acceso al servidor FTP en Linux

Una vez creado el usuario, puesto que no está en el fichero /etc/ftpusers, tendremos acceso vía ftp, introduciendo el nombre de usuario "usuarioftp" y la contraseña establecida:

AjpdSoft Configurar usuarios para acceso al servidor FTP en Linux

Y accederemos a la carpeta del usuario /home/usuarioftp del usuario:

AjpdSoft Configurar usuarios para acceso al servidor FTP en Linux

Anexo

  • Resultado comando sudo apt-get install ftpd:

ajpdsoft@pcajpdsoft:~$ sudo apt-get install ftpd
[sudo] password for ajpdsoft:
Leyendo lista de paquetes... Hecho
Creando árbol de dependencias
Leyendo la información de estado... Hecho
Los paquetes indicados a continuación se instalaron de forma automática y ya no son necesarios.
libswfdec-0.6-90 libepc-ui-1.0-1 libtalloc1 libmtp7 libneon27 libepc-1.0-1 libmalaga7 libgksu1.2-0 libsensors3
libraw1394-8 libavahi-compat-libdnssd1 djvulibre-desktop libicu38 libgda3-common libgksuui1.0-1 libosp5 libmagick++10
libexchange-storage1.2-3 libgtksourceview1.0-0 w3c-dtd-xhtml libnm-util0 libjaxp1.3-java-gcj libmagick10 libapm1
libpisock9 libcamel1.2-11 openssl-blacklist libpt-1.10.10-plugins-alsa libtrackerclient0 openoffice.org-writer2latex
libggzmod4 postgresql-doc-8.3 libeggdbus-1-0 libtotem-plparser10 swfdec-gnome libservlet2.4-java libedata-cal1.2-6
libsmbios2 libpt-1.10.10 libsoup2.2-8 libsuitesparse-3.1.0 libgpod3 libisccc50 libxerces2-java-gcj libcdio7 libxxf86misc1
libmysqlclient15off libossp-uuid15 libeel2-data libdirectfb-1.0-0 python-gtkmozembed libsexy2 p7zip gnome-utils
libhesiod0 libgnome-pilot2 finger libparted1.8-10 arj dhcdbd liblwres50 libgnomeprint2.2-data libkpathsea4 gs-common
libcurl3 hal python-eggtrayicon gnome-spell libnm-glib0 libggz2 libssh2-1 libpoppler3 lm-sensors wodim
libgtksourceview-common libhal-storage1 libbind9-50 libxerces2-java libc-client2007b libbluetooth2 libxtrap6
gnome-app-install python-cupsutils libeel2-2.20 libgtkhtml2-0 libopal-2.2 totem-gstreamer libxalan2-java libdvdread3
libgnomevfs2-bin libiw29 libedataserver1.2-9 libmozjs1d libmpfr1ldbl libisccfg50 zip python-4suite-xml libxklavier12
libgucharmap6 libgda3-3 svgalibg1 libpt-1.10.10-plugins-v4l libggzcore9 libgmyth0 libzephyr3 cpp-4.3 libvoikko1 hal-info
libcupsys2 libnautilus-burn4 postgresql-contrib-8.3 libgnomeprint2.2-0 libgraphviz4 epiphany-gecko libgnome-desktop-2
postgresql-8.3 libavahi-core5 libgnomeprintui2.2-0 libcucul0 libgnomeprintui2.2-common libxalan2-java-gcj libltdl3
libpoppler-glib3 libgnomecups1.0-1 libpisync1 libgdl-1-common libfaad0 gnome-vfs-obexftp
Utilice «apt-get autoremove» para eliminarlos.
Se instalarán los siguientes paquetes NUEVOS: ftpd
0 actualizados, 1 se instalarán, 0 para eliminar y 99 no actualizados.
Necesito descargar 48,4 kB de archivos.
Se utilizarán 193 kB de espacio de disco adicional después de esta operación.
Des:1 http://ftp.de.debian.org/debian/ sid/main ftpd i386 0.17-32 [48,4 kB]
Descargados 48,4 kB en 1seg. (38,1 kB/s)
Seleccionando el paquete ftpd previamente no seleccionado.
(Leyendo la base de datos ... 128942 ficheros o directorios instalados actualmente.)
Desempaquetando ftpd (de .../archives/ftpd_0.17-32_i386.deb) ...
Procesando disparadores para man-db ...
Configurando ftpd (0.17-32) ...
ajpdsoft@pcajpdsoft:~$


Artículos relacionados

Créditos

Artículo realizado íntegramente por Alonsojpd miembro fundador del proyecto AjpdSoft.







Este artículo proviene de Proyecto AjpdSoft
http://www.ajpdsoft.com

La dirección de esta noticia es:
http://www.ajpdsoft.com/modules.php?name=News&file=article&sid=520
Visita nuestro nuevo sitio web con programas y contenidos actualizados: Proyecto A