3/19/2013

Servidor web con Ubuntu Server 12 y LAMP Server Apache PHP MySQL



Cómo instalar GNU Linux Ubuntu Server 12.10 x64 en un equipo nuevo con LAMP Server (Apache, PHP y MySQL). Mostramos en este tutorial cómo establecer una IP estática, cómo cambiar la contraseña del superusuario root, cómo acceder de forma externa mediante FileZilla usando Open SSH y cómo configurar MySQL para permitir acceso desde otros equipos de la red LAN.



Requisitos iniciales para montar servidor web con Apache, PHP, MySQL sobre Linux Ubuntu Server 12.10

Si montamos el servidor web con LAMP Server (Apache, PHP y MySQL) en una máquina virtual descargaremos el fichero ISO del sitio web oficial de Ubuntu, abriendo un navegador web y accediendo a la URL:
http://www.ubuntu.com/download/server
Elegiremos el que se ajuste a la arquitectura del servidor, en nuestro caso x64, por lo que elegiremos 64 bit y "Get Ubuntu 12.04 LTS".
Si vamos a instalar Ubuntu Server sobre un equipo físico será conveniente pasar el fichero ISO a DVD o bien a pendrive (lápiz de memoria) si nuestro servidor soporta arranque desde pendrive.
En los siguientes tutoriales explicamos cómo crear un DVD de arranque con una imagen ISO:
Y, además, necesitaremos arrancar desde el DVD por lo que tendremos que tener configurada correctamente la BIOS del equipo para la secuencia de arranque correcta (primero el DVD):

Instalar Linux Ubuntu Server 12.10 con LAMP Server Apache, PHP, MySQL y Open SSH

Tras introducir el DVD de Linux Ubuntu Server 12 (o crear la máquina virtual y arrancar con el fichero ISO) se iniciará el instalador de Linux Ubuntu Server 12.10, elegiremos el idioma para la instalación:
Instalar Linux Ubuntu Server 12.10 con LAMP Server Apache, PHP, MySQL y Open SSH
Seleccionaremos "Instalar Ubuntu Server" y pulsaremos INTRO:
Instalar Linux Ubuntu Server 12.10 con LAMP Server Apache, PHP, MySQL y Open SSH
Elegiremos el idioma de nuestra ubicación:
Instalar Linux Ubuntu Server 12.10 con LAMP Server Apache, PHP, MySQL y Open SSH
Elegiremos "No" en la siguiente opción que nos permite probar el modelo de teclado, normalmente no es necesario:
Instalar Linux Ubuntu Server 12.10 con LAMP Server Apache, PHP, MySQL y Open SSH
Elegiremos el país del teclado:
Instalar Linux Ubuntu Server 12.10 con LAMP Server Apache, PHP, MySQL y Open SSH
Elegiremos la distribución del teclado:
Instalar Linux Ubuntu Server 12.10 con LAMP Server Apache, PHP, MySQL y Open SSH
Introduciremos el nombre DNS de la máquina (hostname), será el nombre de red del equipo:
Instalar Linux Ubuntu Server 12.10 con LAMP Server Apache, PHP, MySQL y Open SSH
Introduciremos el nombre completo del usuario que se creará:
Instalar Linux Ubuntu Server 12.10 con LAMP Server Apache, PHP, MySQL y Open SSH
Introduciremos el nick con el que iniciaremos sesión para el usuario que se creará:
Instalar Linux Ubuntu Server 12.10 con LAMP Server Apache, PHP, MySQL y Open SSH
Introduciremos la contraseña para el usuario:
Instalar Linux Ubuntu Server 12.10 con LAMP Server Apache, PHP, MySQL y Open SSH
Repetiremos la contraseña:
Instalar Linux Ubuntu Server 12.10 con LAMP Server Apache, PHP, MySQL y Open SSH
Indicaremos si queremos que se cifre la carpeta personal del usuario que se creará:
Instalar Linux Ubuntu Server 12.10 con LAMP Server Apache, PHP, MySQL y Open SSH
Detectará la localización actual, si no es correcta podremos elegirla de una lista seleccionando "No", si es correcta selccionaremos "Sí" para continuar con la instalación de Linux Ubuntu:
Instalar Linux Ubuntu Server 12.10 con LAMP Server Apache, PHP, MySQL y Open SSH
Elegiremos el disco duro donde instalaremos Linux Ubuntu Server 12:
Instalar Linux Ubuntu Server 12.10 con LAMP Server Apache, PHP, MySQL y Open SSH
El sistema creará dos particiones en la unidad elegida, una para los datos con ext4 y otra swap (intercambio). Si estamos seguros de que no hay datos válidos en la unidad elegida seleccionaremos "Sí" para continuar con el particionamiento:
Instalar Linux Ubuntu Server 12.10 con LAMP Server Apache, PHP, MySQL y Open SSH
Si tenemos proxy en nuestra red podremos indicarlo a continuación, si no tenemos proxy pulsaremos INTRO para continuar:
Instalar Linux Ubuntu Server 12.10 con LAMP Server Apache, PHP, MySQL y Open SSH
A continuación podremos elegir el método de actualizaciones, en nuestro caso elegiremos "Instalar actualizaciones de seguridad automáticamente":
Instalar Linux Ubuntu Server 12.10 con LAMP Server Apache, PHP, MySQL y Open SSH
Marcaremos los programas a instalar, en este tutorial elegiremos "OpenSSH Server" y "LAMP Server":
Instalar Linux Ubuntu Server 12.10 con LAMP Server Apache, PHP, MySQL y Open SSH
Puesto que hemos elegido LAMP Server el sistema instalará MySQL Server, por lo que nos solicitará una contraseña para el usuario root de MySQL (no tiene nada que ver con el superusuario root de Linux Ubuntu Server):
Instalar Linux Ubuntu Server 12.10 con LAMP Server Apache, PHP, MySQL y Open SSH
Volveremos a introducir la contraseña para el usuario root de MySQL Server:
Instalar Linux Ubuntu Server 12.10 con LAMP Server Apache, PHP, MySQL y Open SSH
Elegiremos ahora "Sí" para que el asistente de instalación instale el cargador de arranque GRUB en el equipo, si sólo tenemos un sistema operativo es necesirio instalarlo de lo contrario el equipo no arrancará por si solo, si tenemos otros sistemas operativos y queremos mantener el arranque de estos elegiremos "No". En nuestro caso, puesto que es una instalación limpia en un PC nuevo elegiremos "Sí" para que instale el cargador GRUB:
Instalar Linux Ubuntu Server 12.10 con LAMP Server Apache, PHP, MySQL y Open SSH
Con los pasos anteriores la instalación de Linux Ubuntu Server 12 habrá concluido. Pulsaremos INTRO para realizar el primer inicio en Linux Ubuntu Server:
Instalar Linux Ubuntu Server 12.10 con LAMP Server Apache, PHP, MySQL y Open SSH
El equipo arrancará, introduciremos el usuario creado anteriormente y la contraseña y ya tendremos Linux Ubuntu Server 12.10 x64 instalado en nuestro equipo:
Instalar Linux Ubuntu Server 12.10 con LAMP Server Apache, PHP, MySQL y Open SSH
Si la instalación ha sido correcta, puesto que hemos instalado el paquete LAMP Server, podremos probar el servidor web Apache desde cualquier equipo de la red LAN abriendo un navegador e introduciendo en la URL la IP del servidor con Linux Ubuntu Server, nos mostrará esta página:
Instalar Linux Ubuntu Server 12.10 con LAMP Server Apache, PHP, MySQL y Open SSH

Tareas iniciales Linux Ubuntu Server: IP estática, contraseña root

Establecer IP estática en Linux Ubuntu Server

Una vez instalado Linux Ubuntu Server 12.10 x64, es muy conveniente, puesto que va a ser servidor web, que el equipo cuente con una IP estática y no dínamica establecida por DHCP que podría variar. Para establecer una IP estática introduciremos el siguiente comando Linux:
sudo nano /etc/network/interfaces
Establecer IP estática en Linux Ubuntu Server
Introduciremos las siguientes líneas en el fichero "interfaces" para establecer la IP estática:
auto eth0
iface eth0 inet static
address 192.168.1.100
netmask 255.255.255.0

network 192.168.1.255
broadcast 192.168.1.255
gateway 192.168.1.1
Establecer IP estática en Linux Ubuntu Server
Donde "address" será la IP estática para el servidor y "gateway" será la puerta de enlace.
Guardaremos los cambios en el fichero "interfaces" pulsando "Control" + "O" y cerraremos pulsando "Control" + "X".
Resetearemos la red para que se aplique el cambio de IP con los comandos Linux:
sudo ifdown -a
sudo ifup -a
Con el comando Linux ifconfig obtendremos la configuración de la red del equipo:
Establecer IP estática en Linux Ubuntu Server

Cambiar contraseña superusuario root Linux Ubuntu Server

Es recomendable establecer una contraseña para el superusuario root, para ello ejecutaremos el comando Linux:
sudo passwd root
Nos solicitará que introduzcamos la contraseña del usuario actual "ajpdsoft", luego la nueva contraseña para el superusuario root (dos veces):
Cambiar contraseña superusuario root Linux Ubuntu Server

Acceso con FileZilla Client mediante SSH a Linux Ubuntu Server

Si queremos acceder por FTP a nuestro servidor Linux Ubuntu Server desde cualquier equipo de la red incluso con otros sistemas operativos como Microsoft Windows 8 podremos hacerlo usando FileZilla Client. Puesto que hemos instalado Open SSH en el servidor Linux, será suficiente con abrir FileZilla Client e indicar los datos de acceso en una nueva conexión:
  • Servidor: IP del servidor.
  • Protocolo: seleccionaremos SFTP - SSH File Transfer Protocol.
  • Modo de acceso: "Normal".
  • Usuario: podremos usar el superusuario "root" al que previamente le hemos establecido la contraseña.
  • Contraseña: contraseña del usuario anterior.
Acceso con FileZilla Client mediante SSH a Linux Ubuntu Server
Como ejemplo, transferiremos una web en PHP a la carpeta de Apache de nuestro servidor web con Linux Ubuntu Server, en concreto a la carpeta /var/www:
Acceso con FileZilla Client mediante SSH a Linux Ubuntu Server

Configurar MySQL para permitir conexiones externas desde otros equipos de la LAN

Si necesitamos acceder a MySQL Server desde otros equipos de la red LAN con cualquier sistema operativo (Windows, Linux) podremos hacerlo siguiendo los siguientes pasos:
Desde el servidor con Linux Ubuntu Server y MySQL (instalado con el paquete LAMP Server) ejecutaremos el siguiente comando para editar el fichero de configuración de MySQL my.cnf:
sudo nano /etc/mysql/my.cnf
Buscaremos la línea "bind-address = 127.0.0.1 y la comentaremos añadiendo el carácter "#" (almoadilla) delante:
Configurar MySQL para permitir conexiones externas desde otros equipos de la LAN
Guardaremos los cambios en el fichero my.cnf pulsando "Control" + "O" y cerraremos la edición pulsando "Control" + "X".
Reiniciaremos el servicio de MySQL para que se apliquen los cambios con el comando:
sudo service mysql restart
Configurar MySQL para permitir conexiones externas desde otros equipos de la LAN
Ahora crearemos un usuario administrador para MySQL (es recomendable no usar root por motivos de seguridad). Para ello escribiremos el comando:
mysql -u root -p
Nos solicitará la contraseña del usaurio "root" de MySQL, contraseña que introdujimos en el proceso de instalación del LAMP Server. Una vez conectados a MySQL escribiremos los siguientes comandos:
create user 'adminajpdsoft'@'%' identified by 'contraseña';
grant all privileges on *.* to 'adminajpdsoft'@'%' with grant option;
Con los comandos anteriores habremos creado un usuario llamado "adminajpdsoft" con la contraseña "contraseña" y con todos los permisos para todos los esquemas de MySQL. Ahora podremos administrar MySQL desde cualquier equipo de la red usando por ejemplo MySQL Administrator o cualquier otro como MySQL Workbench o AjpdSoft Administración Bases de Datos, introduciremos el puerto (por defecto si no lo hemos cambiado será 3306), la IP del servidor, el usuario y la contraseña:
Configurar MySQL para permitir conexiones externas desde otros equipos de la LAN
Y ya tendremos acceso a nuestro servidor MySQL Server desde cualquier equipo incluso con cualquier sistema operativo:
Configurar MySQL para permitir conexiones externas desde otros equipos de la LAN

Como ejemplo podremos restaurar una base de datos que podríamos usar para un sitio web dinámico con Apache, PHP y MySQL (todos los componentes ya instalados por el paquete LAMP Server):
Configurar MySQL para permitir conexiones externas desde otros equipos de la LAN
La ventaja de este servidor Linux Ubuntu Server con LAMP Server es que sin apenas configuración podremos montar un servidor web profesional con CMS (Content Management System) como Joomla!, PHP-Nuke (ya en desuso), Drupal, PostNuke, Zikula, SilverStripe, Concrete5, cmsMadeSimple, etc. y otros sistemas que usan Apache+PHP+MySQL como blog (b2evolution, LifeType, sBolg, Workpress), CRM (Siwapp, SugarCRM), eLearning (ATutor, eFront, Mahara, Moodle, Omeka), Foros (Phorum, phpBB, Simple Machines Forum), Framework (CakePHP, CodeIgniter, Kohana, PEAR, Symfony, Zend Framework, galerías (Coppermine Photo Galery, Gallery 3, Zenphoto), microblogging (StatusNet), gestores de proyectos (Project, Feng Office, Mantis Bug Tracker, PHProject), social (elgg, LimeSuvey, Yourls), tiendas (Magento, Mibew Messenger, OpenCart, osCommerce, PrestaShop, Zen Cart), webmail (Atmail, Crystal Mail, Roundcube, SquirrelMail), wiki (DockuWiki, MediaWiki). Y por supuesto webs a medida con PHP + MySQL + Apache como indicamos en el siguiente tutorial:
El resultado de ejemplo en nuestro caso que hemos hecho una réplica de nuestro sitio web en el servidor Linux Ubuntu Server con LAMP Server (copiando los ficheros PHP e importando la bd de MySQL):
Configurar MySQL para permitir conexiones externas desde otros equipos de la LAN


Artículos relacionados


Créditos

Artículo realizado íntegramente por Alonsojpd, miembro del Proyecto AjpdSoft.

3/08/2013

Montar entorno de programación para Android con Eclipse en Windows 8



Cómo montar un entorno de desarrollo de aplicaciones para dispositivos smartphones y tables con Android usando el IDE de desarrollo Eclipse sobre un equipo con el sistema operativo Microsoft Windows 8 x64. Explicamos en este tutorial cómo preparar un entorno de programación de aplicaciones de forma muy rápida, descargando el Android SDK ADT Bundle for Windows, un kit con Eclipse y todo lo necesario para hacer aplicaciones para Android.


Requisitos para programar aplicaciones para Android en Windows 8

Equipo con Microsoft Windows 8

En primer lugar necesitaremos un equipo físico (o máquina virtual) con el sistema operativo Microsoft Windows 8 (válido para otros sistemas operativos de Microsoft). En los siguientes enlaces mostramos varios tutoriales para instalar Windows en equipos físicos y en equipos virtuales:

Java Runtime Environment (JRE)

Para que el IDE de desarrollo Eclipse funcione correctamente necesitaremos disponer en el equipo de JRE (Java Runtime Environment). Podremos descargar dicho componente gratuitamente desde la URL:
http://www.oracle.com/technetwork/java/javase/downloads/index.html
Elegiremos el instalable que se ajuste a la arquitectura de nuestro equipo y al sistema operativo, en nuestro caso, puesto que estamos instalando todo para 64 bits (x64) elegiremos Windows x64 (jdk-7u17-windows-x64.exe), instalaremos Java SE Developmen Kit que incluye Java Development Kit (JDK) y Java Runtime Environmen (JRE):
Java Development Kit (JDK) y Java Runtime Environment (JRE)
Ejecutaremos el fichero descargado para iniciar la instalación de JDK y JRE:
Java Development Kit (JDK) y Java Runtime Environment (JRE)
Si tenemos activado el UAC (Control de cuentas de usuario) en Windows 8 pulsaremos "Sï" a la pregunta de seguridad:
Java Development Kit (JDK) y Java Runtime Environment (JRE)
Se iniciará el asistente para instalar Java SE Deveolopment Kit, pulsaremos "Next":
Java Development Kit (JDK) y Java Runtime Environment (JRE)
Elegiremos los componentes a instalar (Developmen Tools, Source Code, Public JRE), la ubicación de los ficheros de instalación y pulsaremos "Next":
Java Development Kit (JDK) y Java Runtime Environment (JRE)
Elegiremos la carpeta donde se instalará JRE y pulsaremos "Next":
Java Development Kit (JDK) y Java Runtime Environment (JRE)
Una vez instalado JDK y JRE pulsaremos "Close" en el asistente de instalación:
Java Development Kit (JDK) y Java Runtime Environment (JRE)
En el caso de iniciar Eclipse sin tener instalado JRE mostrará este mensaje de error:
---------------------------
Eclipse
---------------------------
A Java Runtime Environment (JRE) or Java Development Kit (JDK)
must be available in order to run Eclipse. No Java virtual machine
was found after searching the following locations:
C:UsersajpdsoftDesktopadt-bundle-windows-x86_64-20130219adt-bundle-windows-x86_64-20130219eclipsejrebinjavaw.exe
javaw.exe in your current PATH
---------------------------
Aceptar
---------------------------

IDE de desarrollo Eclipse y Android SDK ADT Bundle

Para montar el entorno de desarrollo de forma rápida y sin tener que instalar prácticamente nada en nuestro equipo Windows 8 podremos descargar el Android SDK ADT Bundle for Windows desde el sitio web oficial:
http://developer.android.com/sdk/index.html
IDE de desarrollo Eclipse y Android SDK ADT Bundle
Dicho paquete contiene:
  • Eclipse.
  • ADT plugin para Eclipse.
  • Android SDK Tools.
  • Android Platform-tools.
  • Android platform.
  • Android system image for the emulator.
Leeremos los términos de licencia, si estamos de acuerdo marcaremos "I have read and agree with the adove terms and condicions, seleccionaremos "64-bit" en nuestro caso y pulsaremos "Download the SDK ADT Bundle for Windows":
IDE de desarrollo Eclipse y Android SDK ADT Bundle
Una vez descargado el fichero adt-bundle-windows-x86_64-20130219.zip lo descomprimiremos (en Windows 8 pulsando con el botón derecho del ratón sobre él y seleccionando "Extraer todo":
IDE de desarrollo Eclipse y Android SDK ADT Bundle
Copiaremos la carpeta extraída a la ubicación donde queramos que resida la aplicación, por ejemplo a C:/Eclipse. Ahora ya podremos ejecutar el IDE Eclipse con todo lo necesario para desarrollar aplicaciones para Android, ejecutando el fichero "eclipse.exe":
IDE de desarrollo Eclipse y Android SDK ADT Bundle
Si el JRE está correctamente instalado se iniciará el IDE Eclipse con Android Developer Tools:
IDE de desarrollo Eclipse y Android SDK ADT Bundle
En el primer inicio nos solicitará la carpeta para el espacio de trabajo (Workspace). Indicaremos la carpeta y pulsaremos "OK":
IDE de desarrollo Eclipse y Android SDK ADT Bundle
Si queremos enviar estadísticas de uso anónimas a Google pulsaremos "Yes", en caso contrario pulsaremos "No":
IDE de desarrollo Eclipse y Android SDK ADT Bundle
Es recomendable actualizar el IDE Eclipse a la última versión, para ello pulsaremos en el menú "Help" - "Check for Updates":
IDE de desarrollo Eclipse y Android SDK ADT Bundle
Para actualizar Android SDK y para instalar nuevos componentes pulsaremos en el menú "Windows" - "Android SDK Manager":
IDE de desarrollo Eclipse y Android SDK ADT Bundle
Elegiremos los componentes a instalar y los que queramos actualizar y pulsaremos "Install packages":
IDE de desarrollo Eclipse y Android SDK ADT Bundle
Si algún paquete requiere de aceptación de términos de licencia nos lo indicará, en nuestro caso hemos instalado "Samples for SDK API 17, revision 1", "Google AdMob Ads SDK, revision 9", "Google USB Driver, revision 7" y "Google Web Driver, revision 2". Marcaremos "Accept License" y pulsaremos "Install":
IDE de desarrollo Eclipse y Android SDK ADT Bundle

 

Agregar dispositivo virtual Android Virtual Device en Eclipse

Agregaremos también un dispositivo virtual (Android Virtual Device) que será el que usemos para ejecutar las aplicaciones en desarrollo y ver cómo quedan y cómo funcionan. De esta forma no necesitaremos estar pasando la aplicación contínuamente a un dispositivo smartphone físico con Android, podremos realizar las compilaciones que queramos en el dispositivo virtual que, a todos los efectos, es similar al físico. Para agregar un nuevo dispositivo virtual pulsaremos en el menú "Window" - "Android Virtual Device Manager":
IDE de desarrollo Eclipse y Android SDK ADT Bundle
En la pestaña "Android Virtual Device" pulsaremos en "New":
IDE de desarrollo Eclipse y Android SDK ADT Bundle
Elegiremos las características del dispositivo virtual (nombre, device, tipo de CPU, teclado, memoria RAM, tarjeta de memoria, etc.:
IDE de desarrollo Eclipse y Android SDK ADT Bundle
Ya tendremos creado el dispositivo virtual que podremos usar para probar nuestras aplicaciones las veces que necesitemos.

Mi primera aplicación para Android desde Windows 8 con Eclipse

Una vez descargado e instalado Eclipse y los componentes que necesita podremos crear aplicaciones para dispositivos Android. Para crear la aplicación "Hola mundo" abriremos Eclipse, pulsaremos en el menú "File" - "New" - "Android Application Project":
Mi primera aplicación para Android desde Windows 8 con Eclipse
Introduciremos los datos para la nueva aplicación Android, en nuestro caso crearemos la típica aplicación "Hola mundo":
Mi primera aplicación para Android desde Windows 8 con Eclipse
Indicaremos si queremos crear un icono personalizado y la activity:
Mi primera aplicación para Android desde Windows 8 con Eclipse
Indicaremos las propiedades del icono (o el texto) y fondo de nuestra aplicación Android:
Mi primera aplicación para Android desde Windows 8 con Eclipse
Si queremos que el asistente nos cree una activity inicial para nuestra aplicación marcaremos "Create Activity" e indicaremos el tipo de activity (Blan Activity, Fullscreen Activity, Master/Detail Flow"). En nuestro caso puesto que estamos simplificando al máximo el proceso de creación de una aplicación Android dejaremos "Blank Activity" y pulsaremos "Next":
Mi primera aplicación para Android desde Windows 8 con Eclipse
Indicaremos el nombre para la activity, el nombre del Layout y el tipo de navegación (dejaremos "None"):
Mi primera aplicación para Android desde Windows 8 con Eclipse
El asistente nos creará toda la estructura base de nuestra aplicación Android (activity, Layout, ficheros .java, etc.). Ahora podremos compilarla directamente y mostrarla en nuestro dispositivo virtual. Para ello seleccionaremos la carpeta de nuestra aplicación en el árbol de exploración de la izquierda y pulsaremos en el menú "Run" - "Run As" - "Android Application":
Mi primera aplicación para Android desde Windows 8 con Eclipse
Una vez arrancado el dispotivo Eclipse instalará la aplicación en él de forma automática y podremos testearla como si de un dispositivo Android físico se tratase:
Mi primera aplicación para Android desde Windows 8 con Eclipse

Artículos relacionados


Créditos

Artículo realizado íntegramente por Alonsojpd miembro fundador del Proyecto AjpdSoft.