Servicio de hospedaje web (web hosting) – I

Cliente-Servidor

En esta serie de artículos vamos a conocer qué es el servicio de web hosting (en adelante, hosting), qué tipos de hosting existen, qué debes tener en cuenta a la hora de contratar tu servicio de hosting y por qué los planes de hosting ilimitado no son lo que parecen.

Antes que nada, vamos a definir brevemente qué es un servidor. Un servidor puede hacer referencia a cualquiera de estos significados:

  1. Un servidor es un programa (software) diseñado para recibir peticiones de un cliente (software) y contestar dichas peticiones con la respuesta adecuada. Tanto las peticiones como las respuestas se hacen usando un conjunto de reglas (protocolo) establecido anteriormente.
  2. Un servidor es una computadora (una máquina física) donde se instala y se ejecuta un programa (software) de servidor.

En la imagen al inicio del post se puede observar lo siguiente:

  • La máquina cliente (la computadora de cualquier visitante de un sitio web, por ejemplo tu computadora) con el software cliente instalado (Chorme o Firefox, los cuales hacen peticiones a través del protocolo HTTP).
  • La máquina servidor (la máquina de nuestro proveedor de hosting, por ejemplo SmartBox) con el software de servidor web instalado (NGINX o Apache, los cuales responden peticiones a través del protocolo HTTP).
  • Las peticiones iniciadas por el cliente y las respuestas enviadas por el servidor; por ejemplo, la petición de un usuario para mostrar un artículo específico del blog de SmartBox (petición) y la página web devuelta que contiene el artículo del blog (respuesta).
Qué es web hosting

El web hosting es un servicio que permite a cualquier usuario (persona natural o empresa) lograr que su sitio web o aplicación sea visible a través de Internet. El servicio de web hosting consiste en ofrecer recursos físicos y lógicos para la ejecución y funcionamiento eficiente de un sito web..

Entre los recursos físicos que corren a cargo del proveedor de hosting podemos mencionar los siguientes:

  • Tiempo de CPU: Es la cantidad de tiempo que tu sitio web puede usar la CPU de un servidor. Si la cantidad de este recurso es insuficiente, tu sitio se tornará lento.
  • Memoria RAM: Es la cantidad de memoria RAM que tu sitio web utiliza para su funcionamiento. Si la cantidad de este recurso es insuficiente, tu sitio se tornará lento o comenzarán a parecer errores en tu sitio web.
  • Espacio de almacenamiento en disco: Es la cantidad de espacio de disco que tendrás disponible para almacenar archivos, bases de datos, mensajes de correo, etc. Si la cantidad de este recurso es insuficiente no podrás publicar artículos nuevos en tu sitio, subir imágenes, recibir correos o realizar copias de seguridad; en algunos casos tu sitio puede seguir siendo visible en Internet pero en otros casos no.
  • Transferencia de datos: Es la cantidad de información que podrá ser envida desde el servidor hacia los clientes. Si la cantidad de este recurso es insuficiente, los visitantes de tu sitio verán un mensaje de error cuando intenten acceder a alguna página en tu sitio.
  • Espacio físico: Es la ubicación física donde el proveedor almacena sus servidores web. Si las instalaciones físicas de los centros de datos no son adecuadas, tu información puede estar en riesgo y el tiempo al aire de tu sitio puede verse comprometido; las clasificaciones TIER en los centros de datos son una manera de garantizar la idoneidad de estos espacios, ya que garantizan un conjunto de características esenciales de seguridad, respaldo y disponibilidad para los servidores. Nuestros servidores están ubicados en centros de datos categoría TIER-III y TIER-IV, las más altas, lo cual garantiza redundancia en sistemas vitales como alimentación eléctrica y refrigeración; también garantiza la seguridad física y tareas de mantenimiento sin interrupción del servicio.

Entre los recursos lógicos a cargo del proveedor de hosting podemos mencionar:

  • Direcciones IP: Es la dirección que se usará para poder localizar el servidor donde está hospedado tu sitio web. Si este recurso no está disponible, tu sito web no podrá ser accedido.
  • Servidores DNS: Realizan la conversión de nombres de dominio a direcciones IP. Si este recurso no está disponible, tu sitio web, correos y otros servicios dejarán de funcionar.
  • Bases de datos: Permite almacenar la información de tu sitio web de una manera estructurada. Hoy en día, todos los gestores de contenido (WordPress, Joomla!, etc) requiere algún tipo de base de datos para poder funcionar.
  • Soporte para lenguajes de programación: Permite la interpretación de los archivos (scripts) de tu sitio web. Si no se dispone del soporte adecuado, tu sito web no podrá funcionar correctamente.
  • Filtros FireWall: Ofrecen seguridad contra ataques a nivel de red. Si no se dispone de este recurso, se está expuesto a ataques informáticos.
  • Filtros WAF: Ofrecen seguridad contra ataques a nivel de aplicación. Si no se dispone de este recurso, se está expuesto a ataques informáticos.
  • Copias de seguridad: Sirven para recuperar versiones anteriores de archivos, en caso de que hayan sido eliminados o modificados sin consentimiento. Si no se dispone de este recurso, se corre el riesgo de perder parcial o totalmente la información de tu sitio web.
  • Sistemas de cacheado: Permiten agilizar el acceso a tu sito web. Si no se dispone de este recurso, tu sito web puede presentar problemas de lentitud.
Tipos de hosting

En el mercado existen varios tipos de hosting, los cuales se clasifican dependiendo de la forma como se controla el uso de los recursos físicos del servidor por parte del cliente, adicionalmente, también existe otro tipo hosting, pero este se clasifica dependiendo de quien lleva a cabo las tareas de administración el hosting.  Los tipos de hosting, en cuanto a la forma como se controla el uso de los recursos físicos, se clasifican en:

  • Hosting compartido: Con este tipo de hosting, su sitio web es hospedado junto con otros sitos web de otros clientes, todos ellos en una misma máquina, compartiendo, de esta manera, todos ellos, los mismos recursos físicos. Con este modelo de hosting, mientras más recursos use uno de los sitios, menos recursos disponibles tendrán el resto de sitios en la misma máquina, lo que puede ocasionar una pugna por el uso de recursos, deteriorando de esta forma el rendimiento general de la máquina y causando lentitud en los sitios. Este tipo de hosting es adecuado para sitios web pequeños, que no generen muchas visitas (tráfico web).
  • Hosting VPS (Virtual Private Server): Con este tipo de hosting, su sitio web es hospedado junto con otros sitios web de otros clientes, todos ellos en una misma máquina, pero, a diferencia del hosting compartido, con este modelo de hosting, cada sitio dispone de cierta cantidad de recursos reservados para su uso exclusivo, por lo que, a pesar de encontrarse hospedados en la misma máquina, no se presentará pugna por el uso de recursos, pues cada sitio cuenta con una cantidad de recursos propios. Este tipo de hosting es adecuado para sitios web medianos y grandes, que deben atender cientos o miles de usuarios por día.
  • Hosting Dedicado: Con este tipo de hosting, su sitio o sitios web son hospedados en un servidor de uso exclusivo, destinando, de esta manera, la totalidad de recursos disponibles para un único cliente. Este tipo de hosting es adecuado para sitios web mucho más exigentes, que deben atender cientos o miles de usuarios por minuto o que requieren niveles de personalización elevados.
  • Hosting en la nube (Cloud hosting): Con este tipo de hosting, el concepto de recursos físicos sufre una abstracción, pues con este tipo de infraestructura, los recursos físicos pueden estar distribuidos entre varios centros de datos, y cada recurso físico se presentan como un componente del servicio de hosting. Este tipo de hosting puede acoplarse a cualquier tipo de sitios web, pues es bastante flexible y es posible ampliar o reducir la cantidad disponible de recursos asignados a un sitio web.

Los tipos de hosting, en cuanto a la administración del servicio, se clasifican en:

  • Hosting autoadministrado: Los planes de hosting autoadministrado implican que la gestión de las tareas de administración del hosting corren a cargo del cliente que contrata el servicio, esto es, el proveedor está encargado de cumplir con las cuotas de recursos físicos establecidos en el contrato con el cliente y con el acuerdo de nivel de servicio pactado, mientras que, el cliente tendrá la obligación de asumir tareas como la administración de bases de datos, administración de la zona de dominio, solución de problemas de configuración, realización de copias de seguridad, restauración de copias de seguridad, creación de cuentas de correo, etc.
  • Hosting administrado: En los planes de hosting administrado, las tareas de administración del servicio de hosting corren a cargo del proveedor, por lo tanto, será tarea de este cumplir con las cuotas de recursos físicos establecidos en el contrato con el cliente y con el acuerdo de nivel de servicio pactado, además de gestionar la administración de las bases de datos, administración de la zona de dominio, solución de problemas de configuración, realización de copias de seguridad, restauración de copias de seguridad, creación de cuentas de correo, etc. Los planes de hosting ofrecidos por SmartBox son planes administrados.

Ahora ya conoces en que consiste el servicio de hosting, en nuestro próximo artículo veremos que se debe tener en cuenta al momento de contratar tu servicio de hosting y los trucos detrás de los planes de “hosting ilimitado”.

Si te interesa este tipo de contenido y no quieres perderte nuestros artículos, puedes registrarte para recibir notificaciones de contenido nuevo en tu correo, o darle like a nuestra Facebook Page. Para conocer nuestros planes de hosting ingresa hosting.smartbox.host.

No olvides comentar ?

Sistema de nombres de dominio o Domain Name System (DNS)

Domain Name System

En el artículo del día de hoy vamos a conocer qué es el sistema de nombres de domino (DNS, por sus siglas en inglés) y para qué sirve, qué son los registros de recursos DNS, cuáles son los tipos más importantes y para qué se usan; además nos haremos una idea clara de las tareas que debe realizar nuestro proveedor de servicios de hosting, relacionadas con este servicio. Para continuar con la lectura del artículo, te recomendamos leer nuestro artículo anterior: Dominio de Internet.

Comenzaremos diciendo que el DNS es uno de los sistemas más importantes de Internet, algo así como su columna vertebral, ya que sin este servicio, el acceso a Internet se vería impedido (un claro ejemplo son las interrupciones en los servicios sufridas por Twitter, Netflix o Reddit, ocasionadas por los ataques DDoS de la botnet Mirai, el 21 de octubre del 2016).

Qué es el DNS y para que sirve

El DNS es un sistema cuyo objetivo, en conjunto con los nombres de dominio, es proporcionar un mecanismo para nombrar los recursos de una red, de tal manera que estos nombres puedan ser utilizados por diferentes hosts, familias de protocolos, redes u organizaciones administrativas; dese otro punto de vista, el DNS puede ser visto como una base de datos que almacena información relacionada a los recursos existentes dentro de un espacio de nombres de domino. Como hemos visto, el DNS está íntimamente relacionado con los nombres de dominio, y es el sistema encargado de almacenar información relacionada a los nodos y hojas de un espacio de nombres, y responder consultas de diferentes tipos realizadas sobre un FQDN. Los elementos principales dentro de este sistema son tres:

  • El espacio de nombres de domino y los registros de recursos: Son especificaciones para un espacio de nombres con estructura en forma de árbol y datos asociados a cada nombre. Cada nodo y hoja del árbol del espacio de nombres tiene un conjunto de información asociada, y las consultas DNS son intentos de extraer información de un tipo específico, de un conjunto de información determinado. Una consulta DNS indica el nombre de domino de interés y el tipo de información del recurso que se desea; por ejemplo, una consulta para consultar los recursos de dirección de un host, retorna la dirección IP de dicho host.
  • Servidores de nombres: Son programas servidores que almacenan información acerca de la estructura de árbol del dominio y el conjunto de información. Estos servidores pueden almacenar la estructura del árbol en caché o establecer información sobre cualquier parte del árbol de domino, pero en general, un servidor de nombres particular solo tiene información acerca de un subconjunto de el espacio de domino, y tiene punteros hacia otros servidores de nombres que pueden ser usados para dirigir a información de cualquier parte del árbol de domino. De los servidores de nombres que conocen la parte del árbol de domino para la cual tienen la totalidad de la información, se dice que son una autoridad para dicha parte del espacio de nombres. La información autoritaria se organiza en unidades llamadas zonas, y dichas zonas pueden ser distribuidas de forma automática a los servidores de nombres que proveen servicios de redundancia para los datos en la zona.
  • Resolver: Son programas que extraen información de los servidores de nombres en respuesta a las consultas de los clientes. Los resolvers deben poder acceder por lo menos un servidor de nombres y usar la información de dicho servidor de nombres para contestar la consulta directamente, o perseguir la consulta usando referencias a otros servidores de nombres. Un resolver es típicamente una rutina del sistema que es directamente accesible a los programas de usuario, por lo que no hay necesidad de usar protocolos entre el resolver y el programa de usuario.
Registros de recursos DNS

Los registros de recursos definen los tipos de datos almacenados por el DNS. Una zona de DNS es una base de datos conformada por un conjunto de registros de recursos de diferentes tipos, cada uno de los cuales identifica un componente hardware o software dentro del espacio de nombre de domino (host, servidores de correo, servidores web, servidores de nombres). Cada registro de recursos se compone de un conjunto de campos.

  • Nombre: Es una etiqueta que indica el nodo al cual pertenece el registro de recurso. Puede ser el dominio raíz (usualmente indicado con @), o un subdominio (como www).
  • Tipo: Indica el tipo de registro, por ejemplo, el tipo A (dirección IP).
  • Clase: Indica la clase del registro, por ejemplo, clase IN (registro de Internet). La clase IN es la clase más usada.
  • TTL: (Time To Live, o periodo de vida) Indica la frecuencia con que se actualiza o descarta la copia del registro almacenada en caché.
  • Datos: Contiene los datos propios del registro. Estos datos varían en virtud del tipo de registro.

El siguiente es un ejemplo de un registro de recurso de tipo A para el subdominio www. El TTL está dado en segundos:

Nombre    Tipo     TTL      Datos
www         A          3600     192.168.0.12

Tipos de registro de recursos

La siguiente tabla muestra los tipos de registros más comunes y su función:

 Significado
Tipo Descripción
 Dirección de host IPv4  A  Asigna una dirección IPv4 a un nombre de domino de un host.
 Dirección de host IPv6  AAAA  Asigna una dirección IPv6 a un nombre de domino de un host.
 Nombre canónico para un alias  CNAME  Asigna un alias de dominio a un nombre de domino canónico (verdadero).
 Intercambiador de correos  MX  Asigna el nombre de dominio a un servidor de correo electrónico que recibe correos para dicho dominio.
 Servidor de nombres autoritario  NS  Asignan un nombre de dominio o subdominio a un servidor de nombres.
 Puntero de nombre de domino  PTR  Asignan la dirección IP de un host al nombre de dominio canónico para un host.
 Inicio de autoridad  SOA  Contiene información general acerca de la zona, indica que el servidor en cuestión es autoritario para el dominio o subdominio.
 Convenio de remitentes  SPF  Especifica los servidores de correo que pueden enviar correo electrónico desde un domino.
 Registro de servicio  SRV  Asigna un servidor o servicio específico a un nombre de dominio.
 Cadena de texto  TXT  Contienen información arbitraria en forma de texto legible.
Flujo de una consulta DNS

Para ilustrar un poco el funcionamiento del sistema DNS, vamos a enumerar los pasos necesario para acceder al sitio web smartbox.host:

  1. El cliente ingresa la URL smartbox.host en su navegador web.
  2. El resolver, en la máquina cliente, intenta traducir el nombre de dominio indicado en la URL (smartbox.host) a una dirección IP usando su caché. Si la información existe en la caché, la consulta se responde localmente.
  3. Si la información no existe en la caché del cliente, el resolver del cliente reenvía la consulta a los servidores de nombre del ISP (Internet Service Provider). El servidor DNS del ISP consulta su propia caché, y si la información existe, la consulta se responde localmente y se envía al resolver del cliente.
  4. Si la información no existe en la caché del ISP, este reenvía la consulta a uno de los servidores raíz (Root Name Server). Todo servidor DNS tiene una lista de todos los servidores raíz.
  5. El servidor raíz mantiene información sobre la ubicación de los servidores que gestionan los TLD (para nuestro ejemplo, el TLD es .host) y retorna esta información al servidor DNS del ISP.
  6. El DNS del ISP redirecciona la consulta al servidor DNS que gestiona el TLD en cuestión (.host).
  7. El DNS del TLD conoce la dirección IP del servidor DNS para el dominio smartbox.host y retorna esta información al DNS del ISP.
  8. El DNS del ISP redirecciona entonces la consulta a los servidores autoritarios para el dominio smartbox.host.
  9. El DNS autoritario para smartbox.host retorna al DNS del ISP la dirección IP solicitada.
  10. El servidor DNS del ISP envía la dirección IP al resolver del cliente para que este pueda acceder al sitio web example.com.
  11. El resolver del cliente entrega la respuesta de la consulta al explorador web y luego guarda la respuesta en caché para futuras consultas; la respuesta se guardará en la caché por el tiempo definido en el TTL del registro tipo A para el dominio smartbox.host.

 

Con la información anterior podemos hacernos una idea inicial de la importancia del sistema DNS para Internet, ya que, como podemos observar, este sistema almacena y gestiona la información relacionada a una basta cantidad de recursos de Internet, desde las direcciones IP asociadas a un nombre de dominio, pasando por los servidores habilitados para enviar y recibir correos para un dominio, hasta llegar incluso los servidores autoritarios para las zonas, etc. Como es natural imaginar, en caso de que el servicio DNS colapse, el acceso a

Ahora bien, las empresas dedicadas a ofrecer servicios de hosting web tienen entre sus responsabilidades la de gestionar la zona de tu nombre de dominio, de tal forma que, al digitar tu nombre de dominio en un explorador web, el sistema DNS pueda indicarte de forma correcta la dirección IP del servidor donde se encuentra hospedado tu sitio; además, otra de las funciones como proveedores de hosting es la de configurar los registros necesarios para gestionar los correos electrónicos que entran o salen desde tu nombre de dominio, y evitar que estos mensajes sean clasificados como SPAM, a parte de otras tareas.

Si te interesa este tipo de contenido y no quieres perderte nuestros artículos, puedes registrarte para recibir notificaciones de contenido nuevo en tu correo, o darle like a nuestra Facebook Page. Para conocer nuestros planes de hosting ingresa hosting.smartbox.host.

No olvides comentar ?

Dominio de Internet

Nombres de dominio

A pesar de que en la actualidad la mayoría de las personas tienen una noción intuitiva de lo que es un dominio de Internet, en este artículo vamos a profundizar un poco más sobre su función, estructura y uso.

Antes de iniciar recordemos que: una de las funciones de una red informática es la de compartir recursos entre sus usuarios, dichos recursos pueden ser documentos en sitos web, servicios de correo, impresoras, y cualquier otro recursos que sea factible de compartir en la red; también recordemos que, todos los recursos en una red informática se identifican a través de una dirección IP, como 192.0.2.235, para el caso de IPv4 o 2001:0db8:85a3:0000:0000:8a2e:0370:7334, para el caso de IPv6. Ahora bien, como usuarios de una red, para poder usar un recurso, es necesario identificarlo dentro de la red, lo que nos obliga a conocer la dirección IP del recurso que queremos usar, pero debido a la estructura de las direcciones IP, esta tarea puede tornarse demasiado compleja para los usuarios, y es justo aquí donde entran en juego los dominios de Internet.

¿Que es un dominio de Internet?

Uno domino de Internet es un método utilizado para identificar de manera unívoca recursos de una red informática, en este caso, Internet; el objetivo es permitir a los usuarios de la red identificar sus recursos de manera fácil, es decir, haciendo uso del lenguaje común, en vez de complicadas notaciones numéricas, como es el caso de las direcciones IP. Para identificar los recursos de una red, a cada recurso se le asigna un nombre de dominio, por ejemplo, un sito web puede ser encontrado bajo el nombre www.yahoo.es, un servidor de correos puede ser encontrado bajo el nombre de smtp.gmail.com, una impresora puede ser encontrada bajo el nombre de print.example.com, etc, de esta manera, será mucho más fácil para los usuarios ubicar los recursos dentro de la red, pues no tendrán que memorizar conjuntos de números, sino nombres en lenguaje natural.

Estructura de un nombre de dominio

Los nombres de domino están compuestos por niveles, y normalmente se conocen tres niveles: domino de primer nivel, dominio de segundo nivel y domino de tercer nivel. En el nombre de dominio, cada nivel lo podemos diferenciar de otro nivel por que se encuentra separado por un punto, de esta manera, cada fragmento del nombre de dominio separado por un punto corresponde a un nivel, y dicho nivel ser irá incrementando de derecha a izquierda, con relación al nombre de dominio. Veamos un ejemplo:

Para el nombre de dominio exd.server1.example.com, que identifica un recurso en una red informática, tenemos que:

com es el domino de primer nivel (también conocido como TLD, por sus siglas en inglés)
example es el domino de segundo nivel
server1 es el dominio de tercer nivel (también conocido como nombre de host)
exd es el domino de cuarto nivel

(Ver imagen al inicio del artículo)

Adicionalmente, todos los dominios de tercer nivel y superior son llamados comúnmente subdominios, por lo que es correcto decir que: server1.example.com es un subdominio de example.com y a su vez, exd.server1.example.com es un subdominio de server1.example.com.

Fully Qualified Domain Name (FQDN) o nombre de domino totalmente calificado

El FQDN, a veces también llamado nombre de dominio absoluto, es un nombre de dominio que especifica su ubicación exacta en la jerarquía del árbol del sistema DNS. Este nombre especifica todos los niveles de dominio, incluyendo el dominio de nivel superior y la raíz, y terminando con un punto, aunque en la práctica este punto final es rara vez requerido; un FQDN identifica sin ambigüedades un recurso en la red, y solo puede ser interpretado de una única forma.

Como nota adicional, la cantidad máxima de niveles permitidos para un nombre de dominio está limitada por la longitud máxima permitida para un FQDN, la cual es de 255 caracteres (bytes), con una restricción adicional a 63 caracteres (bytes) por etiqueta dentro de un nombre de dominio. Las etiquetas FQDN se limitan por los puntos y se restringen a un juego de caracteres limitado: letras A-Z de ASCII, los dígitos, y el carácter «-» , y no distinguen mayúsculas de minúsculas. En 2004 se añadieron algunos caracteres como «ä, ö, ü, é, à, è…» como caracteres permitidos para las etiquetas, por lo que ahora es posible registrar nombres e dominio como moné.org.

Si te interesa este tipo de contenido y no quieres perderte nuestros artículos, puedes registrarte para recibir notificaciones de contenido nuevo en tu correo, o darle like a nuestra Facebook Page. Para conocer nuestros planes de hosting ingresa hosting.smartbox.host.

No olvides comentar ?

¿Qué es OpenVZ?

Logo OpenVZ

En esta serie de tres artículos vamos a conocer uno de los componentes de la pila de software que usamos en SmartBox para proveer nuestros servicios, estamos hablando de OpenVZ. En este primer artículo vamos a conocer qué es OpenVZ.

OpenVZ es un sistema de virtualización para Linux basado en contenedores; estos contenedores también se conocen como VE (Virtual Environment) o VPS (Virtual Private Server).

OpenVZ permite crear múltiples VEs en un único servidor físico (también llamado VE0); cada VE se desempeña exactamente como un servidor independiente, con su propio acceso root, memoria, procesos, dirección IP, tiempo de procesamiento, archivos de configuración y librerías, lo que los hace seguros e independientes de los demás VEs. Teniendo en cuenta lo anterior, se puede garantizar que estos contenedores no generan conflicto alguno entre ellos.

La tecnología de virtualización a nivel del sistema operativo usada en OpenVZ nos ofrece facilidad de administración, rendimiento, escalabilidad, densidad de VEs por cada VE0 y administración dinámica de recursos, aunque debemos tener en cuenta que en OpenVZ el sistema operativo que debemos usar, tanto para los huéspedes (VEs) como para los anfitriones (el servidor físico o VE0) debe ser Linux, aunque la distribución entre diferentes VEs puede variar.

Hasta aquí el primer artículo de la serie, en el segundo artículo veremos cómo llevar a cabo la instalación de OpenVZ.

Si te interesa este tipo de contenido y no quieres perderte nuestros artículos, puedes registrarte para recibir notificaciones de contenido nuevo en tu correo, o darle like a nuestra Facebook Page. Para conocer nuestros planes de hosting ingresa hosting.smartbox.host.

No olvides comentar ?