jueves, 10 de abril de 2008

Webftp


Es un conjunto de scripts realizados con PHP que permiten conectar con tu servidor FTP, aunque estés detrás de un proxy o firewall que no te permita usar FTP. Realiza una conexión FTP desde el servidor web mediante PHP y se accede a través de páginas web por HTTP. Importante, es gratuito y de código abierto.

En palabras más simples, puede conectarse a un servidor FTP, utilizando su navegador web, mediante esta aplicación, para subir archivos o descargar archivos desde un servidor.

Requerimientos
  • Un servidor web con soporte para php, el más popular y recomendado es apache
  • php mínimo en la versión 4.2.3, actualmente la última versión disponible es la 4.4.8.
  • Espacio en disco de al menos 7.5 mb, que puede ser menos si se eliminan algunos plugins


Proceso de Instalación
  1. Se descarga de http://www.net2ftp.com/ la última version disponible, que al momento de redactar este post es la 0.96.
  2. Se descomprime el archivo en la ubicación deseada.
  3. Se ingresa a el directorio de net2ftp y se le cambian los permisos a el directorio temp, con el comando chmod 777 temp.
  4. Se crean nuestras preferencias en el archivo settings.inc.php
Configurando WEBFTP
Archivo
settings.inc.php
Se modificaron los siguientes parámetros
  1. $net2ftp_settings["default_language"] = "es"; Para seleccionar el idioma español por defecto.
  2. $net2ftp_settings["default_skin"] = "blue"; Para seleccionar el tema azul
  3. $net2ftp_settings["admin_username"] = "admin"; Nombre de usuario Administrador
  4. $net2ftp_settings["admin_password"] = "contraseña"; Password del usuario administrador.

Net2ftp con base de datos (Mysql)
Aunque viene como opcional, vamos a hacer que net2ftp utilice base de datos para guardar registros de la actividad y el uso de la aplicación

Lo primero es modificar el parámetro para indicarle que SI utilice bases de datos
$net2ftp_settings["use_database"] = "yes"; // "yes" or "no"


Seguidamente se indican las opciones de conexion de la base de datos, aqui asumimos que se tiene creada una base de datos en un servidor de bases de datos mysql.

// Enter your MySQL settings
$net2ftp_settings["dbusername"] = "usuario";
$net2ftp_settings["dbpassword"] = "contraseña";
$net2ftp_settings["dbname"] = "nombre_basedatos";
$net2ftp_settings["dbserver"] = "servidor"; // Usualmente localhost


Opciones de Seguridad

El Net2ftp permite especificar a cuales servidores se puede conectar, predeterminadamente viene habilitada para conectarse con cualquier servidor.

Para cambiar ese comportamiento, se comenta la linea
//$net2ftp_settings["allowed_ftpservers"][1] = "ALL";

Y luego se ingresa una línea por cada servidor
$net2ftp_settings["allowed_ftpservers"][2] = "192.168.1.1";
$net2ftp_settings["allowed_ftpservers"][3] = "ftp.mydomain2.org";

Igualmente se pueden indicar los servidores 'baneados' o no permitidos.
$net2ftp_settings["banned_ftpservers"][1] = "192.168.1.1";
$net2ftp_settings["banned_ftpservers"][2] = "192.168.1.2";
$net2ftp_settings["banned_ftpservers"][3] = "192.168.1.3";


Otra recomendación de seguridad es proteger la carpeta /temp que tiene permisos de 777, mediante el uso del archivo .htaccess, si su servidor web es apache/