Objetivo: Instalar un mini-servidor web en tu PC para que puedas acceder a tus archivos desde cualquier lugar con un simple navegador (en HTTPS).
Permite subir y bajar archivos, así como diversas operaciones (copiar, renombrar, eliminar, editar, buscar, comprimir, etc.).
Esto te permite tener un espacio de almacenamiento en la web con la capacidad de tu disco duro!
En la pantalla vemos como es el administrador de archivos una vez que está instalado:
Necesario:
- Windows 95/98/ME/NT/2000/XP/2003
- conexión a Internet (de preferencia permanente como la ADSL), con IP dinámica o estática.
Herramientas utilizadas:
- pi3web (servidor web)
- Quixplorer (administrador de archivos en php)
Estas dos herramientas son gratuitas y opensource.
Pi3web es un servidor web muy compacto (2.3 Mo a descargar), opensource, soporta php, rápido, consume pocos recursos (alrededor 10 Mo de memoria viva), funciona bajo todas las versiones de Windows (del 95 al 2003), fácil de instalar, generación de certificados SSL muy simple, funciona como servicio o aplicación, se desinstala limpiamente.
Quixplorer es un administrador de archivos en PHP práctico y eficaz, que no requiere una base mySQL.
La gestión de derechos es práctica y sencilla.
==============================================
ETAPA 1 – Instalar DNS
Es necesario que puedas acceder a tu PC desde Internet con un nombre fijo
(para que evites tener que recordar tu dirección IP).
Para ello, puedes utilizar servicios gratuitos como dyndns.org. Inscríbete en la
página web e instala el programa DynDns en tu PC.
Esto te permitirá acceder a tu PC con un nombre fijo (por ejemplo toto.dyndns.org)
Verifica que tu DNS funciona bien, para ello haz ping a tu PC: ping toto.dyndns.org
En adelante, supondremos que tu máquina se llama toto.dyndns.org
==============================================
ETAPA 2 – Instalación de pi3web
2.1) Descarga pi3web de http://pi3web.sourceforge.net/pi3web/
(Pi3Web-x86Win32-2_0_3.exe o versión superior.)
2.2) Instala pi3web:
2.2.a) Ejecuta Pi3Web-x86Win32-2_0_3.exe, y sigue la instalación.
2.2.b) En la pantalla "Configure server identity", marca "SSL".
2.2.c) En la pantalla "Generate SSL demo server keys and certificates":
- En "Common name" y "Server name", ingresa toto.dyndns.org
- Vacía todos los otros campos.
2.2.d) En la pantalla "Server Server Run Mode", selecciona "System service",
y termina la instalación.
2.3) Configura pi3web. En la ventana "Pi3web Server Admin"
2.3.a) En la pestaña "Mappings", elimina todas las líneas salvo aquellas
en la que el “From” es:
- /icons/
- /images/
- /errors/
- /
2.3.b) Siempre en la pestaña "Mappings", agrega los 2 mappings siguientes:
Type From To Realm
-------------------------------------------------------
Document /quix/.config/ dummy-directory/ (none)
Document /quix/.include/ dummy-directory/ (none)
2.3.c) En la pestaña “HTTP”:
- En la zona "Server stamp", vacía el texto ("Pi3Web/2.0.3")
- En "Index files", elimina todo, luego añade: index.php y index.html
- En "Methods", marca POST
- En "Size limit", ingresa 99999999
Haz clic en “OK”.
2.3.d) Elimina los archivos contenidos en el directorio C:\Pi3Web\WebRoot
2.3.e) Crea un archivo vacio: C:\Pi3Web\WebRoot\index.html
2.3.f) En tu disco duro, crea el directorio c:\tmp
2.3.g) Modifica el archivo C:\Pi3Web\bin\php.ini:
- Cambia: post_max_size = 8M
a: post_max_size = 99M
- Cambia: upload_max_filesize = 2M
a: upload_max_filesize = 99M
- Cambia: memory_limit = 8M
a: memory_limit = 99M
- Cambia: max_execution_time = 30
a: max_execution_time = 1800
(Esto permitirá subir archivos hasta 99 Mo)
==============================================
ETAPA 3 – Instalación de Quixplorer
3.a) Descarga Quixplorer desde: http://quixplorer.sourceforge.net/
(por ejemplo quixplorer_2_3_1.zip)
3.b) Crea el directorio C:\Pi3Web\WebRoot\quix
3.c) Descomprime el archivo ZIP en C:\Pi3Web\WebRoot\quix
(index.php debe estar aquí: C:\Pi3Web\WebRoot\quix\index.php)
3.d) Edita el archivo C:\Pi3Web\WebRoot\quix\.config\conf.php:
- Cambia: $GLOBALS["require_login"] = false;
a: $GLOBALS["require_login"] = true;
- Cambia: $GLOBALS["script_name"] = "[http://]".$GLOBALS['__SERVER']
['HTTP_HOST'].$GLOBALS['__SERVER']["PHP_SELF"];
a: $GLOBALS["script_name"] = "[https://]".$GLOBALS['__SERVER']
['HTTP_HOST'].$GLOBALS['__SERVER']["PHP_SELF"];
- Cambia: $GLOBALS["home_dir"] = "/home/you/public_html";
a: $GLOBALS["home_dir"] = "/";
- Cambia: $GLOBALS["zip"] = false; //function_exists("gzcompress");
a: $GLOBALS["zip"] = true; //function_exists("gzcompress");
3.e) Edita el archivo C:\Pi3Web\WebRoot\quix\.config\.htusers.php:
- Cambia: array("admin","9628d0d187029e6337baa86780b2abb6",".",
"http://localhost/",1,"",7,1),
a: array("admin","9628d0d187029e6337baa86780b2abb6",
"c:/","http://localhost/",1,"",7,1),
==============================================
ETAPA 4 – Configuración final
4.a) Abre el navegador, y ve a la dirección https://localhost/quix/
Conéctate con el login “admin”, contraseña "pwd_admin".
Ve inmediatamente a la página de admin, y cambia la contraseña admin.
(Penúltimo botón, justo antes del botón "Logoff").
A partir de aquí, podrás crear usuario.
(así como asignar directorios específicos a cada usuario.)
Observa que los enlaces haciendo clic sobre los archivos no funcionan.
(Siempre tendremos que hacer clic en el botón "Download" en la columna
de la derecha para descargar un archivo.)
Esto es normal ya que tu disco duro no es compartido en Internet fuera
del administrador de archivos Quixplorer.
4.b) Ahora que los usuarios están configurados, abre tu servidor web a Internet:
Menú Inicio > Programas > Pi3Web > Server Admin
En la pestaña “General”, selecciona "Remotely using a hostname".
En "Hostname", ingresa toto.dyndns.org
Haz clic en “OK”
4.c) Ahora ya puedes acceder a tu PC desde la dirección
https://toto.dyndns.org/quix/
Con Quixplorer podrás crear espacios para almacenar separados para cada usuario,
o también crear usuarios que sólo tengan acceso de sólo lectura.
==============================================
Observaciones en cuanto a la seguridad:
A)
¿Por qué Quixplorer y la presencia de un index.html vacio?
Porque si por casualidad un hacker entra a tu sitio web, éste sólo verá una página en blanco.
No sabrá que Quixplorer está instalado. Esto disminuye el riesgo de ataques en Quixplorer.
B)
En el archivo C:\Pi3Web\WebRoot\quix\.include\footer.php elimina todo lo que se encuentre entre las líneas: function show_footer() { // footer for html-page
y: }
(esto evita que el webmaster de la página de Quixplorer conozca la dirección de tu página web gracias al HTTP Referer.)
C)
En el archivo C:\Pi3Web\WebRoot\quix\.include\login.php
Encuentra la ubicación de este código:
---%-----------
if(isset($GLOBALS['__POST']["p_user"])) {
// Check Login
if(!activate_user(stripslashes($GLOBALS['__POST']["p_user"]), md5
(stripslashes($p_pass)))) {
logout();
}
---%-----------
y agrega sleep(10).
---%-----------
if(isset($GLOBALS['__POST']["p_user"])) {
// Check Login
sleep(10); if(!activate_user(stripslashes
($GLOBALS['__POST']["p_user"]), md5(stripslashes($p_pass)))) {
logout();
}
---%-----------
Esto impondrá un tiempo de espera de 10 segundos a la ventana de login, lo que protege a Quixplorer contra los ataques del tipo de “fuerza bruta”.
D)
Ten cuidado con el PC donde ingresas tu contraseña:
Si un keylogger está instalado, te pueden robar tu contraseña, y esto permitirá que otros accedan a tus archivos y a tu disco duro!
Se precavido, sobretodo si estás en un cibercafé o en casa de amigos.
En la medida de lo posible, utiliza un CD booteable como Knoppix (http://knoppix-es.org/): Te sentirás seguro de que no hay ningún keylogger.
E)
De preferencia utiliza logins Quixplorer con derechos limitados.
(Por ejemplo, con acceso sólo a un directorio, o en sólo lectura)
En caso de que te roben tu contraseña, los perjuicios serán menores si el pirata informático sólo puede acceder a un directorio y no a todos los de tu disco duro.
No utilices la cuenta administrador para conectarte desde el exterior:
Si alguien te roba tu contraseña, él tendrá acceso todo tu disco duro!