{"id":5479,"date":"2017-11-26T12:37:15","date_gmt":"2017-11-26T17:37:15","guid":{"rendered":"https:\/\/itsoftware.com.co\/content\/?p=5479"},"modified":"2017-11-26T12:37:15","modified_gmt":"2017-11-26T17:37:15","slug":"instalacion-de-certificados-ssl-subdominio-externo","status":"publish","type":"post","link":"https:\/\/itsoftware.com.co\/content\/instalacion-de-certificados-ssl-subdominio-externo\/","title":{"rendered":"Instalaci\u00f3n de certificados SSL en un hosting externo en Linux"},"content":{"rendered":"<p>En la actualidad los nuevos servicios o aplicaciones web se pueden montar en servidores externos al hosting del dominio principal, por lo que se puede requerir la instalaci\u00f3n de certificados SSL para un subdominio y servidor en Linux de otro proveedor.<\/p>\n<figure id=\"attachment_5482\" aria-describedby=\"caption-attachment-5482\" style=\"width: 444px\" class=\"wp-caption aligncenter\"><img fetchpriority=\"high\" decoding=\"async\" class=\"wp-image-5482\" src=\"https:\/\/itsoftware.com.co\/content\/wp-content\/uploads\/2017\/11\/Instalacio\u0301n-de-Certificados-SSL.jpg\" alt=\"Instalaci\u00f3n de certificados SSL\" width=\"444\" height=\"141\" \/><figcaption id=\"caption-attachment-5482\" class=\"wp-caption-text\">Instalacio\u0301n de Certificados SSL<\/figcaption><\/figure>\n<p><!--more--><\/p>\n<p>Los certificados SSL le permiten a un sitio web manejar transacciones seguras, ya que la informaci\u00f3n se encripta desde que sale del navegador web, hasta que llega al servidor de destino. De esta forma se garantiza que la informaci\u00f3n no es interceptada en el camino.<\/p>\n<p>Este art\u00edculo detalla paso a paso el proceso para solicitar e instalar un certificado SSL en un host externo bajo sistema operativo Linux Ubuntu:<\/p>\n<p>&nbsp;<\/p>\n<h2>1. Compra del certificado SSL<\/h2>\n<p>Esencialmente se pueden comprar dos tipos de certificados, uno denominado essential y otro llamado wildcard. El certificado essential es para un solo subominio, por ejemplo pagina.miweb.com. El otro certificado wildcard sirve para todo el dominio, por ejemplo sirve para pagina.miweb.com, www.miweb.com, correo.miweb.com, etc. El costo del certificado depende de uno u otro tipo.<\/p>\n<p>Los certificados tienen como vigencia m\u00ednima 1 a\u00f1o, se pueden comprar con mayor vigencia si se desea.<\/p>\n<p>Para solicitar el certificado a nuestro proveedor, necesitamos proveerle de un archivo conocido como .csr. Esta es la llave p\u00fablica del certificado.<\/p>\n<p>&nbsp;<\/p>\n<h2>2. Extraer el archivo .csr<\/h2>\n<p>El archivo .csr se debe extraer desde el servidor que va a ofrecer los servicios web, en\u00a0 Linux se ingresa el siguiente comando, considerando que ya tenemos instalado el m\u00f3dulo <a href=\"https:\/\/www.openssl.org\/\">openssl<\/a>:<\/p>\n<pre>openssl req -nodes -newkey rsa:2048 -keyout myserver.key -out server.csr<\/pre>\n<p>Este comando va a solicitar una serie de datos con los que se va a construir el archivo .csr y la llave privada .key.<\/p>\n<blockquote>\n<pre>ountry Name (2 letter code) [AU]:<span style=\"color: #ff0000;\"> <b>CO<\/b><\/span>\r\nState or Province Name (full name) [Some-State]: <span style=\"color: #ff0000;\"><strong>CUNDINAMARCA<\/strong><\/span>\r\nLocality Name (eg, city) []: <span style=\"color: #ff0000;\"><strong>BOGOTA<\/strong><\/span>\r\nOrganization Name (eg, company) [Internet Widgits Pty Ltd]: <span style=\"color: #ff0000;\"><strong>COMPANIA<\/strong><\/span>\r\nOrganizational Unit Name (eg, section) []: <span style=\"color: #ff0000;\"><strong>IT<\/strong><\/span>\r\nCommon Name (eg, YOUR name) []: <strong><span style=\"color: #ff0000;\">pagina.miweb.com<\/span> (essential) o <span style=\"color: #ff0000;\">*.miweb.com<\/span> (wildcard)<\/strong>\r\nEmail Address []:<\/pre>\n<\/blockquote>\n<p>En el par\u00e1metro Common Name, ponemos el subdominio para una certificado essential (<span style=\"color: #ff0000;\">pagina.miweb.com<\/span>), o el dominio con el * (<span style=\"color: #ff0000;\">*.miweb.com<\/span>) para el certificado wildcard.<\/p>\n<p>Estos son datos adicionales que se pueden ingresar<\/p>\n<blockquote>\n<pre>A challenge password []: \r\nAn optional company name []:<\/pre>\n<\/blockquote>\n<p>Los par\u00e1metros <em>Email Address, A challenge password, An optional company Name<\/em>, no son necesarios cuando se solicita un certificado para un servidor web.<\/p>\n<p>En este ejemplo, el comando va a generar los archivos <strong>myserver.key<\/strong> y <strong>server.csr<\/strong>.<\/p>\n<p>El archivo .key es la clave privada, por lo que nadie lo debe conocer, mientras que <span style=\"color: #ff0000;\"><strong>SOLO<\/strong><\/span> el archivo .csr es el que le enviamos al proveedor para que nos genere el certificado ssl.<\/p>\n<p>&nbsp;<\/p>\n<h2>3. Validaci\u00f3n del dominio<\/h2>\n<p>Una vez que el proveedor recibe el archivo .csr y el pago del certificado, env\u00eda un correo a los administradores del dominio, para que por medio de un link y un n\u00famero de validaci\u00f3n, garanticen que qui\u00e9n est\u00e1 haciendo el proceso es due\u00f1o del dominio.<\/p>\n<p>&nbsp;<\/p>\n<h2>4. Instalaci\u00f3n de Certificados SSL<\/h2>\n<p>El proveedor entonces enviar\u00e1 los archivos del certificado, que son dos archivos de extensiones .ca-bundle y .crt. Estos dos archivos junto con el archivo .key los trasladamos al servidor donde vamos a hacer la instalaci\u00f3n de certificados SSL.<\/p>\n<p>Siguiendo con nuestro ejemplo, consideremos que el proveedor nos env\u00eda los archivos:<\/p>\n<pre>miweb.ca-bundle\r\nmiweb.crt<\/pre>\n<p>Estos dos archivos, junto con el archivo <strong>myserver.key<\/strong>, se trasladan al servidor en las siguiente ubicaciones:<\/p>\n<p>myserver.key\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0-&gt;\u00a0 \u00a0 \u00a0 \u00a0\/etc\/ssl\/ssl.key\/mysever.key<br \/>\nmiweb.ca-bundle\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0-&gt;\u00a0 \u00a0 \u00a0 \u00a0\/etc\/ssl\/ssl.crt\/myweb.ca-bundle<br \/>\nmiweb.crt\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0-&gt;\u00a0 \u00a0 \u00a0 \/etc\/ssl\/ssl.crt\/miweb.crt<\/p>\n<p>&nbsp;<\/p>\n<h2>4. Habilitaci\u00f3n del m\u00f3dulo SSL en Apache<\/h2>\n<p>Debemos tener habilitado el m\u00f3dulo ssl en apache, sino se hace con el siguiente comando:<\/p>\n<pre class=\"code-pre \"><code>sudo a2enmod ssl<\/code><\/pre>\n<p>&nbsp;<\/p>\n<h2>5. Activaci\u00f3n del puerto 443 para https (SSL)<\/h2>\n<div><\/div>\n<div>\u00a0En el archivo\u00a0\/etc\/apache2\/ports.conf, registramos el nuevo puerto 443<\/div>\n<div><\/div>\n<div>\n<pre class=\"p1\"><span class=\"s1\">&lt;IfModule ssl_module&gt;<\/span>\r\n<span class=\"s1\">   Listen 443<\/span>\r\n<span class=\"s1\">&lt;\/IfModule&gt;<\/span>\r\n\r\n<span class=\"s1\">&lt;IfModule mod_gnutls.c&gt;<\/span>\r\n<span class=\"s1\">  Listen 443<\/span>\r\n<span class=\"s1\">&lt;\/IfModule&gt;<\/span><\/pre>\n<\/div>\n<p>&nbsp;<\/p>\n<h2>6. Registro de los certificados en el puerto 443<\/h2>\n<div>Para la instalaci\u00f3n de los certificados SSL en apache2, se registran en\u00a0en:<\/div>\n<div><\/div>\n<blockquote>\n<div>\/etc\/apache2\/sites-enabled\/000-default.conf<\/div>\n<\/blockquote>\n<div><\/div>\n<pre>&lt;VirtualHost *:443&gt;\r\n    DocumentRoot \/var\/www\/\r\n\r\n\u00a0 \u00a0 <em>\u00a0&lt;.. aqu\u00ed se incluye los par\u00e1metros adicionales requeridos por el servidor web ...&gt;<\/em>\r\n\r\n\u00a0 \u00a0 #SSL configuration:\r\n\u00a0 \u00a0<span style=\"color: #ff0000;\"> SSLEngine on<\/span>\r\n<span style=\"color: #ff0000;\">\u00a0 \u00a0 SSLCertificateKeyFile \/etc\/ssl\/ssl.key\/myserver.key<\/span>\r\n<span style=\"color: #ff0000;\">\u00a0 \u00a0 SSLCertificateFile \/etc\/ssl\/ssl.crt\/miweb.crt<\/span>\r\n<span style=\"color: #ff0000;\">\u00a0 \u00a0 SSLCertificateChainFile \/etc\/ssl\/ssl.crt\/miweb.ca-bundle<\/span>\r\n\r\n&lt;\/VirtualHost&gt;<\/pre>\n<div><\/div>\n<h2>7. Redireccionamiento del http a https (puerto 80 a puerto 443)<\/h2>\n<p>Tambi\u00e9n en el archivo\u00a0<em>\/etc\/apache2\/sites-enabled\/000-default.conf<\/em>, registramos lo siguiente para redireccionar todas las peticiones http a https:<\/p>\n<pre>&lt;VirtualHost *:80&gt;\r\n\u00a0 \u00a0 \u00a0ServerName vendiendo.com.co\r\n\u00a0 \u00a0 \u00a0ServerAdmin webmaster@localhost\r\n\u00a0 \u00a0 \u00a0DocumentRoot \/var\/www\/\r\n\u00a0 \u00a0<span style=\"color: #ff0000;\"> \u00a0Redirect permanent \/ https:\/\/pagina.miweb.com\/<\/span>\r\n&lt;\/VirtualHost&gt;<\/pre>\n<h2><\/h2>\n<h2>8. Reinicio del servidor web apache<\/h2>\n<div><\/div>\n<div>Una vez hechos todos estos pasos, se reinicia el servidor Apache<\/div>\n<div><\/div>\n<pre>service apache2 restart<\/pre>\n<h2><\/h2>\n<h2>9. Redirecci\u00f3n del subdominio a la direcci\u00f3n del servidor en hosting<\/h2>\n<p>Finalmente debemos garantizar que el subdominio apunte al servidor web en el hosting externo, para este fin, en el administrador del dominio principal, debemos registrar una \u00e1rea de dominio tipo A.<\/p>\n<p>Si por ejemplo nuestro servidor destino tiene la direcci\u00f3n IP: 10.10.10.100, entonces el registro del dominio tipo A quedar\u00eda as\u00ed:<\/p>\n<figure id=\"attachment_5480\" aria-describedby=\"caption-attachment-5480\" style=\"width: 970px\" class=\"wp-caption aligncenter\"><img decoding=\"async\" class=\"size-full wp-image-5480\" src=\"https:\/\/itsoftware.com.co\/content\/wp-content\/uploads\/2017\/11\/Zona-Tipo-A.png\" alt=\"Zona Tipo A\" width=\"970\" height=\"150\" \/><figcaption id=\"caption-attachment-5480\" class=\"wp-caption-text\">Zona Tipo A<\/figcaption><\/figure>\n<p>Para que finalmente el subdominio pagina.miweb.com se dirija al servidor con IP 10.10.10.100, se puede tomar hasta 36 horas, mientras se propaga esta regla del DNS por toda la red.<\/p>\n<p>&nbsp;<\/p>\n<h2>10. Verificaci\u00f3n de la instalaci\u00f3n de certificados SSL<\/h2>\n<p>Surtidos los pasos anteriores, ingresamos en un navegador con la direcci\u00f3n del subdominio (http:\/\/pagina.miweb.com), con lo que debe ser redirigida autom\u00e1ticamente a la p\u00e1gina con certificado SSL (https:\/\/pagina.miweb.com), apareciendo un icono en verde, haciendo referencia que el certificado es correcto:<\/p>\n<figure id=\"attachment_5481\" aria-describedby=\"caption-attachment-5481\" style=\"width: 372px\" class=\"wp-caption aligncenter\"><img decoding=\"async\" class=\" wp-image-5481\" src=\"https:\/\/itsoftware.com.co\/content\/wp-content\/uploads\/2017\/11\/Valicacio\u0301n-instalacio\u0301n-de-certificados-SSL.png\" alt=\"Validacio\u0301n instalacio\u0301n de certificados SSL\" width=\"372\" height=\"48\" \/><figcaption id=\"caption-attachment-5481\" class=\"wp-caption-text\">Validacio\u0301n instalacio\u0301n de certificados SSL<\/figcaption><\/figure>\n<p>&nbsp;<\/p>\n<p>La instalaci\u00f3n de certificados SSL es muy importante no solo para dar seguridad de las transacciones a los visitantes de una p\u00e1gina o aplicaci\u00f3n web, sino tambi\u00e9n para obtener un mejor ranking en los buscadores (SEO), porque le dan prioridad a los sitios seguros sobre los potencialmente inseguros.<\/p>\n<p>En\u00a0<a href=\"http:\/\/itsoftware.com.co\">ITSoftware SAS<\/a>\u00a0ofrecemos nuestros servicios de hosting con todas las garant\u00edas de seguridad que sus clientes y la red exigen, para evitar cualquier tipo de inconveniente con sus clientes o con intrusos indeseados.<\/p>\n<h3>Si te gust\u00f3 este art\u00edculo, por favor no olvides compartirlo en las redes sociales. \ud83d\ude09<\/h3>\n","protected":false},"excerpt":{"rendered":"<p>En la actualidad los nuevos servicios o aplicaciones web se pueden montar en servidores externos al hosting del dominio principal, por lo que se puede requerir la instalaci\u00f3n de certificados[&#8230;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[109,1205],"tags":[1393,1392,1391,1390,1389],"class_list":["post-5479","post","type-post","status-publish","format-standard","hentry","category-hosting-2","category-seguridad-de-red","tag-certificado-ssl-host-externo","tag-certificado-ssl-subdominio","tag-certificados-ssl-en-linux","tag-certificados-ssl-en-ubuntu","tag-instalacion-de-certificados-ssl"],"aioseo_notices":[],"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/itsoftware.com.co\/content\/wp-json\/wp\/v2\/posts\/5479","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/itsoftware.com.co\/content\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/itsoftware.com.co\/content\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/itsoftware.com.co\/content\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/itsoftware.com.co\/content\/wp-json\/wp\/v2\/comments?post=5479"}],"version-history":[{"count":0,"href":"https:\/\/itsoftware.com.co\/content\/wp-json\/wp\/v2\/posts\/5479\/revisions"}],"wp:attachment":[{"href":"https:\/\/itsoftware.com.co\/content\/wp-json\/wp\/v2\/media?parent=5479"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/itsoftware.com.co\/content\/wp-json\/wp\/v2\/categories?post=5479"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/itsoftware.com.co\/content\/wp-json\/wp\/v2\/tags?post=5479"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}