4
hosting Alojamiento de sitios en Linux 76 Linux+ 12/2008 [email protected] S e conoce como hosting o servicio de alojamiento al servicio ofrecido por una computadora traba- jando como servidor y conectada a Internet donde se pueden alojar páginas (archivos HTML) que constituyen un sitio web, estos equipos corren un programa (Apache en general) que, por defecto, escucha el puerto 80 para contestar las peticiones que realizan los navegadores. Tipos de alojamiento Los tipos de alojamiento se dividen en cuanto a las cualidades de los mismos, en general tenemos los siguientes: Servicio compartido: uno de los más usados para pe- queños sitios, en general son económicos ya que un solo servidor físico pueden contener cientos de sitios o cuentas individuales lo que abarata su costo; se usa una aplicación web para su administración y los archivos se pueden subir vía FTP. Se suelen evitar estos servicios cuando la seguridad es importante ya que estamos com- partiendo la misma máquina con cientos de usuarios y pueden haber brechas de seguridad, además que los certificados SSL (https) suelen ser el mismo para todos los usuarios. Otra desventaja de este tipo de servicio es que la performance del mismo suele ser baja en algunos momentos si muchos sitios tienen picos de visitas. Servicios gratuitos: son una variante del servicio de arri- ba pero con la salvedad de ser gratuitos o con la obliga- ción de usar alguna publicidad en nuestras páginas, en general la performance es aún peor ya que se suelen co- locar muchos más sitios por lo que suelen ser frecuentes la caídas de servicio. Alojamiento para revendedores: este tipo es el que se ofrece a quienes quieren re-vender el servicio a empre- sas más pequeñas y ganar una diferencia, se adquieren grandes cantidades de espacio y de ancho de banda para segmentarse en paquetes pequeños para ser vendidos. Servidor hogareño: podemos tener un sitio web propio desde nuestras casas sin necesidad de pagar por un servidor externo, en general se usan equipos pequeños o antiguos y que tengan una conexión permanente a In- ternet, de esta manera podemos alojar nuestros archivos, como veremos más adelante una simple conexión de banda ancha (ADSL o cable-módem) bastaría, aunque no es lo ideal. Alojamiento de sitios en Linux Gabriel García Linux ocupa un muy buen lugar en servidores en la actualidad debido a su flexibilidad y gran variedad de servicios disponibles, entre ellos el de servidor web para el alojamiento de sitios y aplicaciones en Internet.

Artykuł z magazynu Linux+ DVD

Embed Size (px)

DESCRIPTION

Artykuł z magazynu Linux+ DVD

Citation preview

hostingAlojamiento de sitios en Linux

76 Linux+ 12/2008

hostingAlojamiento de sitios en Linux

77www.lpmagazine.org

linux

@so

ftwar

e.co

m.p

l

Se conoce como hosting o servicio de alojamiento al servicio ofrecido por una computadora traba-jando como servidor y conectada a Internet donde se pueden alojar páginas (archivos HTML) que

constituyen un sitio web, estos equipos corren un programa (Apache en general) que, por defecto, escucha el puerto 80 para contestar las peticiones que realizan los navegadores.

Tipos de alojamientoLos tipos de alojamiento se dividen en cuanto a las cualidades de los mismos, en general tenemos los siguientes:

• Servicio compartido: uno de los más usados para pe-queños sitios, en general son económicos ya que un solo servidor físico pueden contener cientos de sitios o cuentas individuales lo que abarata su costo; se usa una aplicación web para su administración y los archivos se pueden subir vía FTP. Se suelen evitar estos servicios cuando la seguridad es importante ya que estamos com-partiendo la misma máquina con cientos de usuarios y pueden haber brechas de seguridad, además que los certificados SSL (https) suelen ser el mismo para todos

los usuarios. Otra desventaja de este tipo de servicio es que la performance del mismo suele ser baja en algunos momentos si muchos sitios tienen picos de visitas.

• Servicios gratuitos: son una variante del servicio de arri-ba pero con la salvedad de ser gratuitos o con la obliga-ción de usar alguna publicidad en nuestras páginas, en general la performance es aún peor ya que se suelen co-locar muchos más sitios por lo que suelen ser frecuentes la caídas de servicio.

• Alojamiento para revendedores: este tipo es el que se ofrece a quienes quieren re-vender el servicio a empre-sas más pequeñas y ganar una diferencia, se adquieren grandes cantidades de espacio y de ancho de banda para segmentarse en paquetes pequeños para ser vendidos.

• Servidor hogareño: podemos tener un sitio web propio desde nuestras casas sin necesidad de pagar por un servidor externo, en general se usan equipos pequeños o antiguos y que tengan una conexión permanente a In-ternet, de esta manera podemos alojar nuestros archivos, como veremos más adelante una simple conexión de banda ancha (ADSL o cable-módem) bastaría, aunque no es lo ideal.

Alojamientode sitios en LinuxGabriel García

Linux ocupa un muy buen lugar en servidores en la actualidad debido a su flexibilidad y gran variedad de servicios disponibles, entre ellos el de servidor web para el alojamiento de sitios y aplicaciones en Internet.

hostingAlojamiento de sitios en Linux

76 Linux+ 12/2008

hostingAlojamiento de sitios en Linux

77www.lpmagazine.org

• Servidor dedicado: este tipo de servidor suele ser un equipo para uso exclusivo nuestro, sin compartir nada, tendremos el 100% del CPU y del ancho de banda para nuestro uso, además de poder instalar lo que deseemos, por supuesto, esta opción es mucho mas cara que las anteriores, en general las empresas que ofrecen este ser-vicio brindan soporte técnico de hardware y ayuda en las instalaciones de software.

Alojamiento en LinuxPara todos los tipos expuestos arriba Linux pue-de ser usado sin inconvenientes y ha demostra-do ser una solución eficiente sobre todo por su bajo coste, además ofrece una gran variedad de opciones en cuanto a servicios extras que hacen aún más atractiva su implementación, en gene-ral el software que se usa para servidor web es el Apache que viene por defecto en la mayoría de las distribuciones, aunque últimamente están creciendo muy de a poco otras opciones como Nginx y lighttpd que son mas livianos que Apache que ha crecido mucho en tamaño los ultimos tiempos a pesar de su modularidad.

LAMPEsta sigla se suele ver bastante y corresponde a Linux Apache mySQL PHP, una asociación bastante usada en Internet, es decir, usar sitios web realizados en lenguaje PHP que almacenen datos en base de datos mySQL en un servidor Linux y ofrecidas por Apache. Por supuesto que variaciones sobre esto como usar PostgreSQL o Ruby on Rails o alguno de los servidores web que mecionamos antes, incluso la “P” puede ser Perl o Python pero son opciones mucho menos populares. La mayoría de las distribuciones Linux de la actualidad traen estos paquetes para instalar desde sus repositorios o ya instalado listo para usar. Vale aclarar que no necesaria-mente hay que instalar todos los componentes, quizás solo deseemos usar Apache para servir páginas HTML sin usar PHP o base de datos por ejemplo, siempre esto último es convenien-te así solo nos quedamos con lo que realmente necesitamos. Si contratamos en servicio de alojamiento ajeno debemos tener en cuanta algunas cosas más, aunque tambien es válido para nuestro propio servidor, entre estas estan las versiones de los componentes, por ejemplo, PHP su versión de uso actual es 5.2, pero hay muchos servidores que aún ofrecen la versión 4.4.X que estan sin soporte por la gente de Zend, esto es muy importante sobre todo en el tema de la seguridad y de a poco en el tema de la compatibilidad, ya existen numerosos scripts que piden la versión 5 de PHP exclusivamente para hacer uso de las nuevas funcionalidades

incluidas. Con mySQL sucede algo parecido, la versión 4.X se sigue usando mucho y esta muy extendida en los servicios de alojamiento, pero estas versiones sólo tienen correcciones de seguridad muy graves y ningún otro tipo de ac-tualización, por lo que es muy conveniente usar una versión 5.X o exigir a nuestro proveedor que actualize su servidor a dicha versión en el caso de no poder hacerlo nosotros mismos. Ca-be aclarar que con Apache es conveniente tener siempre la última versión para estar al día con correcciones de seguridad y nuevas mejoras.

Distribuciones dedicadasSi bien a cualquier distribución Linux le pode-mos instalar Apache, hay algunas que nos faci-litan el trabajo, por suerte el mundo Linux al ser abierto permite que cada uno se implemente lo que desee al modo que desee, por eso hay varias distribuciones dedicadas para el montaje de ser-vidores web que permiten optimizar el uso de la

computadora y a su vez agilizar su implemen-tación. Un ejemplo de esto es Lamppix (http://lamppix.tinowagner.com/), que esta basada en Knoppix y Damn linux, incluye las ultimas versiones de las aplicaciones LAMP, posee un escritorio muy liviado basado en XFCE lo que permite su uso en equipos no muy potentes.

Lamppix viene en el formato de Live-CD por lo que podremos probarla sin necesidad de instalar nada. Otra distribución lista para esto es SLAMPP (http://slampp.abangadek.com) que viene en el formato de Live-CD y también es heredera de Slackware, incorpora soporte para muchos protocolos como HTTP/HTTPS, FTP, POP, IMAP, SMTP, SSH, DHCP, Squid entre otros. Incluye antivirus y firewall. El escritorio es Xfce para un uso sin problemas en equipos de bajo recursos. Podemos echar una mirada a Sol Linux (http://www.sol-linux.com/) diseñada especialmente para servidores y con todo lo ne-cesario para ofrecer servicios web y virtualiza-

Figura 1. Lamppix

Figura 2. Descargando Ubuntu Server

78

hostingAlojamiento de sitios en Linux

Linux+ 12/2008

ción entre otros. Esta distribución tiene muchas características interesantes:

• Sol no depende de ninguna otra distribu-ción, es una distribución base,

• Se actualiza muy frecuentemente,• Esta hecha por desarrolladores para desa-

rrolladores,• Soporta instalación sobre red (PXE),

• Compatible con virtualización,• Herramientas de administración.

No podemos dejar de mensionar Debian (http://www.debian.org/) como una de las distribucio-nes multipropósito mas usadas y con que pesan muy fuerte en el mundo de los servidores por su robustez y estabilidad, lo que la hacen ideal pa-ra el uso de provedor de servicios web. Si bien

la instalación y configuración puede no ser tan trivial como distribuciones especializadas, te-nemos como contrapartida una gran comunidad para buscar ayuda y tutoriales, además de saber que cada paquete es probado rigurosamente an-tes de estar disponible para actualización.

Otra opción muy usada es CentOS (http://www.centos.org/) que es una compilación de los archivos fuentes de Red Hat, lo que la hace 100% compatible con esta, su uso está bastante difundido en servidores de hosting profesiona-les. También Ubuntu (http://www.ubuntu.com/products/whatisubuntu/serveredition) tiene su versión para servidores con soporte LAMP incuído. Para los usuarios novatos esta distri-bución es fácil y sencilla de instalar, aunque personalmente recomendaría Debian (http://www.debian.org/index.es.html) por su robus-tez. Pero todo siempre sirve y lo aprendido con Ubuntu Server lo podremos trasladar a Debian más adelante. Podemos descargar la versión servidor desde aquí: http://www.ubuntu.com/getubuntu/download, y elegiendo la version server como vemos en la figura. La versión al momento de escribir este artículo es la 8.04LTS, que tiene soporte hasta al año 2013, veamos un breve detalle de que contiene:

• Kernel 2.6.24,• Apache 2,• mySQL 5,• PostgreSQL 8,• PHP 5.2.4,• Perl, Phyton, Ruby y muchos más.

El instalador nos preguntará si deseamos el soporte LAMP en nuestro servidor, una aclara-ción importante es que esta versión no incluye servidor gráfico X (aunque puede ser instalado después), así que tendremos que manejarnos con la consola, si no nos atrevemos a esto por ahora podemos usar alguna de las otras ditribuciones.

Qué elegirEsto depende de nuestras necesidades, si pen-samos ofrecer alojamiento a clientes la mejor opción será un servicio de Revendedor (Rese-ller) o, mejor aún, un servidor dedicado en el caul podremos instalar lo que nos parezca más

Figura 3. VHFFS

• Apache: http://www.apache.org/• Nginx: http://nginx.net/• lighttpd: http://www.lighttpd.net/• PHP: http://www.php.net• mySQL: http://www.mysql.com

En la red

• Cube Control Panel (http://www.cubepanel.com) tiene una versión liviana de hasta 5 dominios, en el mismo sitio podremos acceder a un demo para verlo funcionando. Cuenta con tres niveles de administración: administrador, dominio y cliente, esto es fundamental si queremos delegar o vender nuestro servicio de hosting.

• VHCS (http://vhcs.net/new/) es Open Source y gratuito, soporta muchas distribucio-nes y oferce la mayoría de las funcionalidades de los administradores pagos. También incluye un demo para probarlo en el sitio web.

• Webmin (http://www.webmin.com/) es uno de los más completos aunque el diseño es algo rudimentario en comparación a los otros, tambiern disponemos de paquetes listos para usar según la distribución y además un demo en el sitio web.

• Penguinator (http://penguinator.org/) es otra alternativa Open Source interesante que podemos probar.

• VHFFS (http://www.vhffs.org) también es Open Source con muchos años de desa-rrollo y actualizaciones constantes, lamentablemente el sitio no ofrece un demo del mismo pero podremos ver algunas capturas o directamente instalarlo y probalo.

• Baifox (http://www.baifox.org) desarrollado en PHP puede ser otra alternativa viable para usar.

• GNU Hosting Helper (http://hostingsoftware.net/) como el nombre lo indica con licen-cia GNU, si bien no tiene un demo en el sitio para probarlo, podemos descargarlo libremente desde el mismo lugar.

• GNUPanel (http://www.gnupanel.org/) tiene soporte en español ya que sus desarro-lladores hablan nuestro idioma, lamentablemente el demo del sitio no muestra las funcionalidades que ofrece.

• ISPConfig (http://www.ispconfig.org/) soporta gran número de distribuciones y tiene actualizaciones constantes lo que lo hace interesante para hecharle una mirada.

Administradores web

hostingAlojamiento de sitios en Linux

adecuado a nuestros requerimientos. Si solo pensamos en tener nuestro sitio web personal, podremos usar un equipo pequeño tipo pentium II ó III con 128Mb de memoria y con un disco de 4Gb es mas que suficiente, podremos usar cualquiera de las distribuciones mencionadas arriba. Por supuesto, que a más espacio y po-tencia mejor será el desempeño del servidor.

Conexión a InternetEn el caso de montar nuestro servidor hogareño necesitaremos una conexión permanente a In-ternet y que esté disponible la mayor cantidad del tiempo posible, lo ideal es una coneción con dirección IP fija a la cual podremos asociar nuestro dominio, pero este servicio suele ser más caro en muchos países, otra opción válida es usar una conexión de banda ancha del tipo ADSL o cable-módem y usar algún servicio gratuito de servidores DNS como DynDNS o No-IP (http://www.no-ip.com/), de esa forma podemos usar cualquier dominio y redirigir las peticiones a nuestro ordenador.

No siempre se puede...Con LAMP podremos usar un gran número de tecnologías, pero tenemos que tener en cuenta

que si alguien deseamos usar tecnologías pro-pietarias como Microsoft .NET por ejemplo no podremos hacerlo de momento, si bien la gente de Novell tiene una implementación libre llamada Mono (http://www.mono-project.com/Main_Page) para el caso de .NET, aunque hay cosas que ajustar y otras que pueden no funcio-nar correctamente en ASP.NET bajo Mono.

Administradores webSi configuramos nuestro servidor para que un tercero lo administre, quizás necesite una for-ma más sencilla de hacerlo sin necesidad de tener conocimientos de Linux, una forma de hacerlo es instalar un programa administrador que pueda ser manejado vía un navegador, un ejemplo muy usado de esto que hablamos es cPanel (http://www.cpanel.net) que permite crear cuentas de correo, subdominios, base de datos, ver estadísticas, administrar archivos, entre otras muchas cosas más. Hay que tener en cuenta que cPanel no es de licencia libre y tampoco es gratis, su costo es muy alto para un servidor pequeño; similar es el caso de Ensim (http://www.ensim.com/) y de DirectAdmin (http://www.directadmin.com/). Como alter-nativas gratuitas y/o abiertas podemos probar

los administradores presentados en el cuadro Administradores web.

ConclusiónComo hemos visto, podremos usar Linux para montar nuestro propio servidor web al estilo de sitios más profesionales e importantes, nuestro limite estará puesto en el hardware que podamos adquirir y el grado de tiempo que le podamos dedicar para administrar funcionalidades, aun-que para un sitio web personal no es necesario mucho.

Gabriel García es Licenciado en Sistemas de la Universidad CAECE en Argentina, actualmente cursando una maestría en Ingeniería del Software en la Universidad Politécnica de Madrid. Fundador de la compañía de diseño y programación web CrystalSys (www.crystalsys.com.ar), con más de 10 años de experiencia en la infor-mática, programación en varios lenguajes y en diferentes plataformas para diferen-tes compañías alrededor del mundo.

Sobre el autor

PUBLICIDAD