martes, 20 de enero de 2009

Hosts virtual con FTP

Vamos a comenzar explicando unos pequeños detalles.
1º Cada host virtual necesita una tarjeta de red para que podamos elegir en cual nos queremos conectar, para ello debemos de poner muchas tarjetas de red a nuestro ordenador o crear tarjetas de red virtuales.
2º Como voy a crear dos host virtuales voy a utilizar mi tarjeta de red física y otra virtual.
Comenzamos con al creación:
El primer paso es abrir nuestro fichero de configuración en el cual ya hemos creado un usuario ftp anónimo.
sudo gedit /etc/proftpd/proftpd.conf
Como ya tenemos un usuario ftp anónimo solo tenemos que copiarlo dentro de la estructura de un host virtual, este host virtual ha sido basado en IP ya que no hemos especificado ni por el puerto por el que va a acceder ni un nombre por el que se va a conectar.


Muy bien, ya que tenemos nuestro host virtual basado en IP vamos a crearnos otro pero este va a ser basado en el puerto por el que va a acceder, es prácticamente igual que el anterior solo nos cambia una pequeña línea de código, esa línea de código es la siguiente:
Port 2321
Puede ser la línea que queramos . Si elegimos un puerto como: 2321 lo que estamos es ocultando este servidor ftp a usuarios que no sepan por el puerto que se accede.

No debemos olvidar que debemos de crearnos una tarjeta de red virtual para que este host virtual funcione, la creamos con esta línea de código:
ifconfig eth0:1 192.168.1.229 netmask 255.255.255.0

IMPORTANTE: no debemos de olvidar que la próxima vez que encendamos nuestro ordenador no va a existir esta tarjeta de red virtual y deberemos de volver a crearla.
Una vez que están creados los host virtuales debemos de comprobar que funcionan correctamente. Ejecutamos nuestro Filezilla y ponemos para el host basado en IP la IP de ese host, de usuario ponemos anonymous y en contraseña y puerto no ponemos nada y si se conecta quiere decir que ha funcionado todo correctamente. Aquí dejo un ejemplo de como lo he puesto, espero que os sirva de guia.


Y para el host virtual basado en puerto debemos de poner la IP de la tarjeta de red virtual que es la de nuestro host virtual, de usuario ponemos anonymous, en contraseña no ponemos nada ya que un usuario anónimo no tiene contrasella y en puesto ponemos el número de puerto el cual hemos especificado en el fichero de configuración. Aquí dejo un ejemplo de como lo he puesto , espero que os sirva de guía.




viernes, 16 de enero de 2009

Creación de un usuario anónimo en un servidor FTP

En este tutorial vamos a aprender a crearnos un usuario anónimo para que todo el mundo pueda acceder a nuestro servidor ftp sin tener ninguna clave.
Lo primero que debemos hacer es abrir el fichero de configuración del servidor ftp.
sudo gedit /etc/protfpd/proftpd.conf
y después tenemos que añadir las siguientes directivas:

Ahora vamos a crear dos directorios dentro del directorio ftp, uno de ellos se va a llamar prácticas y el otro apuntes. En el directorio apuntes solo va a ser de lectura lo cual nos sirva para que en eses directorio no se puedan subir ni borrar ficheros, solo se podrán descargar y en prácticas vamos a poder subir archivo pero no vamos a poder ni borrarlos ni crear carpetas.
Lo primero que debemos hacer es crearnos los directorios:
sudo mkdir /var/ftp/practicas
sudo mkdir /var/ftp/apuntes

Y lo siguiente es indicar en el archivo de configuración que el directorio prácticas sea de lectura y escritura y que el de apuntes sea de solo lectura lo cual se realiza con las siguientes directivas:

En Directory /var/ftp/apuntes indicamos cual es el directorio en el cual solo se va a poder leer.

Para que en prácticas podamos subir y leer fichero se hace con la siguiente directiva:

En Directory /var/ftp/practicas nos indica cual es el directorio en el cual solo se va a poder escribir y leer.
Aquí dejo unas capturas de pantalla de haber entrado en el fireZilla:

lunes, 12 de enero de 2009

Intalación y configuración de un servidor FTP

En este tutorial sobre "ftp" vamos a aprender a instalar un servidor de ftp, un cliente de ftp y a configurarlo.
1º Comenzamos con la instalación de un servidor ftp, yo voy a utilizar "proftpd".
Para realizar la instalación desde la consola ponemos:
sudo aptitude install proftpd
Para realizar la instalación desde Synaptic nos vamos a:
Sistema--> Administración--> Gestor de paquetes Synaptic
y buscamos (proftpd) "sin parentesis", pulsamos aplicar y se instalara.
2º Vamos a configurar el servidor ftp para que nos de un mensaje de bienvenida cuando nos conectemos con nuestro cuenta de usuario o un mensaje de error si nuestra cuenta de usuario no esta creada.
Para hacer esto debemos de abrir nuestro terminal y abrir el fichero de configuración:
sudo gedit /etc/protfpd/proftpd.conf

Hay que añadir dos directivas para que funcione:
AccessGrantMsg “Bienvenido...”
esto sirve para que nos muestre un mensaje de bienvenida.

AccessDenyMsg “ERROR no ha sido admitido en el ftp”
esto sirve para que nos muestre un mensaje de error o para decirnos que no somos usuarios del ftp.
Para que nuestro servidor ftp esté limitado, debemos de añadir las siguientes directivas:

AllowUser : es la directiva que permite o autoriza a los usuarios que se hayan puesto a entrar al ftp, yo he usado como usuarios a juan y virginia por eso aparecen delante de AllowUser.
DenyAll : es la directiva que deniega a todos los usuarios.
Lo siguiente que debemos de hacer es crear los usuarios, asin que nos vamos a:
Sistema --> Administración---> Usuarios y Grupos.
Una vez dentro nos creamos los 2 usuarios:


Y para que el usuario no pueda acceder a nuestro sistema(si es un entendido del los ordenadores o PIRATA) ponemos la shell falsa y añadimos:
/bin/false


También debemos de poner esta directiva en el fichero de configuración:
RequireValidShell off
en:
sudo gedit /etc/protfpd/proftpd.conf

Para que el usuario solo pueda navegar por su directorio de ficheros y no por todo el ordenador añadimos la siguiente directiva en el fichero de configuración:
DefaultRoot ~
Y reiniciamos el servicio:
sudo /etc/init.d/proftpd restart

3º Debemos instalarnos un servidor cliente como "Filezilla" para poder usar el ftp, para instalarlo debemos hacer lo siguiente:
Sistema--> Administración--> Gestor de paquetes Synaptic
y buscamos (Filezilla) "sin parentesis", pulsamos aplicar y se instalara.
Una vez instalado lo ejecutamos en:
Aplicaciones-->Internet-->Filezilla FTP CLIENT
Una vez que lo hemos ejecutado tenemos que poner nuestra IP, nombre de usuario, contraseña y puerto por el que vamos a acceder, no es necesario poner el puerto.

Una vez que hemos entrado nos aparecerá este mensaje de bienvenida:

Y si por casualidad no somos usuarios del ftp nos debe de aparecer este otro mensaje:

Por último diré que proftpd crea log que dan información sobre quien a intentado acceder al ftp y no es usuario registrado:
Las crea en /var/log/proftpd/proftd.log