Servidor FTP en Windows.

20 - agosto - 2011

(Tener un Servidor FTP puede significar que la seguridad del PC podría ser vulnerada mucho más fácilmente que si no lo tuvieran. Instálenlo bajo su propia responsabilidad.)

Hace mucho tiempo vimos en ESTE POST (el cual recomiendo revisar), que un servidor FTP es un programa cuyo propósito es que desde un computador se puedan bajar y/o subir archivos de todo tipo.

Para Windows existen muchísimos servidores FTP, pero hay uno que llamó mi atención poderosamente por su increible simpleza y por su buen funcionamiento.

Typsoft FTP Server es un software tan… pero tan fácil de aprender a utilizar, que la verdad es que prácticamente no es necesario explicar nada, pues posee una interfaz gráfica muy simple y muy completa.
Por ejemplo:
-Para que puedan bajarse archivos, se marca la checkbox que dice “download”.
-Para que puedan subirse archivos, se marca la checkbox que dice “upload”.
Etc, etc…

Algo que vale la pena mencionar, es que permite reanudar la descarga de un archivo si ésta es interrumpida.
Otra característica interesante es que, a diferencia de otros servidores, aquí se puede elegir la carpeta que contendrá los archivos que se desean compartir.

Por otro lado, este software presenta algunas desventajas, las cuales para mí implican que nunca usaría a este servidor para hacer algo “en serio”.
Entre ellas:
-No acepta a Firefox como cliente FTP.
-Hasta ahora, sólo funciona en Windows Vista, XP, 2000, Millenium y 98.
-No es Software Libre… es Freeware.

Según mi experiencia personal, ha resultado espectacular… he enviado archivos de hasta 1.1GB y lo he dejado funcionando más de 48 horas seguidas sin problema alguno.
También pude comprobar empíricamente que es capaz de reanudar una descarga interrumpida… xD

En resumen, este servidor es absolutamente recomendable para usuarios novatos… para los más avanzados recomendaría VSFTP o FileZilla (y en algún SO basado en Linux).

Pueden bajarlo haciendo click AQUI.

Saludooos 😛

(Tener un Servidor FTP puede significar que la seguridad del PC podría ser vulnerada mucho más fácilmente que si no lo tuvieran. Instálenlo bajo su propia responsabilidad.)

VSFTPD

Un Servidor FTP (sigla cuyo significado es “File Transfer Protocol”) es un programa que hace que desde un computador se puedan bajar (y/o subir) archivos de todo tipo, a través del “Protocolo de Transferencia de Archivos”… en español.
En general, en un servidor FTP se pueden hacer varias configuraciones, como: ponerle password, crear usuarios, crear usuarios que sólo puedan bajar ciertos archivos, etc., etc…

En este artículo nos concentraremos en un servidor FTP desde el cual solamente se puedan bajar archivos (por motivos de seguridad).
Además, cualquiera que se conecte al servidor podrá bajar esos archivos (por motivos de facilidad).
Para los servidores FTP, ese “usuario cualquiera” que se conecte al servidor es denominado “anonymous”. Este dato será importante para lo que vendrá posteriormente.

+++++++ ¿PARA QUE? +++++++
El primer objetivo obviamente es compartir archivos… pero existen situaciones más específicas en las que un servidor FTP se hace extremadamente útil, por ejemplo:
¿Qué pasa si necesitamos enviar un archivo enorme (ej: 1GB)?
Por mail sería imposible, pues habría que partirlo en 100 pedazos de 10MB…
¿Y podríamos hacer lo mismo con un servidor web?
Sí, pero el protocolo FTP tiene la gran ventaja de ser mucho (realmente muuuucho) más rápido que el protocolo HTTP, pues está menos congestionado. Esto mismo hace que la probabilidad de que ocurra un error durante la transferencia sea mucho menor.

+++++++ INSTALANDO EL SERVIDOR. +++++++
Ok, lo primero que se debe hacer es instalar vsftpd (“Very Secure FTP Daemon”), así:
sudo apt-get install vsftpd

Al hacer esto, se generará una carpeta llamada “ftp” en /home.
Es en esta carpeta en donde debemos dejar los archivos que queremos que puedan bajar los que se conecten a nuestro servidor.

+++++++ CONFIGURANDO EL SERVIDOR. +++++++
Luego, debemos abrir el archivo de configuración de vsftpd, así:
sudo gedit /etc/vsftpd.conf
En ese archivo, debemos “des-comentar” o borrar el símbolo “#” y cambiar “NO” por “YES” en la línea donde dice:
#anonymous_enable=NO
y convertirla en:
anonymous_enable=YES
Haciendo esto, permitimos que el exista el usuario “anonymous”, o dicho de otra manera, permitimos que cualquiera se pueda conectar a nuestro servidor FTP. Esto suena bastante inseguro, pero el hecho de que ningún usuario pueda “escribir” (o subir archivos y tener la capacidad de borrar archivos) lo hace relativamente seguro.

Reiniciamos el servidor, así:
sudo /etc/init.d/vsftpd restart
Listo! Ya tenemos un servidor FTP en nuestro PC.

+++++++ MANEJANDO EL SERVIDOR. +++++++
Vsftpd es un “Daemon” y se activa automáticamente al iniciar el SO.
¿Cómo hacer que esto NO ocurra?
Instalamos BUM: sudo apt-get install bum
Sistema -> Administración -> BootUp-Manager -> Desactivamos la casilla de “vsftpd”.

Comando para iniciarlo: sudo /etc/init.d/vsftpd start
Comando para detenerlo: sudo /etc/init.d/vsftpd stop
Comando para Reiniciarlo: sudo /etc/init.d/vsftpd restart
Comando para configurarlo: sudo gedit /etc/vsftpd.conf
Esta última acción debe hacerse siempre con sumo cuidado.

+++++++ CONECTANDOSE AL SERVIDOR. +++++++
¿Pero cómo hacemos para que alguien se conecte a nuestro Servidor?
Primero que nada, nuestro “anonymous” debe conocer nuestra IP.
(¿Cómo conocer mi IP? Así: http://ip.interchile.com/ )
Segundo, debe disponer de un Cliente FTP, pero no os preocupeis, pues cualquier browser como firefox, explorer, etc., es un cliente FTP de sólo lectura, que es todo lo que se necesita.
Finalmente, para conectarse, en el browser debe colocar la IP de nuestro servidor, así (ejemplo):
ftp://111.222.333.444
Ojo con que en lugar del famoso “http://”, debe decir “ftp://” antes de la IP.
Todo usuario que se conecte a nuestro servidor desde un browser es automáticamente considerado “anonymous” por el servidor.
Si nuestro usuario quisiera usar un verdadero cliente FTP (como Filezilla, gFTP, Putty, etc.), en donde dice Usuario debe colocar “anonymous”, y la IP debe escribirla en donde dice Servidor. La casilla de Contraseña simplemente se deja vacía.

Una consideración importante:
Para que los usuarios puedan conectarse a nuestro servidor, la carpeta /ftp debe tener los permisos 755 (para que no permitamos “escribir” en ella):
sudo chmod 755 /home/ftp
Pero no podremos copiar archivos normalmente hacia la carpeta /ftp.
Si deseamos copiar archivos a esa carpeta, debemos setear los permisos a 777:
sudo chmod 777 /home/ftp
…o de manera más simple, podemos copiarlos mediante el comando “cp”, así:
sudo cp [nombre_archivo] /home/ftp

…otro comando MUY UTIL para copiar carpetas hacia /home/ftp es:
sudo cp -r [nombre_carpeta] /home/ftp

+++++++ OTRAS PREGUNTAS +++++++
¿Es posible que nuestro servidor dé una “bienvenida” a los usuarios?
Claro, des-comentando (borrando el “#”) la línea del archivo de configuración que dice:
#ftpd_banner=
…y escribiendo nuestro propio mensaje de bienvenida, ejemplo:
ftpd_banner=Bienvenido a mi increible Server FTP… xD
(Sólo es posible dar la bienvenida a un usuario que acceda mediante Cliente FTP.)
¿Es posible que nuestro servidor FTP tenga un dominio (para no acceder mediante la IP)?
Claro que sí. En lugar de escribir “ftp://111.222.333.444”, se podría escribir “ftp://nombreserver.algo.com” sin ningún problema.
¿Es posible tener un servidor web y un servidor FTP en el mismo PC y activados al mismo tiempo?
Así es. Y también es posible utilizar el mismo dominio tanto para el server web como para el FTP.

Que se diviertan!!! xD

Saludooos 😛

(Servidor web en Ubuntu)

Servidor web en Ubuntu II

27 - julio - 2008

Okay, ya tenemos nuestro servidor web… pero todavía hay 2 problemas:
1.- Para nadie es muy grato tener que memorizar un número del estilo “www.xxx.yyy.zzz”, especialmente si lo que queremos es publicitar nuestro sitio,
2.- Lo más probable es que nuestra IP sea dinámica, es decir, que nuestro ISP nos la vaya cambiando periódicamente (los períodos pueden ir desde varios días hasta varios meses).

Una solución que resuelve ambos problemas es crear una cuenta en www.dyndns.com, que es una empresa que nos ofrece gratuitamente un dominio y lo asocia con nuestra IP, aunque ésta vaya cambiando con el tiempo.

Entonces, primero creamos una cuenta aquí. Después de haber creado la cuenta, elegimos y creamos un dominio (por ejemplo: elserver.homelinux.com). Hasta ahora tenemos un server con su respectivo dominio… pero qué pasa si cambia nuestra IP? Para este último problema, debemos instalar el programa ddclient, así:

sudo apt-get install ddclient

Apenas lo instalemos se nos pedirá que lo configuremos, lo cual es realmente simple e intuitivo.
Cómo funciona ddclient?
Lo que hace es enviar periódicamente nuestra IP a http://www.dyndns.com (o a la empresa en la que hayamos creado la cuenta), por lo que si nuestra IP ha cambiado no tendrá importancia, pues en el peor caso estaremos off-line por un intervalo de actualización, que por defecto son 300 segundos.

Para reconfigurar ddclient, simplemente escribimos en la consola:
sudo dpkg-reconfigure ddclient
…y cambiamos o actualizamos lo que necesitemos.

Saludooos 😛

Servidor web en Ubuntu I

16 - julio - 2008

(Tener un Servidor web puede significar que la seguridad del PC podría ser vulnerada mucho más fácilmente que si no lo tuvieran. Instálenlo bajo su propia responsabilidad.)

Un servidor no tiene que ser necesariamente una máquina del tamaño de un refrigerador o un súper computador… un PC común y corriente puede convertirse, con muy poco esfuerzo, en un pequeño servidor en menos de 10 minutos instalando Apache (su segunda versión).

Apache es una aplicación súper extendida en el mundo, que permite que nuestro PC sea un servidor http y “aparezca” o sea accesible desde la internet mediante el protocolo http (HyperText Transfer Protocol).

A continuación veremos cómo hacer que un PC con Ubuntu sea un servidor web (el más básico y simple de los servidores web) utilizando Apache.

Para instalar Apache:
sudo apt-get install apache2

Una vez instalado, comprobamos que funciona correctamente escribiendo en nuestro navegador favorito una de dos cosas:
http://127.0.0.1
o bien:
http://localhost

Si todo salío bien, deberíamos ver una página web de fondo blanco con la frase “It works!”… como ésta:

Ok, y dónde alojamos nuestro sitio web?
El lugar es el directorio: /var/www
De hecho, ahí encontraremos el archivo “index.html” con el texto “It works!” que vimos anteriormente.

Hasta aquí, todo bien… pero cómo hacemos para que nuestro servidor web sea accesible desde la internet? (La verdad es que desde que apache funciona ya es accesible… la pregunta es: cómo acceder?)
Lo primero que debemos hacer es averiguar nuestra IP, para lo cual podemos utilizar la página http://ip.interchile.com/
(Supondremos, como un ejemplo, que la IP es: 111.222.333.444).
Ahora que conocemos nuestra IP, la manera para acceder al sitio web de tu PC desde cualquier computador conectado a internet es escribiendo en un browser:
http://111.222.333.444
Y LISTO!!!

Ya tienes un servidor web accesible desde cualquier PC del mundo conectado a internet.
Si en algún momento quieres desactivar tu servidor (ya sea porque tu PC se puso un poco lento, porque estás actualizando la página, etc…), sólo debes escribir en la consola:
sudo apache2 -k stop
(también sirve: sudo /etc/init.d/apache2 stop)
…y para volverlo a activar:
sudo apache2 -k start
(o también: sudo /etc/init.d/apache2 start)

Que se diviertan!!! xD

Saludooos 😛

(Segunda Parte…)