3/29/2013

Mostrar mensaje AlertDialog con lista de elementos para seleccionar Java Android

Mostrar mensaje AlertDialog con lista de elementos para seleccionar Java Android

3/22/2013

Mi primera aplicación Linux en C++ con Codelite Open Source



Cómo instalar Codelite en GNU Linux Ubuntu, cómo desarrollar el programa "hola mundo" en C++ usando el IDE Open Source Codelite.



Instalar Codelite en Linux Ubuntu Desktop

Para instalar Codelite en un equipo con GNU Linux Ubuntu Desktop 10.04 abriremos una ventana de terminal desde "Aplicaciones" - "Accesorios" - "Terminal":
Instalar Codelite en Linux Ubuntu Desktop
Agregaremos la clave con el comando linux:
sudo apt-key adv --fetch-keys http://repos.codelite.org/Codelite.asc
Consultaremos el nombre de la distribución exacto de Linux, lo necesitaremos para descargar el paquete apropiado. Para obtener el nombre de la distribución de Linux ejecutaremos el comando linux:
lsb_release -a
En nuestro caso anotaremos "Lucid" que es el codename de nuestra distribución Ubuntu 10.04:
Instalar Codelite en Linux Ubuntu Desktop
Añadiremos el repositorio con:
sudo apt-add-repository 'deb http://repos.codelite.org/ubuntu/ lucid universe'
Instalar Codelite en Linux Ubuntu Desktop
Actualizaremos la lista de paquetes con:
sudo apt-get update
Instalar Codelite en Linux Ubuntu Desktop
Y ya podremos instalar Codelite con el comando linux:
sudo apt-get install codelite
Instalar Codelite en Linux Ubuntu Desktop
Tras la instalación de Codelite podremos ejecutarlo desde "Aplicaciones" - "Programación" - "codelite":
Instalar Codelite en Linux Ubuntu Desktop
Y ya dispondremos de este IDE de desarrollo de aplicaciones C++ en Linux (también disponible para Windows) Open Source y gratuito:
Instalar Codelite en Linux Ubuntu Desktop

Mi primera aplicación para Linux en C++ con Codelite

Abriremos Codelte, accederemos al menú "Workspace" - "New Workspace" para crear un nuevo espacio de trabajo:
Mi primera aplicación para Linux en C++ con Codelite
Introduciremos un nombre para el Worspace, una carpeta donde se guardarán los proyectos y pulsaremos "Create":
Mi primera aplicación para Linux en C++ con Codelite
Ahora crearemos un nuevo proyecto en el Workspace, para ello pulsaremos con el botón derecho sobre el Workspace creado y seleccionaremos "Create New Project":
Mi primera aplicación para Linux en C++ con Codelite
Introduciremos el nombre del nuevo proyecto, la carpeta donde se guardarán los ficheros y el tipo de compilador, en nuestro caso C++:
Mi primera aplicación para Linux en C++ con Codelite
Desplegaremos en la parte izquierda nuestro proyecto hasta hacer doble clic sobre "main.c", en la parte derecha escribiremos el código C++:

include 

int main(int argc, char **argv)
  {
      printf("Hola Mundo - Mi primera aplicación C++ AjpdSoftn");
      return 0;
  }
Mi primera aplicación para Linux en C++ con Codelite
Para compilar nuestra aplicación y verficar la sintaxis pulsaremos en el menú "Build" - "Build Project":
Mi primera aplicación para Linux en C++ con Codelite
Si la sintaxis es correcta nos mostrará "No errors found":
Mi primera aplicación para Linux en C++ con Codelite
Ahora podremos ejecutar la aplicación desde el menú "Build" - "Run":
Mi primera aplicación para Linux en C++ con Codelite
Nos mostrará el resultado de la ejecución en una ventana de terminal de Linux:
Mi primera aplicación para Linux en C++ con Codelite

Artículos relacionados

Créditos

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

3/21/2013

Montar servidor de log gratuito con Rsyslog, MySQL y LogAnalyzer



Cómo montar un servidor de log gratuito usando Rsyslog en Linux Ubuntu Server, guardando los datos en MySQL. Mostramos cómo instalar LogAnalyzer para generar informes y realizar consultas sobre los log.



Servidor de log syslog

Syslog es un estándar desarrollado para el envío de mensajes de registro a una IP en una red LAN. Syslog hace referencia tanto al protocolo de red como a la aplicación o biblioteca que envía los mensajes de registro.
Los equipos y servicios con soporte para envío de log a este sistema pueden enviar cualquier tipo de mensaje, normalmente suelen enviar información sobre la seguridad del sistema, errores, avisos, etc. aunque pueden contener cualquier información. Junto con cada mensaje se incluye la fecha y hora del envío, el equipo que envía, la prioridad y otros datos adicionales.
El protocolo syslog consiste en un equipo servidor ejecutando el servidor de syslog, conocido como syslogd (demonio de syslog) y clientes que envían un pequeño mensaje de texto (de menos de 1024 bytes) a este servidor.
Los mensajes de syslog se suelen enviar vía UDP, por el puerto 514, en formato de texto plano. Algunas implementaciones del servidor, como syslog-ng, permiten usar TCP en vez de UDP, y también ofrecen Stunnel para que los datos viajen cifrados mediante SSL/TLS.
Aunque syslog tiene algunos problemas de seguridad, su sencillez ha hecho que muchos dispositivos lo implementen, tanto para enviar como para recibir. Eso hace posible integrar mensajes de varios tipos de sistemas en un solo repositorio central.
El mensaje enviado se compone de tres campos, entre todos no han de sumar más de 1024 bytes, pero no hay longitud mínima:
  • Prioridad: número de 8 bits que indica tanto el recurso (tipo de aparato que ha generado el mensaje) como la severidad (importancia del mensaje).
  • Cabecera: indica tanto el tiempo como el nombre del ordenador que emite el mensaje. Esto se escribe en codificación ASCII (7 bits), por tanto es texto legible. El primer campo, tiempo, se escribe en formato Mmm dd hh:mm:ss, donde Mmm son las iniciales del nombre del mes en inglés, dd, es el día del mes, y el resto es la hora. No se indica el año. Justo después viene el nombre de ordenador (hostname), o la dirección IP si no se conoce el nombre. No puede contener espacios, ya que este campo acaba cuando se encuentra el siguiente espacio.
  • Texto: lo que queda de paquete syslog al llenar la prioridad y la cabecera es el propio texto del mensaje. Éste incluirá información sobre el proceso que ha generado el aviso, normalmente al principio (en los primeros 32 caracteres) y acabado por un carácter no alfanumérico (como un espacio, ":" o "["). Después, viene el contenido real del mensaje, sin ningún carácter especial para marcar el final.
 

Requisitos para montar servidor de log gratuito con Rsyslog

Para montar un servidor de log con el estándar syslog usando el software gratuito Rsyslog necesitaremos un equipo (físico o virtual) con el sistema operativo GNU Linux, utilizaremos la distribución GNU Linux Ubuntu Server 12.01. Además, necesitaremos un servidor web y una base de datos. En este tutorial explicamos cómo guardar los log de Rsyslog en el motor de base de datos MySQL Server y cómo consultarlos mediante LogAnalyzer vía web por lo que necesitaremos un servidor web con Apache y PHP.
En el siguiente tutorial explicamos cómo instalar el sistema operativo GNU Linux Ubuntu Server 12.01 en un equipo nuevo (virtual o físico) con el paquete LAMP que instala automáticamente Apache + PHP + MySQL:
Si ya tenemos el servidor con Linux en los siguientes tutoriales explicamos cómo instalar MySQL y Apache en Linux:

Instalar Rsyslog en GNU Linux Ubuntu Server 12

A continuación vamos a explicar cómo instalar el servidor de log syslog gratuito Rsyslog en un equipo con Ubuntu Server 12, en primer lugar instalaremos la clave necesaria con el siguiente comando linux:
sudo apt-key adv --recv-keys --keyserver keyserver.ubuntu.com AEF0CF8E
Instalar Rsyslog en GNU Linux Ubuntu Server 12
A continuación editaremos el fichero sources.list y añadiremos una línea nueva, para ello ejecutaremos el comando linux:
sudo nano /etc/apt/sources.list
Añadiremos las siguientes líneas al final del fichero:
deb http://ubuntu.adiscon.com/v7-devel precise/
deb-src http://ubuntu.adiscon.com/v7-devel precise/
Guardaremos los cambios pulsando Control + O y cerraremos la edición pulsando Control + X:
Instalar Rsyslog en GNU Linux Ubuntu Server 12
Actualizaremos el sistema y la lista de paquetes con el comando linux:
sudo apt-get update && sudo apt-get upgrade
Instalar Rsyslog en GNU Linux Ubuntu Server 12
Tras concluir la actualización instalaremos Rsyslog con el comando linux:
sudo apt-get install rsyslog
No solicitará confirmación para instalar, pulsaremos la tecla "s" e INTRO:
Instalar Rsyslog en GNU Linux Ubuntu Server 12
Ahora instalaremos el soporte de Rsyslog para bases de datos MySQL con el comando linux:
install rsyslog-mysql
Instalar Rsyslog en GNU Linux Ubuntu Server 12
El asistente para instalar el paquete nos preguntará si queremos configurar la base de datos para rsyslog-mysql con dbconfig-common, seleccionaremos "Sí" y pulsaremos INTRO:
Instalar Rsyslog en GNU Linux Ubuntu Server 12
Con el texto: Es necesario tener una base de datos instalada y configurada para rsyslog-mysql antes de poder utilizarlo. Puede gestionar esto opcionalmente a través de "dbconfig-common". Si ud. es un administrador de bases de datos avanzado o si la base de datos ya está instalada y configurada quizás quiera realizar esta configuración manualmente, y debería rechazar esta opción. Probablemente podrá encontrar los detalles de las operaciones que debe realizar en "/usr/share/doc/rsyslog-mysql".
Introduciremos la contraseña del superusuario root de MySQL Server, el paquete rsyslog-mysql deberá acceder a MySQL y crear un usuario, un catálogo y las tablas correspondientes:
Instalar Rsyslog en GNU Linux Ubuntu Server 12
Introduciremos ahora la contraseña para que rsyslog-mysql acceda al servidor de MySQL:
Instalar Rsyslog en GNU Linux Ubuntu Server 12
Confirmamos la contraseña:
Instalar Rsyslog en GNU Linux Ubuntu Server 12
El asistente creará los ficheros de configuración necesarios, el usuario, catálogo y tablas en MySQL:
Instalar Rsyslog en GNU Linux Ubuntu Server 12
Accediendo con MySQL Administrator, MySQL MySQL Workbench o cualquier software para acceder a MySQL como AjpdSoft Administración Bases de Datos podremos consultar el esquema creado por rsyslog-mysql "Syslog", las tablas "SystemEvents" y "SystemEventsProperties":
Instalar Rsyslog en GNU Linux Ubuntu Server 12
Y el usuario "rsyslog":
Instalar Rsyslog en GNU Linux Ubuntu Server 12
El systema Rsyslog ya habrá empezado a guardar los eventos de log en MySQL, podremos consultarlos con MySQL Administrator pulsando sobre la tabla "SystemEvents" con el botón derecho del ratón y seleccionando "Edit Table Data":
Instalar Rsyslog en GNU Linux Ubuntu Server 12
Se abrirá MySQL Query Browser y mostrará los registros de log que Rsyslog ya ha guardado en la tabla:
Instalar Rsyslog en GNU Linux Ubuntu Server 12
Las consultas SQL de creación de las dos tablas del catálogo Syslog de MySQL:
CREATE TABLE `SystemEvents` (
`ID` int(10) unsigned NOT NULL AUTO_INCREMENT,
`CustomerID` bigint(20) DEFAULT NULL,
`ReceivedAt` datetime DEFAULT NULL,
`DeviceReportedTime` datetime DEFAULT NULL,
`Facility` smallint(6) DEFAULT NULL,
`Priority` smallint(6) DEFAULT NULL,
`FromHost` varchar(60) DEFAULT NULL,
`Message` text,
`NTSeverity` int(11) DEFAULT NULL,
`Importance` int(11) DEFAULT NULL,
`EventSource` varchar(60) DEFAULT NULL,
`EventUser` varchar(60) DEFAULT NULL,
`EventCategory` int(11) DEFAULT NULL,
`EventID` int(11) DEFAULT NULL,
`EventBinaryData` text,
`MaxAvailable` int(11) DEFAULT NULL,
`CurrUsage` int(11) DEFAULT NULL,
`MinUsage` int(11) DEFAULT NULL,
`MaxUsage` int(11) DEFAULT NULL,
`InfoUnitID` int(11) DEFAULT NULL,
`SysLogTag` varchar(60) DEFAULT NULL,
`EventLogType` varchar(60) DEFAULT NULL,
`GenericFileName` varchar(60) DEFAULT NULL,
`SystemID` int(11) DEFAULT NULL,
PRIMARY KEY (`ID`) );

CREATE TABLE `SystemEventsProperties` (
`ID` int(10) unsigned NOT NULL AUTO_INCREMENT,
`SystemEventID` int(11) DEFAULT NULL,
`ParamName` varchar(255) DEFAULT NULL,
`ParamValue` text,
PRIMARY KEY (`ID`) );

De esta sencilla forma ya tendremos montado un servidor de log syslog con Rsyslog sobre Linux de forma gratuita y guardando los log en MySQL, por lo tanto podremos consultarlos desde cualquier aplicación que permita acceso a MySQL o bien usar algún software gratuito como LogAnalyzer.

Instalar LogAnalyzer para consulta vía web de los log de Rsyslog

Explicaremos ahora cómo instalar el sistema LogAnalyzer en nuestro servidor de log syslog que nos permitirá consultar vía web con un entorno amigable los eventos que Rsyslog registre en MySQL. Para ello en primer lugar crearemos una carpeta para la descarga temporal del paquete comprimido con:
sudo mkdir /tmp/loganalyzer
Buscaremos en la web oficial de LogAnalyzer la última versión y anotaremos la URL de la descarga, para descargar el fichero comprimido desde la consola de Linux Ubuntu Server accederemos a la carpeta creada para la descarga con:
cd /tmp/loganalyzer
Y descargaremos el fichero con:
wget http://download.adiscon.com/loganalyzer/loganalyzer-3.6.3.tar.gz
( cambiando la URL por la que corresponda a la versión actual)
Instalar LogAnalyzer para consulta vía web de los log de Rsyslog
Descomprimiremos el fichero descargado con el comando linux:
tar -xvf loganalyzer-3.6.3.tar.gz
Instalar LogAnalyzer para consulta vía web de los log de Rsyslog
Accederemos a la carpeta que se habrá creado al descomprimir con:
cd /tmp/loganalyzer/loganalyzer-3.6.3
Crearemos una subcarpeta dentro de la carpeta www de Apache de nuestro servidor web con:
sudo mkdir /var/www/loganalyzer
Ahora copiaremos el contenido de la carpeta "src" a la carpeta creada con:
sudo cp -R /tmp/loganalyzer/loganalyzer-3.6.3/src/* /var/www/loganalyzer
Instalar LogAnalyzer para consulta vía web de los log de Rsyslog
Repetiremos la operación para la carpeta "contrib":
sudo cp -R /tmp/loganalyzer/loganalyzer-3.6.3/contrib/* /var/www/loganalyzer
Instalar LogAnalyzer para consulta vía web de los log de Rsyslog
Estableceremos permisos de escritura para los ficheros configure.sh y secure.sh:
cd /var/www/loganalyzer
sudo chmod +x configure.sh secure.sh
Iniciaremos LogAnalyzer vía web desde cualquier PC de la red abriendo un navegador e introduciendo la URL:
http://192.168.31.156/loganalyzer
(cambiaremos "192.168.31.156 por la IP de nuestro servidor syslog)
Se iniciará LogAnalyzer, en el primer inicio dará un error al detectar que aún no ha sido configurado, pulsaremos en "here" para instalar Adisco LogAnalyzer:
Instalar LogAnalyzer para consulta vía web de los log de Rsyslog
Con el texto: Critical Error occured. Error, main configuration file is missing! Click here to Install Adiscon LogAnalyzer!
Se iniciará el asistente para configurar e instalar definitivamente LogAnalyzer, pulsaremos "Next":
Instalar LogAnalyzer para consulta vía web de los log de Rsyslog
El fichero config.php debe ser escribible, en el siguiente paso el asistente de instalación de LogAnalyzer lo comprobará, de no serlo deberemos establecerle los permisos apropiados con el comando linux chmod:
Instalar LogAnalyzer para consulta vía web de los log de Rsyslog
Introduciremos los datos de configuración, los importantes son:
  • Enable User database: marcaremos "Yes".
  • Database Host: IP o nombre DNS (hostname) del equipo servidor de syslog con MySQL.
  • Database Port: puerto de la base de datos MySQL, por defecto 3306.
  • Database Name: nombre del catálogo de MySQL que el asistente creará para LogAnalyzer, por ejemplo "loganalyzer".
  • Table prefix: prefijo que se añadirá al nombre de las tablas, esto es últil si queremos usar un catálogo ya existente, así separaremos por nombre las tablas de otras existentes.
  • Database User: usuario que se creará en la base de datos MySQL para uso de LogAnalyzer.
  • Database Password: contraseña para el usuario anterior.
  • Require user to be logged in: marcaremos "Yes".
  • Authentication method: seleccionaremos "Internal authentication".
El resto de parámetros son de visualización de los log, podremos modificarlos en cualquier momento:
Instalar LogAnalyzer para consulta vía web de los log de Rsyslog
A continuación el asistente para instalar LogAnalyzer nos indicará que se van a crear las tablas en el catálogo de MySQL elegido, pulsaremos "Next":
Instalar LogAnalyzer para consulta vía web de los log de Rsyslog
Si el proceso es correcto nos indicará las tablas creadas, pulsaremos "Next":
Instalar LogAnalyzer para consulta vía web de los log de Rsyslog
Introduciremos ahora los datos del usuario que se creará para acceder a LogAnalyzer:
Instalar LogAnalyzer para consulta vía web de los log de Rsyslog
Introduciremos ahora los datos de la fuente, LogAnalyzer permite analizar y consultar varios servidores de log con syslog, por lo que ahora crearemos el acceso a nuestro servidor de syslog con Rsyslog, para ello introduciremos los siguientes datos:
  • Name of the Source: nombre del origen, por ejemplo "Log AjpdSoft", este nombre se usará para diferenciar varios servidores de log con syslog.
  • Source Type: seleccionaremos "MYSQL Native".
  • Select View: seleccionaremos "Syslog Fields".
  • Table type: seleccionaremos "MonitorWare".
  • Database Host: introduciremos la IP o nombre DNS de nuestro servidor con Rsyslog y MySQL.
  • Database Name: introduciremos el nombre del catálogo que contiene las tablas de Rsyslog, por defecto "Syslog".
  • Database Tablename: nombre de la tabla con los eventos de Rsyslog en MySQL, por defecto "SystemEvents".
  • Database User: nombre de usuario de MySQL con permisos de acceso a las tablas de Rsyslog, por defecto "rsyslog".
  • Database Password: contraseña del usuario anterior.
  • Enable Row Counting: si vamos a tener un servidor de log con no demasiados eventos podremos marcar "Yes", si vamos a tener cientos de miles de eventos no es recomendable activar esta opción pues puede ralentizar el acceso.
De esta forma LogAnalyzer permite tener sus propias tablas alojadas en un servidor de MySQL diferente al de Rsyslog (o puede ser el mismo como en nuestro caso):
Instalar LogAnalyzer para consulta vía web de los log de Rsyslog
El proceso de instalación de LogAnalyzer habrá concluido:
Instalar LogAnalyzer para consulta vía web de los log de Rsyslog
Introduciendo la URL en un navegador:
http://192.168.31.156/loganalyzer
(cambiaremos "192.168.31.156 por la IP de nuestro servidor syslog)
Nos solicitará usuario y contraseña, introducimos el elegido en el proceso de instalación y pulsamos en "Login":
Instalar LogAnalyzer para consulta vía web de los log de Rsyslog
Y ya tendremos acceso a la consulta avanzada de los log generamos por nuestro servidor de syslog con Rsyslog desde LogAnalyzer:
Instalar LogAnalyzer para consulta vía web de los log de Rsyslog

 

Anexo

  • Si se produce el error: ERROR: At least one file or directory (or more) is not writeable, please check the file permissions (chmod 666)! al intentar instalar LogAnalyzer se deben revisar los permisos de la carpeta /var/www/loganalyzer, en concreto los de los ficheros configure.sh, secure.sh y config.php.
  • Si se poduce algún error de falta de permisos para algún usuario de MySQL tal vez sea necesario asignarle permisos, una forma para hacerlo es desde la línea de comandos de Linux, con los comandos:
mysql -u root -p
grant all privileges on Syslog.* to 'rsyslog'@'%' with grant option;
Establecer permisos para usuario MySQL

Artículos relacionados

 

Créditos

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

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.