Google+

30 marzo 2014

Instalar LAMP en Ubuntu

Cómo instalar LAMP en Ubuntu

Instalar LAMP (Linux Apache MySQL PHP) en Ubuntu es muy sencillo.
El procedimiento se divide en tres partes: Instalar y probar Apache, instalar y probar PHP y finalmente instalar el gestor de base de datos MySQL.

Apache

Instalación
En un terminal, teclea:
sudo apt-get install apache2
Listo, ya tienes instalado Apache 2 en tu máquina.
El servidor web será iniciado automáticamente cuando arranques la máquina. En caso de tener que iniciarlo en forma manual, teclea el siguiente comando en un terminal:
sudo service apache2 start
Para detener el servicio:
sudo service apache2 stop
Y para reiniciarlo
sudo service apache2 restart
El directorio donde tienes que almacenar tus sitios web es: /var/www
Para poder hacerlo, es necesario otorgar a tu usuario los privilegios necesarios. El siguiente comando suele ser el adecuado en la mayoría de los casos, aunque eso puede variar dependiendo del grado de seguridad que necesites en tu servidor web:
sudo chmod -R 775 /var/www
Prueba
Teclea http://localhost en tu explorador web. Deberías ver una página de Apache.

PHP

Instalación
En un terminal, teclea el siguiente comando:
sudo apt-get install php5 libapache2-mod-php5 php5-cli php5-mysql
Reinicia Apache con:
sudo service apache2 restart
Prueba
Para probar que se haya instalado correctamente, vamos a crear un script PHP muy simple:
sudo gedit /var/www/prueba.php
Teclea el siguiente contenido y guarda el archivo:
<?php
 phpinfo();
 ?>
Para ejecutar el script, abre tu explorador web y accede a la siguiente URL:http://localhost/prueba.php. Deberías ver  una página con información sobre tu instalación de PHP.

MySQL

Instalación
Teclea el siguiente comando en un terminal:
sudo apt-get install mysql-server mysql-client libmysqlclient-dev
Durante el proceso de instalación te va a pedir que asignes la contraseña al usuario root de MySQL.
Contraseña de root para MySQL
Prueba
Ingresa lo siguiente en un terminal:
sudo service mysql status
Debería devolver algo sobre el estado del proceso mysql.
Para verificar que la contraseña funciona bien:
mysql -uroot -pxxx
Donde xxx es la contraseña que ingresaste durante la instalación de MySQL.
Si quieres cambiar la contraseña del root, ejecuta el siguiente comando después de ingresar a MySQL:
SET PASSWORD FOR 'root'@'localhost' = PASSWORD('yyy');
Sustituyendo yyy por tu nueva contraseña.

MariaDB

Hay cada vez más gente prefiere utilizar MariaDB en vez de MySQL. Cabe destacar que MariaDB tiene una alta compatibilidad con MySQL, ya que posee las mismas órdenes, interfaces, APIs y bibliotecas, siendo su objetivo poder cambiar un servidor por otro directamente. Esto es así porque MariaDB es un fork directo de MySQL, con la diferencia de que posee una licencia GPL, a diferencia de MySQL que, tras la compra de Sun por parte de Oracle, cambió de licencia por una de tipo privado.
Veamos cómo instalar MariaDB, en lugar de MySQL.
Instalación
En caso de que hayas instalado MySQL previamente, primero hay que desinstalarlo:
sudo apt-get purge mysql*
sudo apt-get autoremove
Luego, hay que agregar el PPA correspondiente. En el caso de Ubuntu 13.10:
sudo apt-get install software-properties-common
sudo apt-key adv --recv-keys --keyserver hkp://keyserver.ubuntu.com:80 0xcbcb082a1bb943db
sudo add-apt-repository 'deb http://mariadb.biz.net.id//repo/5.5/ubuntu saucy main
E instalar los paquetes:
sudo apt-get update 
sudo apt-get install mariadb-server mariadb-client
Va a pedir la contraseña del usuario root, al igual que MySQL.
Prueba
Para verificar la correcta instalación de MariaDB:
mysql -v
Debería devolver información sobre MariaDB.
Para verificar el estado del proceso de mariadb:
sudo service mysql status

Acceso remoto a la base de datos

Si quieres acceder a MySQL por medio de scripts remotos (es decir, no albergados en tu propio servidor) tienes que editar el bind-address en /etc/mysql/my.cnf y reemplazar el valor que trae por defecto (127.0.0.1) por tu dirección IP.
Luego de realizar el cambio en my.cnf, reinicia MySQL con:
sudo service mysql restart

phpMyAdmin

phpMyAdmin es un administrador gráfico para MySQL muy utilizado por los admins. Para instalarlo teclea en un terminal:
sudo apt-get install phpmyadmin
Para acceder a el accede a la siguiente URL desde tu explorador web:http://localhost/phpmyadmin
No olvides presionar la barra espaciadora en la pantalla de configuración para seleccionar a Apache2 como el servidor web que deseamos configurar automáticamente.
Si no puedes acceder al phpmyadmin, intenta crear un enlace simbólico en la carpeta www, así:
sudo ln -s /usr/share/phpmyadmin /var/www/

gd library

Si quieres agregar soporte para la generación y manipulación de gráficos en PHP, escribe en un terminal:
sudo apt-get install php5-gd

SSL en Apache 2

Para activar el módulo SSL (Secure Socket Layer) en Apache 2, ingresa en un terminal:
sudo a2enmod ssl
Para ver los cambios, no olvides reiniciar Apache2 con:
sudo /etc/init.d/apache2 restart
Fuentes: Lobotuerto & Unixmen

Instalación de Apache en Linux (Ubuntu)

El Servidor Web Apache 

El servidor web apache es una de las aplicaciones estrella del mundo Linux. Es el servidor web más implantado entre los distintos servidores que ofertan servicios web en Internet. 

Entre las características más significativas destacamos: 

  • Es modular 
  • Capacidad para crear servidores virtuales 
  • Capacidad para crear servidores seguros https 
  • Capacidad para crear sitios privados 
  • En este curso haremos uso de éstas y otras características de apache. 

Organización del sitio web 

La organización que realizaremos de nuestro servidor Apache, será la clásica en los sistemas Unix: la página web de la intranet se almacenará en la carpeta raíz del servidor web, las páginas de los usuarios se almacenarán en la carpeta home de cada usuario y para albergar las páginas web de los distintos departamentos, lo más práctico es crear nuevos usuarios con el nombre del departamento. 

Instalación de Apache2 

Disponer de un servidor web nos permitirá alojar nuestras propias páginas y aplicaciones web de forma que den servicio tanto desde dentro de la intranet como desde Internet. Serán la base que facilitará el acceso a la información. 

apt-get install apache2 

Con lo cual se instalarán los archivos necesarios para que funcione nuestro servidor web. Se instalará apache v2. 


Configuración de Apache 

Los archivos de configuración de apache2 se encuentran en la carpeta /etc/apache2. El archivo principal de configuración es /etc/apache2/apache2.conf. Antes de realizar cualquier cambio en este archivo, es conveniente realizar una copia de seguridad del mismo ya que si apache encuentra algún error en el archivo de configuración, no arrancará. 

Se pueden configurar infinidad de parámetros. Aquí, para poner en marcha el servidor, editaremos el archivo apache2.conf y añadiremos únicamente el siguiente parámetro: 

ServerName www.iescesarmanrique.com 

Para que los PCs de la red local sepan que www.iescesarmanrique.com es nuestro servidor web, debemos crear una entrada 'www' hacia su dirección IP en el servidor DNS. Si no, no quedará más remedio que acceder utilizando la dirección IP del servidor. 


Arranque y parada del servidor web apache 

El servidor web apache2, al igual que todos los servicios en Debian, dispone de un script de arranque y parada en la carpeta /etc/init.d.

// Arrancar o reiniciar el servidor apache2 
/etc/init.d/apache2 restart 

// Parar el servidor apache 
/etc/init.d/apache2 stop 

Consultar la versión instalada 

/usr/sbin/apache2 -v 

Espacio web para la Intranet 

Por defecto, la carpeta raiz del servidor web es la carpeta /var/www. Todos los documentos que se encuentren dentro de la carpeta raíz del servidor web, serán accesibles vía web. Dentro del raiz de documentos crearemos la página web de nuestra intranet. 

Carpeta principal del servidor web (DocumentRoot) 

- Carpeta raíz del servidor web: /var/www 
- Acceso a la web principal: http://ip-del-servidor ó http://nombre-del-servidor 

Para acceder vía web a la página almacenada en la carpeta raíz del servidor, desde un navegador debemos acceder directamente con la dirección IP a: http://ip-del-servidor o bien utilizando el nombre del mismo si tenemos el DNS funcionando: http://nombre-del-servidor. Solamente si no tenemos el DNS funcionando, podemos añadir el nombre y la IP en /etc/hosts para resolver localmente. 

Desde el navegador debe aparecer un mensaje como el siguiente: 

It works! 

Lo que siempre funcionará es ir con la dirección IP. Ejemplo, si la dirección IP de nuestro servidor fuera 192.168.1.239, podemos ir con el navegador a la dirección http://192.168.1.239 y obtendremos el mismo resultado. Podemos personalizar nuestra página modificando el archivo index.html que hay dentro de la carpeta /var/www. 

Archivos y directorios de configuración 

Los archivos de configuración más utilitzados son: 

/etc/apache2/apache2.conf 
/etc/apache2/ports.conf 

La carpeta que contiene todas la webs disponibles esta en: 

/etc/apache2/sites-available 

Los enlaces simbólicos que habilitan las páginas web estan en el directorio: 

/etc/apache2/sites-enabled 

Cofiguración de los VirtualHost 

Toda la configuración de carpetas, nombres y puertos que puede el servidor mostrar se establece en el directorio /etc/apache2/sites-available/ 

En el directorio /etc/apache2/sites-enabled deberan estar los enlaces simbólicos a los sitos web que estan habilitados, o sea los enlaces simbolicos a la carpeta /etc/apache2/sites-available/ 

Por defecto el fichero de configuración es /etc/apache2/sites-available/default y su contenido debe ser algo parecido a : 

<VirtualHost *:80> 
ServerAdmin webmaster@localhost 
DocumentRoot /var/www/ 
<Directory /> 
Options FollowSymLinks 
AllowOverride None 
</Directory> 
<Directory /var/www/> 
Options Indexes FollowSymLinks MultiViews 
AllowOverride None 
Order allow,deny 
allow from all 
</Directory> 
ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/ 
<Directory "/usr/lib/cgi-bin"> 
AllowOverride None 
Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch 
Order allow,deny 
Allow from all 
</Directory> 
ErrorLog /var/log/apache2/error.log 
# Possible values include: debug, info, notice, warn, error, crit, 
# alert, emerg. 
LogLevel warn 
CustomLog /var/log/apache2/access.log combined 
Alias /doc/ "/usr/share/doc/" 
<Directory "/usr/share/doc/"> 
Options Indexes MultiViews FollowSymLinks 
AllowOverride None 
Order deny,allow 
Deny from all 
Allow from 127.0.0.0/255.0.0.0 ::1/128 
</Directory> 
</VirtualHost> 

En la carpeta /etc/apache2/sites-enabled creamos el enlace: 

ln -s /etc/apache2/sites-available/default /etc/apache2/sites-enabled/default 

Para que el apache2 cargue esta configuración se debe indicar el el fichero de configuración :

/etc/apache2/apache2.conf. Se debe añadir/descomentar al final del fichero apache2.conf la línea: 

Include /etc/apache2/sites-enabled/ 

Opcionalmente podemos copiar la carpeta /var/www/apache-default a la carpeta /var/www/ 

Dominios Virtuales 

Para que funcionen varios dominios virtuales en un host que tiene asociado los dominios a una única IP se debe utilizar la cláusula NameVirtualHost y VirtualHost. 

En /etc/apache2/sites-available vamos a tener un archivo por cada uno de nuestros sitios, que luego serán enlazados dinámicamente desde /etc/apache2/sites-enabled 

Cada uno de estos archivos (relacionados con cada sitio) van a vincular el contenido real del sitio web. 

Vamos a los bifes, tengo dos dominios: 

- www.uno.com 
- www.dos.com 

El dominio uno.com debe aceptar las consultas al puerto 80 pero redirigirlas al puerto 8080. El segundo, funciona solo en el puerto 8080. 

Creamos estos dos archivos y los enlazamos como dijimos: 
/etc/apache2/sites-available# touch www.uno.com /etc/apache2/sites-available# touch www.dos.com /etc/apache2/sites-available#cd ../sites-enabled /etc/apache2/sites-enabled#ln -s ../sites-available/www.uno.com uno /etc/apache2/sites-enabled#ln -s ../sites-available/www.dos.com dos 
Vamos a encontrar bajo este directorio también un archivo que es el que trae apache por defecto, este es el famoso It works!. 

Antes de ver cómo configurar cada uno de estos dominios vale la pena aclarar que la cláusula NameVirtualHost debe ir en uno solo de los archivos que se encuentren en /sites-available/ , esto le indica a apache que se están utilizando varios hostvirtuales. En nuestro caso lo vamos a incluir en www.uno.com pero podría ir en cualquiera. 

Ahora sí, veamos lo que ponemos en www.uno.com: 

NameVirtualHost *:80 NameVirtualHost *:8080 <VirtualHost *:80> 
ServerName www.uno.com 
ServerAlias uno.com 
DocumentRoot /var/www/sitiouno 
<Directory /var/www/sitiouno> 
AllowOverride All 
Options MultiViews Indexes SymLinksIfOwnerMatch 
Allow from All 
</Directory> 
# Redirigir a https 
RewriteEngine On RewriteRule ^(.*)$ https://www.dos.com$1 [R,L] 
</VirtualHost> 

Ahora veamos el contenido del sitio www.dos.com 

<VirtualHost *:8080> ServerName www.dos.com ServerAlias dos.com DocumentRoot/var/www/sitiodos<Directory /var/www/sitiodos> 
AllowOverride All 
Options MultiViews Indexes SymLinksIfOwnerMatch 
Allow from All 
</Directory> </VirtualHost> 
Solo queda reiniciar el apache2 y listo 

Espacio web para cada usuario 

Cada usuario del sistema dispondrá de un espacio web que se almacena dentro de su carpeta home en una carpeta llamada 'public_html'. Si dicha carpeta no existe, el propio usuario puede crearla y copiar dentro de ella su página web. Los permisos recomendados para carpetas son 655 para que el 'grupo' y el 'resto' de usuarios tengan acceso de lectura y así se puedan visualizar las páginas. 

Para acceder vía web a la página de un usuario, desde un navegador debemos acceder directamente con la dirección IP a: http://ip-del-servidor/~login-usuario/ 

El caracter '~'comúnmente conocido como gusanillo y que se obtiene con Alt Gr + 4 sirve para indicar a apache que debe servir la página desde el home del usuario (en Linux el 'gusanillo' equivale a la carpeta home). Ejemplo, si hemos creado un usuario javier y éste ha creado la carpeta /home/javier/public_html y ha copiado en ella su página web, desde cualquier PC de la red podremos acceder a dicha carpeta yendo a la dirección http://ip-del-servidor/~javier/. Para que la página aparezca automáticamente, es necesario crear un archivo llamado index.html.

Carpetas web de los usuarios 
- Carpeta web de javier: /home/javier/public_html 
- Acceso a la web de javier: http://ip-del-servidor/~javier/ 
Para configurar el apache para habilitar el espacio web para usuarios se puede hacer de dos maneras. La primera creando los enlaces simbólicos: 

cd /etc/apache2/mods-enabled 
ln -s ../mods-available/userdir.conf userdir.conf 
ln -s ../mods-available/userdir.load userdir.load 

Segunda simplemente ejecutando 

a2enmod userdir 

Sólo nos quedará reiniciar el apache 

/etc/init.d/apache2 restart 

Espacio web para los departamentos 

Para proporcionar espacio web a los departamentos, lo más sencillo es crear un usuario para cada departamento. Podemos crear los usuarios: compras, produccion (sin acentos), etc... Al igual que cada usuario del sistema, dispondrán de un espacio web dentro de su carpeta home en una carpeta llamada 'public_html'. Si dicha carpeta no existe, habrá que crearla y copiar dentro de ella la página web del departamento. 

Para acceder vía web a la página del departamento, desde un navegador debemos acceder directamente con la dirección IP a: http://ip-del-servidor/~departamento. Ejemplo, si hemos creado un usuario compras y hemos creado la carpeta /home/compras/public_html y copiado en ella la web del departamento de compras, desde cualquier PC de la red podremos acceder a dicha web yendo a la dirección http://ip-del-servidor/~compras. Para que la página aparezca automáticamente, es necesario crear un archivo llamado index.html. 

Carpetas web de los departamentos 

- Carpeta web del dpto. de compras: /home/compras/public_html 
- Acceso a la web de dpto. de compras: http://ip-del-servidor/~compras/ 

De la misma manera, se pueden crear usuarios para proporcionar espacio web a otros órganos, p.ej: equipodirectivo, conserjeria, etc... para que dispongan de su propio espacio web. 

Admisión y Matrícula curso 2014 - 2015






Se abre el plazo de admisión y matrícula del alumnado (prematrícula) para el curso 2014-2015. La Consejería de Educación ha publicado la resolución al respecto junto con todos los anexos, en una página de su webEl plazo de prematrícula es del 10 de abril al 9 de mayo. De todas formas, te dejamos aquí, calendario y solicitudes por nivel educativo:

10 marzo 2014

Remote monitoring with gkrellm

As you know, I have several systems running at home (physical and virtual machines).
I was looking for a way to “see” quickly any bottleneck, or any unusual activity on those systems from my laptop.
My first reaction was to go for a gnome-like system monitor (gnome-system-monitor).
Despite all criticisms I could read, it was showing me all necessary information, especially real-time graphs for CPU, Memory, and Network.
But when I launched them remotely (through an SSH session, and with the appropriate DISPLAY forwarding option), it showed clearly that it was consuming around 4Mb/s of Network bandwidth just to display… itself !
So, I googled a little bit, and I rediscovered a tool I used to install a long time ago : gkrellm

Local install

From my laptop (ubuntu), installation is very easy :
sudo apt-get install gkrellm
And starting it is also very simple:
gkrellm
Then, I slightly configured it.
There are plenty of options, I tried to adjust them to my needs, as much as possible (I’m still using conky for my own laptop, so I was not looking for a lot of information…)
I even customized the theme, by downloading MonkeyLovers (from official theme site:http://www.muhri.net/gkrellm/)
To install a theme, simply untar the theme package in ~/.gkrellm2/themes, and select it in configuration setup.
Result:
Nice, but what about remote monitoring ?
I could have done the same, and simply trigger gkrellm run through an ssh command. But in that case, we are back to the above situation: only the X DISPLAY is remote, and it is consuming traffic bandwidth for… nothing (even if much less than gnome-system-monitor, it was still too much for me, as I was looking for the smallest network footprint possible).

Remote install

Hopefully gkrellm is able to run as deamon that provides its counters information to remote clients.
For that, you just need to install the server piece : gkrellmd
On my Ubuntu systems, it was quite easy :
sudo apt-get install gkrellmd
Then I had to reconfigure /etc/gkrellmd.conf to allow my local network to poll information
(quite nice security feature :-) ) and to lower the CPU load (via line : inet-interval 10)
Next, a simple sudo /etc/init.d/gkrellmd restart, once the config file was saved, and all is done…
Once this action completed on each remote system, I get back to my laptop.
For each server, I launched the local client, instructing it to connect to the remote server:
gkrellm -s geo
(assuming “geo” is the name of my remote server ; no need to specify anything else if you didn’t change default settings)
Result is exactly what I expected. Local software running (to display graphs) with a remote connection (low bandwidth) to the remote machine.
Main Dashboard at home

Editing gkrellmd.com


08 marzo 2014

Como Configurar SQL Server 2008 (Servidores Vinculados o Remotos)


Las nuevas políticas de Seguridad de Microsoft incorporan restricciones a la hora de comenzar a usar SQL Server 2008. Los Servicios que antes estaban habilitados por defecto, ahora no lo están, y es función del Administrador ir habilitándolos según las necesidades de uso del mismo.

Una de las cuestiones más importantes es la de Admitir Conexiones Remotas en nuestro Servidor. A fin de habilitarlas y asegurarnos que se pueden conectar desde otros ordenadores debemos seguir unos sencillos pasos:

1. Abriremos SQL Server Management Studio, nos situamos encima de la instancia de nuestro Servidor y pulsamos botón derecho, Propiedades, seleccionamos Conexiones, nos mostrara la siguiente pantalla:





Ahora marcamos el checkbox: “Permitir conexiones remotas con este servidor” u pulsamos aceptar.

2. Vamos al Menú de Inicio > Programas > Microsoft SQL Server 2008 > Herramientas de Configuración > Administrador de Configuración de SQL Server, aparece la siguiente ventana:



Seleccionamos la Configuración de red de SQL Server y luego Protocolos de MSSQLSERVER. Como podemos observar, por defecto solo tiene habilitado el protocolo de Memoria compartida, el resto estan deshabilitados. Básicamente es el tipo de protocolo que se usa, cuando nos conectamos a SQL Server desde el mismo Servidor.
Lo que debemos hacer es habilitar los protocolos: “Canalizaciones con nombre” y “TCP/IP”. Para lo cual, pulsamos con el botón derecho del ratón encima de los mismos y pulsamos Habilitar. En las dos ocasiones nos mostrara un mensaje informándonos, que para que la nueva configuración surta efecto abra que reiniciar el Servicio de SQL Server.
Ahora nos quedará así:




3.Vamos al Menú de Inicio > Ejecutar y escribimos services.msc y le damos aceptar. De esta forma nos abrirá la Consola de Administración de Servicios. Nos desplazamos hasta el Servicio con nombre “SQL Server (MSSQLSERVER)”, nos situamos encima y pulsamos el botón derecho del ratón, seleccionando; reiniciar. Con esto aplicaremos los cambios efectuados en el paso anterior.



4. SI estamos utilizando SQL Server con nombre de instancia y sin emplear un número concreto de puerto TCP/IP, debemos habilitar el servicio SQL Server Browser, que se encuentra en la misma ventana de Servicios con el nombre de “SQL Server Browser”. Nos situamos encima y con el botón derecho del ratón pulsamos en Propiedades, o bien podemos hacer doble click, es lo mismo.




En el Tipo de Inicio, seleccionamos Automático y pulsamos Iniciar para que el Servicio arranque. Aceptar para cerrar la pantalla.Este Servicio comporta ciertos riesgos de seguridad que deben ser considerados, pues existen otras alternativas a utilizar como configurar el Cliente de SQL Servidor con el Alias del Servidor, o utilizar la conexión incorporando el puerto de TCP/IP a usar, por defecto en SQL Server es el 1433.5. Y por último, en caso de tener habilitado el Firewall de Windows, cosa que deberíamos tener por Seguridad, deberemos configurarlo para que los Servicios de SQL Server y SQL Browser puedan comunicarse con el exterior. Vamos a Menú de Inicio , hacemos clic en Ejecutar , escribimos firewall.cpl y pulsamos Aceptar. Nos muestra esta ventana:



Pulsamos en “Permitir un programa a través del Firewall de Windows” nos muestra:



Pulsamos en Agregar programa nos muestra la ventana:



Pulsamos en Examinar e introducimos la carpeta donde se encuentra el Servicio de SQL Server: “C:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\Binn” en la misma seleccionamos el programa: “sqlservr.exe” y pulsamos Aceptar. Repetimos la operación para añadir el SQL Server Browser que se encuentra en la carpeta: “C:\Program Files\Microsoft SQL Server\90\Shared”. Seleccionamos el programa: “sqlbrowser.exe” y pulsamos Aceptar. Veremos que ambas excepciones nos aparecen en la pantalla de Configuración del Firewall.


Y con esto ya tenemos configurado nuestro Servidor SQL 2008 para permitir Conexiones desde cualquier ordenador de nuestra red.x

LinkWithin

Related Posts Plugin for WordPress, Blogger...