martes, 6 de mayo de 2014

PHPPgAdmin: administrador web de PostgreSQL

Continuando con la serie de tutoriales de PostgreSQL vamos a dedicar un post a PHPPgAdmin.


PHPPgAdmin es una herramienta web para la administración de bases de datos PostgreSQL (del mismo modo que PHPMyAdmin lo es para MySQL). Está compuesto por una serie de scripts PHP que serán ejecutados por un servidor web y estarán accesibles desde un navegador.


Requisitos previos

Necesitamos un servidor con las siguientes características instaladas:

  • Base de datos PostgreSQL 8.4 o superior (las versiones inferiores quedan fuera del soporte y desarrollo futuro, puede funcionar bajo nuestra responsabilidad)
  • Servidor web con soporte a PHP5.0 o superior

Proceso de instalación


Si trabajáis con un sistema operativo linux lo tenéis disponible en los repositorios de software.


Configuración


Existen dos archivos de configuración que debemos modificar: config.inc.php (configuración propia de PHPPgAdmin) y  apache.conf (con la configuración de los permisos de acceso al directorio que aloja los scripts php)

En el fichero config.inc.php configuramos las siguientes líneas con la dirección de nuestro servidor (generalmente localhost) y el puerto de conexión (por defecto el 5432)

$conf['servers'][0]['host'] = 'localhost';
$conf['servers'][0]['port'] = 5432;
 
Si queremos acceder con el usuario root a PHPPgAdmin (no recomendado) debemos desactivar la directiva extra_login_security en la línea:

$conf['extra_login_security'] = false;

Guardamos el fichero y abrimos apache.conf. Para permitir el acceso desde cualquier IP tendremos que habilitar la directiva allow from all. Si queremos que esté activa sólo desde una subred podemos indicarlo.

<Directory /usr/share/phppgadmin/>

DirectoryIndex index.php

Options +FollowSymLinks
AllowOverride None

order deny,allow
deny from all
#allow from 127.0.0.0/255.0.0.0 ::1/128
allow from all

<IfModule mod_php5.c>
  php_flag magic_quotes_gpc Off
  php_flag track_vars On
  php_value include_path .
</IfModule>

</Directory>


Reiniciamos Apache y ya tendremos accesible PHPPgAdmin desde nuestro navegador:


[Editado 18/09/2014]


En la versión 9.3 de PostgreSQL el archivo de configuración se encuentra en /etc/apache2/conf.d/phppgadmin

Igual que en el caso anterior comentaremos las líneas que impiden todos los accesos excepto el local:

#deny for all
#allow from 127.0.0.0/255.0.0.0  ::1/128

Y añadimos la línea

allow from all

que permite el acceso desde cualquier dirección I.P. (dejando la seguridad a cargo de la autenticación de Postgre). Es recomendable revisar el log de accesos de vez en cuando para averiguar si tenemos intentos de acceso no autorizados y en ese caso podemos restringir el rango de IPs permitidas.

lunes, 5 de mayo de 2014

PostgreSQL: habilitar conexión remota

Si habéis trabajado con un servidor PostgreSQL con frecuencia habréis usado la herramienta PgAdmin para administrarlo en un entorno gráfico más manejable. Generalmente en la instalación por defecto el servidor sólo acepta conexiones desde la máquina local (para ofrecer un servicio web no necesitamos acceder desde fuera).



En ocasiones podemos necesitar habilitar una conexión remota al servidor (para administración remota desde PgAdmin o phppgadmin, conexiones desde otro servidor web diferente, etc...). En estos casos tendremos que configurar Postgre editando el archivo pg_hba.conf.

¿Cómo habilitamos el acceso desde una IP remota?


Al final del archivo encontraremos las siguientes líneas:

# Allow replication connections from localhost, by a user with the
# replication privilege.
#local   replication     postgres


Y añadiremos:

host     all     all     192.168.1.3/24     md5

Los campos que aparecen en la línea son:
  • Tipo: conexión local o remota (local o host)
  • Bases de datos a las que permitimos acceso
  • Usuarios que pueden acceder
  • Direcciones IP o subredes que accederán
Aquí indicamos que habilitamos conexiones desde un host con la IP 192.168.1.3, para todas las bases de datos (all) y todos los usuarios (all). Desde este momento podremos conectar nuestro PgAdmin instalado en la máquina con IP 192.168.1.3 al servidor Postgre.

Si queremos algo más general podemos indicar una subred: 192.168.1.0/24 permitirá el acceso desde cualquier equipo de esa subred.

Después tendremos que indicar al servidor que escuche peticiones de cualquier dirección. Para ello editaremos el archivo postgres.conf y buscamos la línea listen_addresses. Debemos cambiar el valor: addresses = '*' para indicar que escuche desde cualquier dirección.

Por último no olvidéis reiniciar el servicio de PostgreSQL antes de intentar conectar en remoto. Un saludo

sábado, 3 de mayo de 2014

Galaxy S3: problema de muerte súbita y su solución

La comunidad de internautas y usuarios del Galaxy S3 ha llamado "muerte súbita" del Samsung Galaxy S3 a un problema que producía que el terminal simplemente dejase de funcionar (totalmente inerte). Después de muchas especulaciones, Samsung admitió que se trataba de una remesa de dispositivos con el chip de memoria eMMC MoviNAND VTU00M de 16GB con el firmware del 13/04/2012. El problema se ha detectado en drivers que controlan la durabilidad del chip y que generan su desactivación tras 180 días de uso.

¿Cómo detectar si mi terminal tiene ese chip?


Os recomendamos la siguiente aplicación: Compruebe eMMC Brickbug. Podéis descargarla directamente desde Google Play. Se trata de una sencilla aplicación muy ligera que detecta el chip de memoria utilizado en nuestro terminal y realiza un chequeo de memoria altamente recomendable.

Una vez instalada, iniciad la aplicación:


En el caso de nuestro terminal podemos observar que no está presente el chip y no hay riesgo de muerte súbita. Si tenéis acceso root al terminal podéis hacer la comprobación de memoria (recomendado). Si no tenéis acceso root tenéis un tutorial para obtenerlo aquí: http://alcasoft.blogspot.com.es/2013/03/rootear-samsung-galaxy-s3-con-cf-root.html


Si mi terminal tiene riesgo, ¿cómo solucionar el problema?


Samsung ha confirmado que el problema se ha corregido a partir del firmware XXELLA con Android 4.1.2. Tenéis disponible un tutorial aquí: http://alcasoft.blogspot.com.es/2013/03/flashear-galaxy-s3-y-odin-3.html

Esperamos vuestros comentarios, un saludo

viernes, 2 de mayo de 2014

Configurar FTP en Dreamweaver

A petición de uno de nuestros seguidores hemos realizado un sencillo tutorial sobre cómo configurar el acceso FTP en Dreamweaver. A pesar de la existencia de alternativas en software libre para el desarrollo web (Filezilla para la transferencia FTP y Eclipse, NetBeans, Notepad++, SublimeText, etc... para la edición del código), Dreamweaver goza de una gran popularidad debido a su posibilidad de edición en código y en WYSIWYG (o diseño visual) y su integración con el sistema de transferencia de archivos por FTP en el mismo programa.



Como ya hemos adelantado, vamos a explicar paso a paso la configuración del servidor remoto para la transferencia de datos FTP. Las capturas de pantalla pueden variar entre versiones del programa pero básicamente las opciones siguen siendo las mismas.


Requisitos previos


Debemos contar con el programa Adobe Dreamweaver debidamente licenciado y una cuenta FTP en el servidor remoto.


Configuración del FTP


En primer lugar iniciamos Dreamweaver y abrimos la ventana de Archivos (pulsando F8 o el menú Ventana > Archivos):


Sobre esta ventana pulsaremos en Administrar sitios y se abre la siguiente ventana con el listado de los sitios activos:


Pulsamos sobre el botón Nuevo, elegimos la opción Sitio y seleccionamos la pestaña Avanzadas


Aquí seleccionamos la opción FTP en el desplegable de acceso y rellenamos los siguientes datos:

  • Servidor FTP: la URL de nuestro servidor ftp (por ejemplo ftp.miservidor.com).
  • Directorio del servidor: ruta en la que se encuentra nuestra web (por ejemplo /public_html/nombre_web)
  • Usuario y contraseña de nuestra cuenta FTP. Con el botón Prueba podemos comprobar si todos los parámetros introducidos son correctos.
  • Utilizar FTP pasivo: en muchos alojamientos web es necesario tener esta casilla activada, consulta con el administrador de tu servidor (o si con la casilla desmarcada no supera la prueba de conexión prueba de nuevo con la casilla marcada).
Si todos los datos son correctos, Dreamweaver nos avisará con el siguiente cuadro de diálogo:


Subir archivos por FTP


Una vez configurado, volvemos a sitios y conectamos a nuestro servidor FTP pulsando el icono conexión:



Si se conecta correctamente el icono cambia a otro en el que los cables están enchufados y el led se ilumina en verde. En este momento podemos transferir archivos (subirlos o descargarlos) con el servidor FTP de varias maneras:

  • Seleccionando el archivo o carpeta de la lista y pulsando sobre los iconos de flecha verde descendente (obtener o descargar la versión que hay en el servidor local a nuestro disco duro) o el de la flecha azul ascendente (colocar o subir la versión del archivo de nuestro disco duro al servidor):

  • Si abrimos un archivo en el editor (haciendo doble clic sobre él desde la ventana archivo), se habilitan unos iconos equivalentes en el espacio de trabajo:

Al pulsarlos se despliega un menú con las opciones para obtener o colocar el archivo.

  • Existe otra opción con atajos de teclado cuando como en el caso anterior tenemos un archivo abierto desde el editor: CTRL + MAYS + U para colocar (upload) y CTRL + MAYS + D para obtener (download).

Como podéis comprobar es un proceso muy sencillo de llevar a cabo y una vez configurado muy cómodo para trabajar. En la otra cara de la moneda está el coste de la licencia de este software.



miércoles, 30 de abril de 2014

Airdroid: gestiona tu dispositivo desde un PC

Si no conocéis Airdroid seguro que muchos os animáis a probarlo después de leer el artículo. Se trata de una aplicación que nos permite gestionar nuestro terminal de forma remota desde cualquier dispositivo conectado a Internet (PC o Mac, tablet, otro smartphone...).


¿Qué puede hacer Airdroid por nosotros?


La pregunta correcta sería qué no puede hacer. Según las especificaciones del desarrollador, Airdroid permite:
  • Localizar el terminal (nuestro preferido). En caso de extravío o robo podemos localizar nuestro móvil.
  • Cámara: Mira a través del objetivo de la cámara delantera o trasera, también admite flash. Podemos utilizar el terminal como cámara de vigilancia, para tener controlado nuestro bebé o para ver dónde se encuentra el móvil en caso de extravío (incluso ver la cara de quien lo está utilizando con la cámara frontal!)
  • SMS: Envía y recibe mensajes individuales o en grupo. 
  • Aplicaciones: Importa y exporta archivos .apk.
  • Archivos: Gestiona archivos en Android y transfiere archivos entre Android y el ordenador.
  • Fotos: Visualiza y gestiona fotos en Android y transfiere entre Android y el ordenador.
  • Música y vídeos: Reproduce y gestiona música y vídeos en Android y transfiérelos entre Android y el ordenador. ¿Imaginas lo que puedes hacer conectando una smart TV?
  • Tonos de llamada: Estable música como tono de llamada y exporta cualquier tono.
  • Contactos: Visualiza y edita todos los contactos.
  • Capturas de pantalla: Visualiza la pantalla en tiempo real de dispositivos Android, haz capturas de pantalla estáticas. (Requiere permisos de root)
  • URL: Abre automáticamente las URL con el navegador de Android.
  • Portapapeles: Comparte el contenido del portapapeles entre Android y el ordenador.

¿Qué necesito?


Simplemente que el terminal Android esté conectado a Internet, instalar la aplicación y una cuenta en Airdroid.

Podemos instalarla desde Google Play: https://play.google.com/store/apps/details?hl=es&id=com.sand.airdroid


¿Cómo funciona?


Iniciamos la aplicación Airdroid en nuestro terminal:



Para controlarlo de forma remota lo haremos desde un navegador web y tenemos dos posibilidades:
  • Desde un equipo en la misma red local: al iniciar el programa nos aparece la URL con la IP local del dispositivo y el puerto de conexión (del tipo http://192.168.1.100:8888. En este caso no se activan funcionalidades como la localización del terminal.
  • Desde un equipo conectado a Internet podemos entrar en http://web.airdroid.com e iniciar sesión.


 Una vez iniciada sesión aparece el espacio de trabajo:


En nuestro caso estamos controlando un Galaxy S3. Os animamos a probar las opciones "Ubicar el terminal", "Fotos", transferir archivos...


¿Es todo gratis?


Como todo en la vida, algo tienen que sacar para soportar el proyecto. Hay algunas limitaciones de funcionalidad reservadas a la versión premium (cámara remota, marcación remota, soporte multidispositivo...) y otras de ancho de banda (la versión gratuita limita a 1GB mensual de tráfico remoto desde su web).



Esperamos que os resulte útil, un saludo.

Recomendaciones de Alcasoft