{"id":159,"date":"2020-05-18T19:06:18","date_gmt":"2020-05-18T19:06:18","guid":{"rendered":"http:\/\/dsantana.uas.edu.mx\/?p=159"},"modified":"2025-01-17T00:21:18","modified_gmt":"2025-01-17T00:21:18","slug":"openvpn","status":"publish","type":"post","link":"https:\/\/dsantana.uas.edu.mx\/index.php\/2020\/05\/18\/openvpn\/","title":{"rendered":"OpenVPN"},"content":{"rendered":"\n<figure class=\"wp-block-image aligncenter size-full\"><img fetchpriority=\"high\" decoding=\"async\" width=\"900\" height=\"600\" src=\"https:\/\/dsantana.uas.edu.mx\/wp-content\/uploads\/2020\/05\/image-6.png\" alt=\"\" class=\"wp-image-1451\" srcset=\"https:\/\/dsantana.uas.edu.mx\/wp-content\/uploads\/2020\/05\/image-6.png 900w, https:\/\/dsantana.uas.edu.mx\/wp-content\/uploads\/2020\/05\/image-6-300x200.png 300w, https:\/\/dsantana.uas.edu.mx\/wp-content\/uploads\/2020\/05\/image-6-768x512.png 768w\" sizes=\"(max-width: 900px) 100vw, 900px\" \/><\/figure>\n\n\n\n<p>Literalmente, hay una lista de razones por las que es posible que desee utilizar una VPN, pero mantener sus datos seguros es el n\u00famero 1 en nuestra lista.<\/p>\n\n\n\n<p>Y si bien hay algunos servicios VPN de pago que son bastante f\u00e1ciles de usar en su billetera \u2026<\/p>\n\n\n\n<p>Si est\u00e1 tratando de mantener sus datos seguros, \u00bfpor qu\u00e9 confiar\u00eda en ellos a una empresa s\u00faper secreta que puede o no tener conexiones con las operaciones de miner\u00eda de datos ?<\/p>\n\n\n\n<p><strong>Respuesta<\/strong>: no deber\u00edas.<\/p>\n\n\n\n<p>Especialmente cuando es tan f\u00e1cil y econ\u00f3mico configurar su propia VPN r\u00e1pida en su SSD Nodes VPS.<\/p>\n\n\n\n<p>As\u00ed que hoy, le mostraremos c\u00f3mo instalar OpenVPN en Debian 10 para mantener sus datos verdaderamente seguros.<\/p>\n\n\n\n<p><strong>Requisitos previos para instalar OpenVPN en Debian 10<\/strong><\/p>\n\n\n\n<p>Dos VPS que ejecutan Debian 10, uno para alojar el servicio OpenVPN y otro para servir como su Autoridad de certificaci\u00f3n (CA). No se recomienda usar su servidor OpenVPN como su CA, esto abre su VPN a las vulnerabilidades de seguridad.<\/p>\n\n\n\n<p>Una cuenta regular (no root) con privilegios de sudo. Consulte nuestro tutorial de claves SSH para obtener m\u00e1s informaci\u00f3n.<\/p>\n\n\n\n<p><strong>NOTA<\/strong>: Si deshabilita la autenticaci\u00f3n de contrase\u00f1a mientras configura estos servidores, puede tener dificultades al transferir archivos entre ellos m\u00e1s adelante en esta gu\u00eda. Para resolver este problema, puede volver a habilitar la autenticaci\u00f3n de contrase\u00f1a en cada servidor. O bien, puede generar un par de claves SSH para cada servidor, luego agregar la clave SSH p\u00fablica del servidor OpenVPN al archivo autorizado de claves de la m\u00e1quina de CA y viceversa.<\/p>\n\n\n\n<p>\u00bfCu\u00e1l es la MEJOR OFERTA en el alojamiento en la nube?<br>Desarrolle a alta velocidad con un VPS de rendimiento de nodos SSD. DOBLAMOS la cantidad de almacenamiento NVMe incre\u00edblemente r\u00e1pido en nuestro plan m\u00e1s popular y reforzamos la oferta de CPU en estos planes. No hay nada m\u00e1s parecido en el mercado, al menos no a estos precios.<\/p>\n\n\n\n<p>\u00a1Obtenga un VPS de rendimiento de 16GB con 160GB de almacenamiento NVMe por solo $ 89 \/ a\u00f1o por tiempo limitado!<\/p>\n\n\n\n<p>\u00a1Obt\u00e9n ofertas por tiempo limitado! \u26a1<\/p>\n\n\n\n<p><strong>Paso 1<\/strong>: Instale OpenVPN y EasyRSA<\/p>\n\n\n\n<p>Comencemos actualizando nuestro aptcach\u00e9 e instal\u00e1ndolo openvpn.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>$ sudo apt update\n$ sudo apt install openvpn<\/code><\/pre>\n\n\n\n<p>OpenVPN utiliza SSL \/ TLS para la autenticaci\u00f3n y el intercambio de claves para cifrar el tr\u00e1fico entre el servidor y los clientes.<br>Para emitir certificados de confianza, configurar\u00e1 su autoridad de certificaci\u00f3n (CA) simple. Para hacer esto, descargaremos la \u00faltima versi\u00f3n de EasyRSA, que usaremos para construir nuestra infraestructura de clave p\u00fablica (PKI) de CA, desde el repositorio oficial de GitHub del proyecto .<\/p>\n\n\n\n<p>NOTE:Se recomienda mantener el servidor de CA apagado cuando no se utilice para firmar claves como medida de precauci\u00f3n adicional.<\/p>\n\n\n\n<p>Para comenzar a construir la infraestructura de CA y PKI, utilice wgetpara descargar la \u00faltima versi\u00f3n de EasyRSA <strong>tanto en su m\u00e1quina de CA como en su servidor OpenVPN<\/strong> .<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>wget -P ~\/ https:\/\/github.com\/OpenVPN\/easy-rsa\/releases\/download\/v3.0.6\/EasyRSA-unix-v3.0.6.tgz<\/code><\/pre>\n\n\n\n<p>Luego extrae el tarball:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>cd ~\ntar xvf EasyRSA-unix-v3.0.6.tgz<\/code><\/pre>\n\n\n\n<p>Ha instalado con \u00e9xito todo el software requerido en su servidor y m\u00e1quina CA.&nbsp;Contin\u00fae para configurar las variables utilizadas por EasyRSA y para configurar un directorio de CA, desde el cual generar\u00e1 las claves y certificados necesarios para que su servidor y sus clientes accedan a la VPN.<\/p>\n\n\n\n<p><strong>Paso 2: <\/strong>configuraci\u00f3n de las variables de EasyRSA y creaci\u00f3n de la CA<\/p>\n\n\n\n<p>EasyRSA viene instalado con un archivo de configuraci\u00f3n que puede editar para definir una serie de variables para su CA.<\/p>\n\n\n\n<p>En su&nbsp;<strong>m\u00e1quina CA<\/strong>&nbsp;, navegue al directorio EasyRSA:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>cd ~\/EasyRSA-v3.0.6\/<\/code><\/pre>\n\n\n\n<p>Podemos utilizar la&nbsp;plantilla haciendo una copia de un&nbsp;archivo&nbsp;existente&nbsp;en este directorio y renombr\u00e1ndolo&nbsp;:<code>easy-rsavars.examplevars<\/code><\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>cp vars.example vars<\/code><\/pre>\n\n\n\n<p>Necesitamos editar algunas de las variables que ayudan a decidir c\u00f3mo crear los certificados.&nbsp;Use&nbsp;<code>nano<\/code>, u otro editor favorito, para abrir el archivo.&nbsp;Vamos a editar algunas variables hacia el final del archivo.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>nano vars<\/code><\/pre>\n\n\n\n<p>Encuentre la configuraci\u00f3n que establece los valores predeterminados de campo para los nuevos certificados.&nbsp;Se ver\u00e1 algo como esto:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>#set_var EASYRSA_REQ_COUNTRY    \"US\"\n#set_var EASYRSA_REQ_PROVINCE   \"California\"\n#set_var EASYRSA_REQ_CITY       \"San Francisco\"\n#set_var EASYRSA_REQ_ORG        \"Copyleft Certificate Co\"\n#set_var EASYRSA_REQ_EMAIL      \"me@example.net\"\n#set_var EASYRSA_REQ_OU         \"My Organizational Unit\"\n<\/code><\/pre>\n\n\n\n<p>Descomente estas l\u00edneas y actualice los valores resaltados a lo que prefiera, pero no los deje en blanco:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>set_var EASYRSA_REQ_COUNTRY    \"MX\"\nset_var EASYRSA_REQ_PROVINCE   \"Sinaloa\"\nset_var EASYRSA_REQ_CITY       \"Mazatlan\"\nset_var EASYRSA_REQ_ORG        \"FIMaz\"\nset_var EASYRSA_REQ_EMAIL      \"dsantana@fimaz.net\"\nset_var EASYRSA_REQ_OU         \"TI\"<\/code><\/pre>\n\n\n\n<p>Cuando haya terminado, guarde y cierre el archivo.<\/p>\n\n\n\n<p>Dentro del directorio EasyRSA hay un script llamado&nbsp;<code>easyrsa<\/code>que se llama para realizar una variedad de tareas relacionadas con la construcci\u00f3n y administraci\u00f3n de la CA.&nbsp;Ejecute este script con la&nbsp;<code>init-pki<\/code>opci\u00f3n de iniciar la infraestructura de clave p\u00fablica en el servidor de CA:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>.\/easyrsa init-pki<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>Output\n. . .\ninit-pki complete; you may now create a CA or requests.\nYour newly created PKI dir is: \/home\/debian\/EasyRSA-v3.0.6\/pki<\/code><\/pre>\n\n\n\n<p>Despu\u00e9s de esto,&nbsp;<code>easyrsa<\/code>vuelva a&nbsp;llamar al&nbsp;script, sigui\u00e9ndolo con la&nbsp;<code>build-ca<\/code>opci\u00f3n.&nbsp;Esto crear\u00e1 la CA y crear\u00e1 dos archivos importantes,&nbsp;<code>ca.crt<\/code>y&nbsp;<code>ca.key<\/code>que conforman los lados p\u00fablico y privado de un certificado SSL.<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><code>ca.crt<\/code>es el archivo de certificado p\u00fablico de la CA que, en el contexto de OpenVPN, el servidor y el cliente usan para informarse mutuamente que son parte de la misma red de confianza y no alguien que realiza un ataque de hombre en el medio.\u00a0Por esta raz\u00f3n, su servidor y todos sus clientes necesitar\u00e1n una copia del\u00a0<code>ca.crt<\/code>archivo.<\/li>\n\n\n\n<li><code>ca.key<\/code>es la clave privada que la m\u00e1quina de CA usa para firmar claves y certificados para servidores y clientes.\u00a0Si un atacante obtiene acceso a su CA y, a su vez, a su\u00a0<code>ca.key<\/code>archivo, podr\u00e1 firmar solicitudes de certificados y acceder a su VPN, lo que impide su seguridad.\u00a0Es por eso que su\u00a0<code>ca.key<\/code>archivo\u00a0<strong>solo<\/strong>\u00a0debe\u00a0estar en su m\u00e1quina CA y que, idealmente, su m\u00e1quina CA debe mantenerse fuera de l\u00ednea cuando no se firman las solicitudes de certificado como medida de seguridad adicional.<\/li>\n<\/ul>\n\n\n\n<p>Si no desea que se le solicite una contrase\u00f1a cada vez que interact\u00faa con su CA, puede ejecutar el&nbsp;<code>build-ca<\/code>comando con la&nbsp;<code>nopass<\/code>opci\u00f3n, como esta:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>.\/easyrsa build-ca nopass<\/code><\/pre>\n\n\n\n<p>En la salida, se le pedir\u00e1 que confirme el&nbsp;<em>nombre com\u00fan<\/em>&nbsp;para su CA:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>Output\n. . .\nCommon Name (eg: your user, host, or server name) &#91;Easy-RSA CA]:<\/code><\/pre>\n\n\n\n<p>El nombre com\u00fan es el nombre utilizado para referirse a esta m\u00e1quina en el contexto de la autoridad de certificaci\u00f3n.&nbsp;Puede ingresar cualquier cadena de caracteres para el nombre com\u00fan de la CA pero, por simplicidad, presione&nbsp;<code>ENTER<\/code>para aceptar el nombre predeterminado.<\/p>\n\n\n\n<p>Con eso, su CA est\u00e1 en su lugar y est\u00e1 lista para comenzar a firmar solicitudes de certificados.<\/p>\n\n\n\n<p><strong>Paso 3: <\/strong>creaci\u00f3n del certificado del servidor, la clave y los archivos de cifrado<\/p>\n\n\n\n<p>Ahora que tiene una CA lista para funcionar, puede generar una clave privada y una solicitud de certificado desde su servidor y luego transferir la solicitud a su CA para que se firme, creando el certificado requerido.&nbsp;Tambi\u00e9n es libre de crear algunos archivos adicionales utilizados durante el proceso de cifrado.<\/p>\n\n\n\n<p>Comience navegando al directorio EasyRSA en su&nbsp;<strong>servidor OpenVPN<\/strong>&nbsp;:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>cd EasyRSA-v3.0.6\/<\/code><\/pre>\n\n\n\n<p>A partir de ah\u00ed, ejecute el&nbsp;<code>easyrsa<\/code>script con la&nbsp;<code>init-pki<\/code>opci\u00f3n.&nbsp;Aunque ya ejecut\u00f3 este comando en la m\u00e1quina de CA, es necesario ejecutarlo aqu\u00ed porque su servidor y CA tendr\u00e1n directorios PKI separados:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>.\/easyrsa init-pki<\/code><\/pre>\n\n\n\n<p>Luego&nbsp;<code>easyrsa<\/code>, vuelva a&nbsp;llamar al&nbsp;script, esta vez con la&nbsp;<code>gen-req<\/code>opci\u00f3n seguida de un nombre com\u00fan para la m\u00e1quina.&nbsp;Una vez m\u00e1s, esto podr\u00eda ser lo que quiera, pero puede ser \u00fatil para que sea algo descriptivo.&nbsp;A lo largo de este tutorial, el nombre com\u00fan del servidor OpenVPN ser\u00e1 simplemente \u00abservidor\u00bb.&nbsp;Aseg\u00farese de incluir tambi\u00e9n la&nbsp;<code>nopass<\/code>opci\u00f3n.&nbsp;De lo contrario, proteger\u00e1 con contrase\u00f1a el archivo de solicitud, lo que podr\u00eda provocar problemas de permisos m\u00e1s adelante:<\/p>\n\n\n\n<p><strong>NOTA<\/strong>: Si elige un nombre que no sea \u00abservidor\u00bb aqu\u00ed, deber\u00e1 ajustar algunas de las instrucciones a continuaci\u00f3n.&nbsp;Por ejemplo, al copiar los archivos generados en el&nbsp;<code>\/etc\/openvpn<\/code>directorio, deber\u00e1 sustituir los nombres correctos.&nbsp;Tambi\u00e9n tendr\u00e1 que modificar el&nbsp;<code>\/etc\/openvpn\/server.conf<\/code>archivo posteriormente a punto para el correcto&nbsp;<code>.crt<\/code>y&nbsp;<code>.key<\/code>archivos.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>.\/easyrsa gen-req server nopass<\/code><\/pre>\n\n\n\n<p>Esto crear\u00e1 una clave privada para el servidor y un archivo de solicitud de certificado llamado&nbsp;<code>server.req<\/code>.&nbsp;Copie la clave del servidor en el directorio&nbsp;<code>\/etc\/openvpn\/<\/code>:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo cp ~\/EasyRSA-v3.0.6\/pki\/private\/server.key \/etc\/openvpn\/<\/code><\/pre>\n\n\n\n<p>Usando un m\u00e9todo seguro (como SCP, en nuestro ejemplo a continuaci\u00f3n), transfiera el archivo&nbsp;<code>vpnserver.req<\/code>a su m\u00e1quina CA:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>scp ~\/EasyRSA-v3.0.6\/pki\/reqs\/server.req debian@your_CA_ip:\/tmp<\/code><\/pre>\n\n\n\n<p>A continuaci\u00f3n, en&nbsp;<strong>su m\u00e1quina CA<\/strong>&nbsp;, navegue al directorio EasyRSA:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>cd EasyRSA-v3.0.6\/<\/code><\/pre>\n\n\n\n<p>Utilizando&nbsp;<code>easyrsa script<\/code>nuevamente, importe el archivo&nbsp;<code>vpnserver.req<\/code>, siguiendo la ruta del archivo con su nombre com\u00fan:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>.\/easyrsa import-req \/tmp\/server.req server<\/code><\/pre>\n\n\n\n<p>Luego, firme la solicitud ejecutando el scrip&nbsp;<code>easyrsa<\/code> con la opcion&nbsp;<code>sign-req<\/code>, seguido del&nbsp;<em>tipo de solicitud<\/em>&nbsp;y el nombre com\u00fan.&nbsp;El tipo de solicitud puede ser&nbsp;<code>client<\/code>o&nbsp;<code>server<\/code>, por lo tanto, para la solicitud de certificado del servidor OpenVPN, aseg\u00farese de utilizar el tipo&nbsp;<code>server<\/code> de solicitud:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>.\/easyrsa sign-req server server<\/code><\/pre>\n\n\n\n<p>En la salida, se le pedir\u00e1 que verifique que la solicitud proviene de una fuente confiable.&nbsp;Escriba&nbsp;<code>yes<\/code>y presione&nbsp;<code>ENTER<\/code>para confirmar esto:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>You are about to sign the following certificate.\nPlease check over the details shown below for accuracy. Note that this request\nhas not been cryptographically verified. Please be sure it came from a trusted\nsource or that you have verified the request checksum with the sender.\n\nRequest subject, to be signed as a server certificate for 1080 days:\n\nsubject=\n    commonName                = server\n\n\nType the word 'yes' to continue, or any other input to abort.\n  Confirm request details: yes<\/code><\/pre>\n\n\n\n<p>Si cifr\u00f3 su clave CA, se le pedir\u00e1 su contrase\u00f1a en este momento.<\/p>\n\n\n\n<p>Luego, transfiera el certificado firmado a su servidor VPN utilizando un m\u00e9todo seguro:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>scp pki\/issued\/server.crt debian@your_server_ip:\/tmp<\/code><\/pre>\n\n\n\n<p>Antes de cerrar sesi\u00f3n en su m\u00e1quina CA, transfiera el archivo&nbsp;<code>ca.crt<\/code>a su servidor tambi\u00e9n:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>scp pki\/ca.crt debian@your_server_ip:\/tmp<\/code><\/pre>\n\n\n\n<p>Luego, vuelva a iniciar sesi\u00f3n en su servidor OpenVPN y copie los&nbsp;archivos&nbsp;<code>server.crt<\/code>y&nbsp;<code>ca.crt<\/code>en su directorio&nbsp;<code>\/etc\/openvpn\/<\/code>:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo cp \/tmp\/{server.crt,ca.crt} \/etc\/openvpn\/<\/code><\/pre>\n\n\n\n<p>Luego navegue a su directorio EasyRSA:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>cd EasyRSA-v3.0.6\/<\/code><\/pre>\n\n\n\n<p>A partir de ah\u00ed, cree una clave fuerte de Diffie-Hellman para usar durante el intercambio de claves escribiendo:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>.\/easyrsa gen-dh<\/code><\/pre>\n\n\n\n<p>Esto puede tardar unos minutos en completarse.&nbsp;Una vez que lo haga, genere una firma HMAC para fortalecer las capacidades de verificaci\u00f3n de integridad TLS del servidor:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo openvpn --genkey --secret ta.key<\/code><\/pre>\n\n\n\n<p>Cuando finalice el comando, copie los dos archivos nuevos en su directorio&nbsp;<code>\/etc\/openvpn\/<\/code>:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo cp ~\/EasyRSA-v3.0.6\/ta.key \/etc\/openvpn\/\nsudo cp ~\/EasyRSA-v3.0.6\/pki\/dh.pem \/etc\/openvpn\/<\/code><\/pre>\n\n\n\n<p>Con eso, se han generado todos los archivos de certificados y claves que necesita su servidor.&nbsp;Est\u00e1 listo para crear los certificados y claves correspondientes que su m\u00e1quina cliente utilizar\u00e1 para acceder a su servidor OpenVPN.<\/p>\n\n\n\n<p><strong>Paso 4<\/strong>: generar un certificado de cliente y un par de claves<\/p>\n\n\n\n<p>Aunque puede generar una clave privada y una solicitud de certificado en su m\u00e1quina cliente y luego enviarla a la CA para que la firme, esta gu\u00eda describe un proceso para generar la solicitud de certificado en el servidor.&nbsp;El beneficio de esto es que podemos crear un script que generar\u00e1 autom\u00e1ticamente archivos de configuraci\u00f3n del cliente que contienen todas las claves y certificados requeridos.&nbsp;Esto le permite evitar tener que transferir claves, certificados y archivos de configuraci\u00f3n a los clientes y agiliza el proceso de unirse a la VPN.<\/p>\n\n\n\n<p>Generaremos una sola clave de cliente y un par de certificados para esta gu\u00eda.&nbsp;Si tiene m\u00e1s de un cliente, puede repetir este proceso para cada uno.&nbsp;Sin embargo, tenga en cuenta que deber\u00e1 pasar un valor de nombre \u00fanico al script para cada cliente.&nbsp;En este tutorial, se hace referencia al primer par de certificado \/ clave&nbsp;<code>client1<\/code>.<\/p>\n\n\n\n<p>Comience creando una estructura de directorio dentro de su directorio de inicio para almacenar el certificado del cliente y los archivos clave:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>mkdir -p ~\/client-configs\/keys<\/code><\/pre>\n\n\n\n<p>Dado que los pares de certificado \/ clave de sus clientes y los archivos de configuraci\u00f3n se almacenar\u00e1n en este directorio, bloquee sus permisos como medida de seguridad:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>chmod -R 700 ~\/client-configs<\/code><\/pre>\n\n\n\n<p>Luego, regrese al directorio de EasyRSA y ejecute el scrip&nbsp;<code>easyrsa<\/code> con las&nbsp;opciones&nbsp;<code>gen-req<\/code>y&nbsp;<code>nopass<\/code>, junto con el nombre com\u00fan del cliente:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>cd ~\/EasyRSA-v3.0.6\/\n.\/easyrsa gen-req client1 nopass<\/code><\/pre>\n\n\n\n<p>Presione&nbsp;<code>ENTER<\/code>para confirmar el nombre com\u00fan.&nbsp;Luego, copie el archivo&nbsp;<code>client1.key<\/code>en el&nbsp;directorio<code>\/client-configs\/keys\/<\/code>que cre\u00f3 anteriormente:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>cp pki\/private\/client1.key ~\/client-configs\/keys\/<\/code><\/pre>\n\n\n\n<p>Luego, transfiera el&nbsp;<code>client1.req<\/code>archivo a su m\u00e1quina CA utilizando un m\u00e9todo seguro:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>scp pki\/reqs\/client1.req debian@your_CA_ip:\/tmp<\/code><\/pre>\n\n\n\n<p>Inicie sesi\u00f3n en su m\u00e1quina de CA, navegue al directorio EasyRSA e importe la solicitud de certificado:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>ssh debian@your_CA_ip\ncd EasyRSA-v3.0.6\/\n.\/easyrsa import-req \/tmp\/client1.req client1<\/code><\/pre>\n\n\n\n<p>Luego, firme la solicitud como lo hizo para el servidor en el paso anterior.&nbsp;Esta vez, sin embargo, aseg\u00farese de especificar el tipo de solicitud&nbsp;<code>client<\/code>:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>.\/easyrsa sign-req client client1<\/code><\/pre>\n\n\n\n<p>Cuando se le solicite, ingrese s\u00ed para confirmar que tiene la intenci\u00f3n de firmar la solicitud de certificado y que proviene de una fuente confiable.&nbsp;obtendr\u00edas el siguiente resultado<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>Output\nType the word 'yes' to continue, or any other input to abort.\n  Confirm request details: yes<\/code><\/pre>\n\n\n\n<p>Nuevamente, si cifr\u00f3 su clave de CA, se le solicitar\u00e1 su contrase\u00f1a aqu\u00ed.<\/p>\n\n\n\n<p>Esto crear\u00e1 un archivo de certificado de cliente llamado&nbsp;<code>client1.crt<\/code>.&nbsp;Transfiera este archivo nuevamente al servidor:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>scp pki\/issued\/client1.crt debian@your_server_ip:\/tmp<\/code><\/pre>\n\n\n\n<p>SSH de nuevo en su servidor OpenVPN y copie el certificado del cliente en el directorio&nbsp;<code>\/client-configs\/keys\/<\/code>:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>cp \/tmp\/client1.crt ~\/client-configs\/keys\/<\/code><\/pre>\n\n\n\n<p>A continuaci\u00f3n, copie los&nbsp;archivos&nbsp;<code>ca.crt<\/code>y tambi\u00e9n&nbsp;<code>ta.key<\/code>en el directorio&nbsp;<code>\/client-configs\/keys\/<\/code>:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>cp ~\/EasyRSA-v3.0.6\/ta.key ~\/client-configs\/keys\/\nsudo cp \/etc\/openvpn\/ca.crt ~\/client-configs\/keys\/<\/code><\/pre>\n\n\n\n<p>Con eso, los certificados y claves de su servidor y cliente se han generado y se almacenan en los directorios apropiados en su servidor.&nbsp;Todav\u00eda hay algunas acciones que deben realizarse con estos archivos, pero vendr\u00e1n en un paso posterior.&nbsp;Por ahora, puede pasar a configurar OpenVPN en su servidor.<\/p>\n\n\n\n<p><strong>Paso 5: <\/strong>configuraci\u00f3n del servicio OpenVPN<\/p>\n\n\n\n<p>Ahora que se han generado los certificados y las claves de su cliente y servidor, puede comenzar a configurar el servicio OpenVPN para usar estas credenciales.<\/p>\n\n\n\n<p>Comience copiando un archivo de configuraci\u00f3n de OpenVPN de muestra en el directorio de configuraci\u00f3n y luego extr\u00e1igalo para usarlo como base para su configuraci\u00f3n:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo cp \/usr\/share\/doc\/openvpn\/examples\/sample-config-files\/server.conf.gz \/etc\/openvpn\/\nsudo gzip -d \/etc\/openvpn\/server.conf.gz<\/code><\/pre>\n\n\n\n<p>Abra el archivo de configuraci\u00f3n del servidor en su editor de texto preferido:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo nano \/etc\/openvpn\/server.conf<\/code><\/pre>\n\n\n\n<p>Encuentre la secci\u00f3n HMAC buscando la directiva&nbsp;<code>tls-auth<\/code>.&nbsp;Esta l\u00ednea ya no deber\u00eda estar comentada, pero si no lo est\u00e1, elimine \u00bb&nbsp;<strong>;&nbsp;<\/strong>\u00abPara descomentarlo.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>\/etc\/openvpn\/server.conf<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>tls-auth ta.key 0 # This file is secret<\/code><\/pre>\n\n\n\n<p>A continuaci\u00f3n, busque la secci\u00f3n sobre cifrados criptogr\u00e1ficos buscando las&nbsp;<code>cipher<\/code>l\u00edneas&nbsp;comentadas&nbsp;.&nbsp;El&nbsp;<code>AES-256-CBC<\/code>cifrado ofrece un buen nivel de cifrado y est\u00e1 bien soportado.&nbsp;Una vez m\u00e1s, esta l\u00ednea ya no deber\u00eda estar comentada, pero si no lo est\u00e1, simplemente elimine \u00bb&nbsp;<strong>;&nbsp;<\/strong>\u00abPrecedi\u00e9ndolo:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>\/etc\/openvpn\/server.conf<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>cipher AES-256-CBC<\/code><\/pre>\n\n\n\n<p>Debajo de esto, agregue una&nbsp;<code>auth<\/code>directiva para seleccionar el algoritmo de resumen de mensajes HMAC.&nbsp;Para esto,&nbsp;<code>SHA256<\/code>es una buena opci\u00f3n:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>\/etc\/openvpn\/server.conf<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>auth SHA256<\/code><\/pre>\n\n\n\n<p>Luego, encuentre la l\u00ednea que contiene una&nbsp;<code>dh<\/code>directiva que define los par\u00e1metros de Diffie-Hellman.&nbsp;Debido a algunos cambios recientes realizados en EasyRSA, el nombre de archivo para la clave Diffie-Hellman puede ser diferente de lo que aparece en el archivo de configuraci\u00f3n del servidor de ejemplo.&nbsp;Si es necesario, cambie el nombre del archivo que se muestra aqu\u00ed quitando el&nbsp;<code>2048<\/code>para que se alinee con la clave que gener\u00f3 en el paso anterior:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>\/etc\/openvpn\/server.conf<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>dh dh.pem<\/code><\/pre>\n\n\n\n<p>Por \u00faltimo, encontrar las&nbsp;<code>user<\/code>y&nbsp;<code>group<\/code>los ajustes y quitar el \u201c&nbsp;<strong>;&nbsp;<\/strong>\u00abAl comienzo de cada una para descomentar estas l\u00edneas:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>\/etc\/openvpn\/server.conf<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>user nobody\ngroup nogroup<\/code><\/pre>\n\n\n\n<p>Los cambios que ha realizado en el&nbsp;<code>server.conf<\/code>archivo de&nbsp;muestra&nbsp;hasta este punto son necesarios para que OpenVPN funcione.&nbsp;Los cambios descritos a continuaci\u00f3n son opcionales, aunque tambi\u00e9n son necesarios para muchos casos de uso comunes.<\/p>\n\n\n\n<p><strong>(Opcional) Empuje los cambios de DNS para redirigir todo el tr\u00e1fico a trav\u00e9s de la VPN<\/strong><\/p>\n\n\n\n<p>La configuraci\u00f3n anterior crear\u00e1 la conexi\u00f3n VPN entre las dos m\u00e1quinas, pero no obligar\u00e1 a ninguna conexi\u00f3n a usar el t\u00fanel.&nbsp;Si desea utilizar la VPN para enrutar todo su tr\u00e1fico, es probable que desee enviar la configuraci\u00f3n de DNS a las computadoras cliente.<\/p>\n\n\n\n<p>Hay algunas directivas en el archivo&nbsp;<code>server.conf<\/code>que debe cambiar para habilitar esta funcionalidad.&nbsp;Encuentra la seccion&nbsp;<code>redirect-gateway<\/code>y elimina el punto y coma \u00bb&nbsp;<strong>;&nbsp;<\/strong>\u00abDesde el principio de la linea&nbsp;<code>redirect-gateway<\/code> para descomentarla:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>\/etc\/openvpn\/server.conf<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>push \"redirect-gateway def1 bypass-dhcp\"<\/code><\/pre>\n\n\n\n<p>Justo debajo de esto, encuentre la&nbsp;<code>dhcp-option<\/code>secci\u00f3n.&nbsp;Nuevamente, elimine el \u00bb&nbsp;<strong>;&nbsp;<\/strong>\u00abDesde delante de ambas l\u00edneas para descomentarlas:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>\/etc\/openvpn\/server.conf<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>push \"dhcp-option DNS 208.67.222.222\"\npush \"dhcp-option DNS 208.67.220.220\"<\/code><\/pre>\n\n\n\n<p>Esto ayudar\u00e1 a los clientes a reconfigurar su configuraci\u00f3n de DNS para usar el t\u00fanel VPN como puerta de enlace predeterminada.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"optional-adjust-the-port-and-protocol\">(Opcional) Ajuste el puerto y el protocolo<\/h3>\n\n\n\n<p>Por defecto, el servidor OpenVPN usa el puerto&nbsp;<code>1194<\/code>y el protocolo UDP para aceptar conexiones de clientes.&nbsp;Si necesita usar un puerto diferente debido a los entornos de red restrictivos en los que se encuentran sus clientes, puede cambiar la&nbsp;<code>port<\/code>opci\u00f3n.&nbsp;Si no est\u00e1 alojando contenido web en su servidor OpenVPN, el puerto&nbsp;<code>443<\/code>es una opci\u00f3n popular ya que generalmente se permite a trav\u00e9s de reglas de firewall.\/etc\/openvpn\/server.conf<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code># Optional!\nport 443\n<\/code><\/pre>\n\n\n\n<p>A menudo, el protocolo est\u00e1 restringido a ese puerto tambi\u00e9n.&nbsp;Si es as\u00ed, cambie&nbsp;<code>proto<\/code>de UDP a TCP:\/etc\/openvpn\/server.conf<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code># Optional!\nproto tcp\n<\/code><\/pre>\n\n\n\n<p>Si&nbsp;<strong>lo hace<\/strong>&nbsp;cambiar el protocolo de TCP, que tendr\u00e1 que cambiar el&nbsp;<code>explicit-exit-notify<\/code>valor de la directiva de&nbsp;<code>1<\/code>que&nbsp;<code>0<\/code>, ya que esta Directiva s\u00f3lo es utilizado por UDP.&nbsp;Si no lo hace mientras usa TCP, se producir\u00e1n errores al iniciar el servicio OpenVPN:\/etc\/openvpn\/server.conf<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code># Optional!\nexplicit-exit-notify 0\n<\/code><\/pre>\n\n\n\n<p>Si no necesita usar un puerto y protocolo diferente, es mejor dejar estos dos ajustes como sus valores predeterminados.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"optional-point-to-non-default-credentials\">(Opcional) Apunte a credenciales no predeterminadas<\/h3>\n\n\n\n<p>Si seleccion\u00f3 un nombre diferente durante el&nbsp;<code>.\/build-key-server<\/code>comando anterior, modifique las&nbsp;l\u00edneas&nbsp;<code>cert<\/code>y&nbsp;<code>key<\/code>que ve para apuntar a los&nbsp;archivos&nbsp;<code>.crt<\/code>y&nbsp;apropiados&nbsp;<code>.key<\/code>.&nbsp;Si utiliz\u00f3 el nombre predeterminado, \u00abservidor\u00bb, esto ya est\u00e1 configurado correctamente:\/etc\/openvpn\/server.conf<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>cert server.crt\nkey server.key\n<\/code><\/pre>\n\n\n\n<p>Cuando haya terminado, guarde y cierre el archivo.<\/p>\n\n\n\n<p>Despu\u00e9s de revisar y realizar los cambios necesarios en la configuraci\u00f3n de OpenVPN de su servidor para su caso de uso espec\u00edfico, puede comenzar a hacer algunos cambios en la red de su servidor.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"step-6-\u2014-adjusting-the-server-networking-configuration\">Paso 6 &#8211; Ajuste de la configuraci\u00f3n de red del servidor<\/h2>\n\n\n\n<p>Hay algunos aspectos de la configuraci\u00f3n de red del servidor que deben modificarse para que OpenVPN pueda enrutar correctamente el tr\u00e1fico a trav\u00e9s de la VPN.&nbsp;El primero de ellos es&nbsp;<em>el reenv\u00edo de IP<\/em>&nbsp;, un m\u00e9todo para determinar d\u00f3nde debe enrutarse el tr\u00e1fico de IP.&nbsp;Esto es esencial para la funcionalidad VPN que proporcionar\u00e1 su servidor.<\/p>\n\n\n\n<p>Ajuste la configuraci\u00f3n predeterminada de reenv\u00edo de IP de su servidor modificando el&nbsp;<code>\/etc\/sysctl.conf<\/code>archivo:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo nano \/etc\/sysctl.conf\n<\/code><\/pre>\n\n\n\n<p>En el interior, busque la l\u00ednea comentada que se establece&nbsp;<code>net.ipv4.ip_forward<\/code>.&nbsp;Elimine el car\u00e1cter \u00bb&nbsp;<strong>#<\/strong>&nbsp;\u00bb del principio de la l\u00ednea para descomentar esta configuraci\u00f3n:\/etc\/sysctl.conf<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>net.ipv4.ip_forward=1\n<\/code><\/pre>\n\n\n\n<p>Guarde y cierre el archivo cuando haya terminado.<\/p>\n\n\n\n<p>Para leer el archivo y ajustar los valores para la sesi\u00f3n actual, escriba:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo sysctl -p\n<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>Outputnet.ipv4.ip_forward = 1\n<\/code><\/pre>\n\n\n\n<p>Si sigui\u00f3 la&nbsp;gu\u00eda de configuraci\u00f3n inicial del servidor Debian 10 que&nbsp;figura en los requisitos previos, debe tener un firewall UFW en su lugar.&nbsp;Independientemente de si usa el firewall para bloquear el tr\u00e1fico no deseado (lo que casi siempre debe hacer), para esta gu\u00eda necesita un firewall para manipular parte del tr\u00e1fico que ingresa al servidor.&nbsp;Algunas de las reglas del firewall deben modificarse para habilitar el enmascaramiento, un concepto de iptables que proporciona traducci\u00f3n din\u00e1mica de direcciones de red (NAT) sobre la marcha para enrutar correctamente las conexiones del cliente.<\/p>\n\n\n\n<p>Antes de abrir el archivo de configuraci\u00f3n del firewall para agregar las reglas de enmascaramiento, primero debe encontrar la interfaz de red p\u00fablica de su m\u00e1quina.&nbsp;Para hacer esto, escriba:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>ip route | grep default\n<\/code><\/pre>\n\n\n\n<p>Su interfaz p\u00fablica es la cadena que se encuentra dentro de la salida de este comando que sigue a la palabra \u00abdev\u00bb.&nbsp;Por ejemplo, este resultado muestra la interfaz nombrada&nbsp;<code>eth0<\/code>, que se resalta a continuaci\u00f3n:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>Outputdefault via 203.0.113.1 dev eth0 proto static\n<\/code><\/pre>\n\n\n\n<p>Cuando tenga la interfaz asociada con su ruta predeterminada, abra el&nbsp;<code>\/etc\/ufw\/before.rules<\/code>archivo para agregar la configuraci\u00f3n relevante:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo nano \/etc\/ufw\/before.rules\n<\/code><\/pre>\n\n\n\n<p>Las reglas UFW generalmente se agregan usando el&nbsp;<code>ufw<\/code>comando.&nbsp;Sin&nbsp;<code>before.rules<\/code>embargo, las&nbsp;reglas enumeradas en el&nbsp;archivo se leen y se ponen en su lugar antes de cargar las reglas UFW convencionales.&nbsp;Hacia la parte superior del archivo, agregue las l\u00edneas resaltadas a continuaci\u00f3n.&nbsp;Esto establecer\u00e1 la pol\u00edtica predeterminada para la&nbsp;<code>POSTROUTING<\/code>cadena en la&nbsp;<code>nat<\/code>tabla y enmascarar\u00e1 cualquier tr\u00e1fico proveniente de la VPN.&nbsp;Recuerde reemplazar&nbsp;<code>eth0<\/code>en la&nbsp;<code>-A POSTROUTING<\/code>l\u00ednea a continuaci\u00f3n con la interfaz que encontr\u00f3 en el comando anterior:\/etc\/ufw\/before.rules<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>#\n# rules.before\n#\n# Rules that should be run before the ufw command line added rules. Custom\n# rules should be added to one of these chains:\n#   ufw-before-input\n#   ufw-before-output\n#   ufw-before-forward\n#\n\n# START OPENVPN RULES\n# NAT table rules\n*nat\n:POSTROUTING ACCEPT &#91;0:0] \n# Allow traffic from OpenVPN client to eth0 (change to the interface you discovered!)\n-A POSTROUTING -s 10.8.0.0\/8 -o eth0 -j MASQUERADE\nCOMMIT\n# END OPENVPN RULES\n\n# Don't delete these required lines, otherwise there will be errors\n*filter\n. . .\n<\/code><\/pre>\n\n\n\n<p>Guarde y cierre el archivo cuando haya terminado.<\/p>\n\n\n\n<p>A continuaci\u00f3n, tambi\u00e9n debe indicarle a UFW que permita los paquetes reenviados de manera predeterminada.&nbsp;Para hacer esto, abra el&nbsp;<code>\/etc\/default\/ufw<\/code>archivo:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo nano \/etc\/default\/ufw\n<\/code><\/pre>\n\n\n\n<p>En el interior, encuentre la&nbsp;<code>DEFAULT_FORWARD_POLICY<\/code>directiva y cambie el valor de&nbsp;<code>DROP<\/code>a&nbsp;<code>ACCEPT<\/code>:\/ etc \/ default \/ ufw<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>DEFAULT_FORWARD_POLICY=\"ACCEPT\"\n<\/code><\/pre>\n\n\n\n<p>Guarde y cierre el archivo cuando haya terminado.<\/p>\n\n\n\n<p>A continuaci\u00f3n, ajuste el firewall en s\u00ed para permitir el tr\u00e1fico a OpenVPN.&nbsp;Si no cambi\u00f3 el puerto y el protocolo en el&nbsp;<code>\/etc\/openvpn\/server.conf<\/code>archivo, deber\u00e1 abrir el tr\u00e1fico UDP al puerto&nbsp;<code>1194<\/code>.&nbsp;Si modific\u00f3 el puerto y \/ o protocolo, sustituya los valores que seleccion\u00f3 aqu\u00ed.<\/p>\n\n\n\n<p>Adem\u00e1s, en caso de que no haya agregado el puerto SSH al completar el tutorial de requisitos previos, agr\u00e9guelo aqu\u00ed tambi\u00e9n:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo ufw allow 1194\/udp\nsudo ufw allow OpenSSH\n<\/code><\/pre>\n\n\n\n<p>Despu\u00e9s de agregar esas reglas, deshabilite y vuelva a habilitar UFW para reiniciarlo y cargar los cambios de todos los archivos que ha modificado:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo ufw disable\nsudo ufw enable\n<\/code><\/pre>\n\n\n\n<p>Su servidor ahora est\u00e1 configurado para manejar correctamente el tr\u00e1fico de OpenVPN.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"step-7-\u2014-starting-and-enabling-the-openvpn-service\">Paso 7: inicio y habilitaci\u00f3n del servicio OpenVPN<\/h2>\n\n\n\n<p>Finalmente est\u00e1 listo para iniciar el servicio OpenVPN en su servidor.&nbsp;Esto se hace usando la utilidad systemd&nbsp;<code>systemctl<\/code>.<\/p>\n\n\n\n<p>Inicie el servidor OpenVPN especificando el nombre del archivo de configuraci\u00f3n como una variable de instancia despu\u00e9s del nombre del archivo de la unidad systemd.&nbsp;Se llama al archivo de configuraci\u00f3n de su servidor&nbsp;, as\u00ed que agr\u00e9guelo&nbsp;al final del archivo de su unidad cuando lo llame:<code>\/etc\/openvpn\/server.conf<\/code><code>@server<\/code><\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo systemctl start openvpn@server\n<\/code><\/pre>\n\n\n\n<p>Vuelva a verificar que el servicio se haya iniciado correctamente escribiendo:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo systemctl status openvpn@server\n<\/code><\/pre>\n\n\n\n<p>Si todo sali\u00f3 bien, su salida se ver\u00e1 as\u00ed:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>Output\u25cf openvpn@server.service - OpenVPN connection to server\n   Loaded: loaded (\/lib\/systemd\/system\/openvpn@.service; disabled; vendor preset: enabled)\n   Active: active (running) since Wed 2019-07-17 03:39:24 UTC; 29s ago\n     Docs: man:openvpn(8)\n           https:&#47;&#47;community.openvpn.net\/openvpn\/wiki\/Openvpn24ManPage\n           https:\/\/community.openvpn.net\/openvpn\/wiki\/HOWTO\n Main PID: 3371 (openvpn)\n   Status: \"Initialization Sequence Completed\"\n    Tasks: 1 (limit: 3587)\n   Memory: 1.2M\n   CGroup: \/system.slice\/system-openvpn.slice\/openvpn@server.service\n           \u2514\u25003371 \/usr\/sbin\/openvpn --daemon ovpn-server --status \/run\/openvpn\/server.status 10 --cd \/etc\/openvpn --config \/etc\/openvpn\/server.conf --writepid \/run\/openvpn\/\n<\/code><\/pre>\n\n\n\n<p>Tambi\u00e9n puede verificar que la&nbsp;<code>tun0<\/code>interfaz&nbsp;OpenVPN&nbsp;est\u00e9 disponible escribiendo:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>ip addr show tun0\n<\/code><\/pre>\n\n\n\n<p>Esto generar\u00e1 una interfaz configurada:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>Output3: tun0: &lt;POINTOPOINT,MULTICAST,NOARP,UP,LOWER_UP&gt; mtu 1500 qdisc pfifo_fast state UNKNOWN group default qlen 100\n    link\/none \n    inet 10.8.0.1 peer 10.8.0.2\/32 scope global tun0\n       valid_lft forever preferred_lft forever\n    inet6 fe80::dd60:3a78:b0ca:1659\/64 scope link stable-privacy \n       valid_lft forever preferred_lft forever\n<\/code><\/pre>\n\n\n\n<p>Despu\u00e9s de iniciar el servicio, habil\u00edtelo para que se inicie autom\u00e1ticamente en el arranque:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo systemctl enable openvpn@server\n<\/code><\/pre>\n\n\n\n<p>Su servicio OpenVPN ya est\u00e1 en funcionamiento.&nbsp;Sin embargo, antes de que pueda comenzar a usarlo, primero debe crear un archivo de configuraci\u00f3n para la m\u00e1quina cliente.&nbsp;Este tutorial ya explicaba c\u00f3mo crear pares de certificado \/ clave para clientes, y en el siguiente paso demostraremos c\u00f3mo crear una infraestructura que generar\u00e1 f\u00e1cilmente archivos de configuraci\u00f3n del cliente.<\/p>\n\n\n\n<p><strong>Paso 8<\/strong>: creaci\u00f3n de la infraestructura de configuraci\u00f3n del cliente<\/p>\n\n\n\n<p>Crear archivos de configuraci\u00f3n para clientes OpenVPN puede ser algo complicado, ya que cada cliente debe tener su propia configuraci\u00f3n y cada uno debe alinearse con la configuraci\u00f3n descrita en el archivo de configuraci\u00f3n del servidor.&nbsp;En lugar de escribir un solo archivo de configuraci\u00f3n que solo se puede usar en un cliente, este paso describe un proceso para construir una infraestructura de configuraci\u00f3n del cliente que puede usar para generar archivos de configuraci\u00f3n sobre la marcha.&nbsp;Primero crear\u00e1 un archivo de configuraci\u00f3n \u00abbase\u00bb y luego crear\u00e1 un script que le permitir\u00e1 generar archivos de configuraci\u00f3n del cliente, certificados y claves \u00fanicos seg\u00fan sea necesario.<\/p>\n\n\n\n<p>Comience creando un nuevo directorio donde almacenar\u00e1 los archivos de configuraci\u00f3n del cliente dentro del directorio&nbsp;<code>client-configs<\/code>que cre\u00f3 anteriormente:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>mkdir -p ~\/client-configs\/files\n<\/code><\/pre>\n\n\n\n<p>A continuaci\u00f3n, copie un archivo de configuraci\u00f3n de cliente de ejemplo en el directorio&nbsp;<code>client-configs<\/code>para usarlo como su configuraci\u00f3n base:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>cp \/usr\/share\/doc\/openvpn\/examples\/sample-config-files\/client.conf ~\/client-configs\/base.conf\n<\/code><\/pre>\n\n\n\n<p>Abra este nuevo archivo en su editor de texto:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>nano ~\/client-configs\/base.conf<\/code><\/pre>\n\n\n\n<p>En el interior, ubique la&nbsp;<code>remote<\/code>directiva.&nbsp;Esto se\u00f1ala al cliente a la direcci\u00f3n de su servidor OpenVPN: la direcci\u00f3n IP p\u00fablica de su servidor OpenVPN.&nbsp;Si decidi\u00f3 cambiar el puerto en el que est\u00e1 escuchando el servidor OpenVPN, tambi\u00e9n deber\u00e1 cambiar&nbsp;<code>1194<\/code>al puerto que seleccion\u00f3:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>~ \/ client-configs \/ base.conf<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>. . .\n# The hostname\/IP and port of the server.\n# You can have multiple remote entries\n# to load balance between the servers.\nremote your_server_ip 1194\n. . .<\/code><\/pre>\n\n\n\n<p>Aseg\u00farese de que el protocolo coincida con el valor que est\u00e1 utilizando en la configuraci\u00f3n del servidor:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>~ \/ client-configs \/ base.conf<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>proto udp<\/code><\/pre>\n\n\n\n<p>A continuaci\u00f3n, descomente las&nbsp;directivas&nbsp;<code>user<\/code>y&nbsp;<code>group<\/code>eliminando el \u00bb&nbsp;<strong>;&nbsp;<\/strong>\u00abAl comienzo de cada l\u00ednea:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>~ \/ client-configs \/ base.conf<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code># Downgrade privileges after initialization (non-Windows only)\nuser nobody\ngroup nogroup<\/code><\/pre>\n\n\n\n<p>Encuentra las directivas que establecen el&nbsp;<code>ca<\/code>,&nbsp;<code>cert<\/code>y&nbsp;<code>key<\/code>.&nbsp;Comente estas directivas, ya que agregar\u00e1 los certificados y claves dentro del archivo en breve:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>~ \/ client-configs \/ base.conf<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code># SSL\/TLS parms.\n# See the server config file for more\n# description.  It's best to use\n# a separate .crt\/.key file pair\n# for each client.  A single ca\n# file can be used for all clients.\n#ca ca.crt\n#cert client.crt\n#key client.key<\/code><\/pre>\n\n\n\n<p>Del mismo modo, comente la&nbsp;<code>tls-auth<\/code>directiva, ya que agregar\u00e1 directamente&nbsp;<code>ta.key<\/code>al archivo de configuraci\u00f3n del cliente:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>~ \/ client-configs \/ base.conf<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code># If a tls-auth key is used on the server\n# then every client must also have the key.\n#tls-auth ta.key 1<\/code><\/pre>\n\n\n\n<p>Refleje la&nbsp;configuraci\u00f3n&nbsp;<code>cipher<\/code>y&nbsp;<code>auth<\/code>que establece en el archivo&nbsp;<code>\/etc\/openvpn\/server.conf<\/code>:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>~ \/ client-configs \/ base.conf<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>cipher AES-256-CBC\nauth SHA256<\/code><\/pre>\n\n\n\n<p>A continuaci\u00f3n, agregue la&nbsp;<code>key-direction<\/code>directiva en alg\u00fan lugar del archivo.&nbsp;Usted&nbsp;<strong>debe<\/strong>&nbsp;ajustarlo a \u201c1\u201d para la VPN de funcionar correctamente en la m\u00e1quina cliente:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>~ \/ client-configs \/ base.conf<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>key-direction 1<\/code><\/pre>\n\n\n\n<p>Finalmente, agregue algunas&nbsp;l\u00edneas&nbsp;<strong>comentadas<\/strong>&nbsp;.&nbsp;Aunque puede incluir estas directivas en cada archivo de configuraci\u00f3n del cliente, solo necesita habilitarlas para clientes Linux que se env\u00edan con un archivo&nbsp;<code>\/etc\/openvpn\/update-resolv-conf<\/code>.&nbsp;Este script usa la utilidad&nbsp;<code>resolvconf<\/code>para actualizar la informaci\u00f3n de DNS para clientes Linux.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>~ \/ client-configs \/ base.conf<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code># script-security 2\n# up \/etc\/openvpn\/update-resolv-conf\n# down \/etc\/openvpn\/update-resolv-conf<\/code><\/pre>\n\n\n\n<p>Si su cliente est\u00e1 ejecutando Linux y tiene un archico&nbsp;<code>\/etc\/openvpn\/update-resolv-conf<\/code>, descomente estas l\u00edneas del archivo de configuraci\u00f3n del cliente despu\u00e9s de que se haya generado.<\/p>\n\n\n\n<p>Guarde y cierre el archivo cuando haya terminado.<\/p>\n\n\n\n<p>Luego, cree una secuencia de comandos simple que compile su configuraci\u00f3n base con los certificados, claves y archivos de cifrado relevantes y luego coloque la configuraci\u00f3n generada en el directorio&nbsp;<code>~\/client-configs\/files<\/code>.&nbsp;Abra un nuevo archivo llamado&nbsp;<code>make_config.sh<\/code>dentro del directorio&nbsp;<code>~\/client-configs<\/code>:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>nano ~\/client-configs\/make_config.sh<\/code><\/pre>\n\n\n\n<p>En el interior, agregue el siguiente contenido, asegur\u00e1ndose de cambiarlo&nbsp;<code>debian<\/code>al de la&nbsp;cuenta de usuario&nbsp;no&nbsp;<strong>root<\/strong>&nbsp;de su servidor&nbsp;:~ \/ client-configs \/ make_config.sh<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>#!\/bin\/bash\n\n# First argument: Client identifier\n\nKEY_DIR=\/home\/debian\/client-configs\/keys\nOUTPUT_DIR=\/home\/debian\/client-configs\/files\nBASE_CONFIG=\/home\/debian\/client-configs\/base.conf\n\ncat ${BASE_CONFIG} \\\n    &lt;(echo -e '&lt;ca&gt;') \\\n    ${KEY_DIR}\/ca.crt \\\n    &lt;(echo -e '&lt;\/ca&gt;\\n&lt;cert&gt;') \\\n    ${KEY_DIR}\/${1}.crt \\\n    &lt;(echo -e '&lt;\/cert&gt;\\n&lt;key&gt;') \\\n    ${KEY_DIR}\/${1}.key \\\n    &lt;(echo -e '&lt;\/key&gt;\\n&lt;tls-auth&gt;') \\\n    ${KEY_DIR}\/ta.key \\\n    &lt;(echo -e '&lt;\/tls-auth&gt;') \\\n    &gt; ${OUTPUT_DIR}\/${1}.ovpn\n<\/code><\/pre>\n\n\n\n<p>Guarde y cierre el archivo cuando haya terminado.<\/p>\n\n\n\n<p>Antes de continuar, aseg\u00farese de marcar este archivo como ejecutable escribiendo:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>chmod 700 ~\/client-configs\/make_config.sh<\/code><\/pre>\n\n\n\n<p>Este script har\u00e1 una copia del&nbsp;<code>base.conf<\/code>archivo que cre\u00f3, recopilar\u00e1 todos los archivos de certificados y claves que ha creado para su cliente, extraer\u00e1 su contenido, los agregar\u00e1 a la copia del archivo de configuraci\u00f3n base y exportar\u00e1 todo este contenido a un Nuevo archivo de configuraci\u00f3n del cliente.&nbsp;Esto significa que, en lugar de tener que administrar la configuraci\u00f3n del cliente, el certificado y los archivos de claves por separado, toda la informaci\u00f3n requerida se almacena en un solo lugar.&nbsp;El beneficio de esto es que si alguna vez necesita agregar un cliente en el futuro, simplemente puede ejecutar este script para crear r\u00e1pidamente el archivo de configuraci\u00f3n y asegurarse de que toda la informaci\u00f3n importante se almacene en una \u00fanica ubicaci\u00f3n de f\u00e1cil acceso.<\/p>\n\n\n\n<p>Tenga en cuenta que cada vez que agregue un nuevo cliente, deber\u00e1 generar nuevas claves y certificados para poder ejecutar este script y generar su archivo de configuraci\u00f3n.&nbsp;Aprender\u00e1 a usar este script en el siguiente paso.<\/p>\n\n\n\n<p><strong>Paso 9<\/strong>: generaci\u00f3n de configuraciones de cliente<\/p>\n\n\n\n<p>Si sigui\u00f3 la gu\u00eda, cre\u00f3 un certificado de cliente y una clave llamada&nbsp;<code>client1.crt<\/code>y&nbsp;<code>client1.key<\/code>, respectivamente, en el Paso 4. Puede generar un archivo de configuraci\u00f3n para estas credenciales movi\u00e9ndose a su directorio&nbsp;<code>~\/client-configs<\/code> y ejecutando el script que realiz\u00f3 al final del anterior paso:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>cd ~\/client-configs\nsudo .\/make_config.sh client1<\/code><\/pre>\n\n\n\n<p>Esto crear\u00e1 un archivo nombrado&nbsp;<code>client1.ovpn<\/code>en su directorio&nbsp;<code>~\/client-configs\/files<\/code>:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>ls ~\/client-configs\/files<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>Outputclient1.ovpn<\/code><\/pre>\n\n\n\n<p>Debe transferir este archivo al dispositivo que planea usar como cliente.&nbsp;Por ejemplo, esta podr\u00eda ser su computadora local o un dispositivo m\u00f3vil.<\/p>\n\n\n\n<p>Si bien las aplicaciones exactas utilizadas para realizar esta transferencia depender\u00e1n del sistema operativo de su dispositivo y sus preferencias personales, un m\u00e9todo confiable y seguro es utilizar SFTP (protocolo de transferencia de archivos SSH) o SCP (Copia segura) en el back-end.&nbsp;Esto transportar\u00e1 los archivos de autenticaci\u00f3n VPN de su cliente a trav\u00e9s de una conexi\u00f3n cifrada.<\/p>\n\n\n\n<p>Aqu\u00ed hay un ejemplo de comando SFTP que utiliza el&nbsp;<code>client1.ovpn<\/code>ejemplo que puede ejecutar desde su computadora local (macOS o Linux).&nbsp;Coloca el&nbsp;<code>.ovpn<\/code>archivo en su directorio de inicio:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>sftp debian@your_server_ip:client-configs\/files\/client1.ovpn ~\/<\/code><\/pre>\n\n\n\n<p>Aqu\u00ed hay varias herramientas y tutoriales para transferir archivos de forma segura desde el servidor a una computadora local:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><a href=\"http:\/\/winscp.net\/\">WinSCP<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/www.digitalocean.com\/community\/tutorials\/how-to-use-sftp-to-securely-transfer-files-with-a-remote-server\">C\u00f3mo usar SFTP para transferir archivos de forma segura con un servidor remoto<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/www.digitalocean.com\/community\/tutorials\/how-to-use-filezilla-to-transfer-and-manage-files-securely-on-your-vps\">C\u00f3mo usar Filezilla para transferir y administrar archivos de forma segura en su VPS<\/a><\/li>\n<\/ul>\n\n\n\n<p><strong>Paso 10<\/strong>: instalaci\u00f3n de la configuraci\u00f3n del cliente<\/p>\n\n\n\n<p>Esta secci\u00f3n cubre c\u00f3mo instalar un perfil VPN de cliente en Windows, macOS, Linux, iOS y Android.&nbsp;Ninguna de estas instrucciones para el cliente depende la una de la otra, por lo tanto, si\u00e9ntase libre de omitir la que corresponda a su dispositivo.<\/p>\n\n\n\n<p>La conexi\u00f3n OpenVPN tendr\u00e1 el mismo nombre que el que haya llamado el&nbsp;<code>.ovpn<\/code>archivo.&nbsp;Con respecto a este tutorial, esto significa que se nombra la conexi\u00f3n&nbsp;<code>client1.ovpn<\/code>, aline\u00e1ndose con el primer archivo de cliente que gener\u00f3.<\/p>\n\n\n\n<p><strong>Ventanas<\/strong><\/p>\n\n\n\n<p><strong>Instalando<\/strong><\/p>\n\n\n\n<p>Descargue la aplicaci\u00f3n de cliente OpenVPN para Windows desde&nbsp;<a href=\"https:\/\/openvpn.net\/index.php\/open-source\/downloads.html\">la p\u00e1gina de descargas<\/a>&nbsp;de&nbsp;<a href=\"https:\/\/openvpn.net\/index.php\/open-source\/downloads.html\">OpenVPN<\/a>&nbsp;.&nbsp;Elija la versi\u00f3n de instalador adecuada para su versi\u00f3n de Windows.<\/p>\n\n\n\n<p><strong>Nota:<\/strong>&nbsp;OpenVPN necesita privilegios administrativos para instalar.<\/p>\n\n\n\n<p>Despu\u00e9s de instalar OpenVPN, copie el&nbsp;<code>.ovpn<\/code>archivo a:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>C:\\Program Files\\OpenVPN\\config<\/code><\/pre>\n\n\n\n<p>Cuando inicie OpenVPN, ver\u00e1 autom\u00e1ticamente el perfil y lo pondr\u00e1 a disposici\u00f3n.<\/p>\n\n\n\n<p>Debe ejecutar OpenVPN como administrador cada vez que se usa, incluso por cuentas administrativas.&nbsp;Para hacerlo sin tener que hacer clic con el bot\u00f3n derecho y seleccionar&nbsp;<strong>Ejecutar como administrador<\/strong>&nbsp;cada vez que use la VPN, debe preestablecerlo desde una cuenta administrativa.&nbsp;Esto tambi\u00e9n significa que los usuarios est\u00e1ndar necesitar\u00e1n ingresar la contrase\u00f1a del administrador para usar OpenVPN.&nbsp;Por otro lado, los usuarios est\u00e1ndar no pueden conectarse correctamente al servidor a menos que la aplicaci\u00f3n OpenVPN en el cliente tenga derechos de administrador, por lo que los privilegios elevados son necesarios.<\/p>\n\n\n\n<p>Para configurar la aplicaci\u00f3n OpenVPN para que siempre se ejecute como administrador, haga clic con el bot\u00f3n derecho en su icono de acceso directo y vaya a&nbsp;<strong>Propiedades<\/strong>&nbsp;.&nbsp;En la parte inferior de la&nbsp;pesta\u00f1a&nbsp;<strong>Compatibilidad<\/strong>&nbsp;, haga clic en el bot\u00f3n&nbsp;<strong>Cambiar configuraci\u00f3n para todos los usuarios<\/strong>&nbsp;.&nbsp;En la nueva ventana, marque&nbsp;<strong>Ejecutar este programa como administrador<\/strong>&nbsp;.<\/p>\n\n\n\n<p><strong>Conectando<\/strong><\/p>\n\n\n\n<p>Cada vez que inicie la GUI de OpenVPN, Windows le preguntar\u00e1 si desea permitir que el programa realice cambios en su computadora.&nbsp;Haz clic en&nbsp;<strong>S\u00ed<\/strong>&nbsp;.&nbsp;El lanzamiento de la aplicaci\u00f3n cliente OpenVPN solo coloca el applet en la bandeja del sistema para que pueda conectar y desconectar la VPN seg\u00fan sea necesario;&nbsp;en realidad no hace la conexi\u00f3n VPN.<\/p>\n\n\n\n<p>Una vez que se inicia OpenVPN, inicie una conexi\u00f3n entrando en el applet de la bandeja del sistema y haciendo clic derecho en el icono del applet de OpenVPN.&nbsp;Esto abre el men\u00fa contextual.&nbsp;Seleccione&nbsp;<strong>cliente1<\/strong>&nbsp;en la parte superior del men\u00fa (ese es su&nbsp;<code>client1.ovpn<\/code>perfil) y elija&nbsp;<strong>Conectar<\/strong>&nbsp;.<\/p>\n\n\n\n<p>Se abrir\u00e1 una ventana de estado que muestra la salida del registro mientras se establece la conexi\u00f3n, y se mostrar\u00e1 un mensaje una vez que el cliente est\u00e9 conectado.<\/p>\n\n\n\n<p>Descon\u00e9ctese de la VPN de la misma manera: vaya al applet de la bandeja del sistema, haga clic con el bot\u00f3n derecho en el \u00edcono de applet OpenVPN, seleccione el perfil del cliente y haga clic en&nbsp;<strong>Desconectar<\/strong>&nbsp;.<\/p>\n\n\n\n<p><strong>Mac OS<\/strong><\/p>\n\n\n\n<p><strong>Instalando<\/strong><\/p>\n\n\n\n<p><a href=\"https:\/\/tunnelblick.net\/\">Tunnelblick<\/a>&nbsp;es un cliente OpenVPN de c\u00f3digo abierto y gratuito para macOS.&nbsp;Puede descargar la \u00faltima imagen de disco desde la&nbsp;<a href=\"https:\/\/tunnelblick.net\/downloads.html\">p\u00e1gina de descargas de Tunnelblick<\/a>&nbsp;.&nbsp;Haga doble clic en el&nbsp;<code>.dmg<\/code>archivo&nbsp;descargado&nbsp;y siga las instrucciones para instalar.<\/p>\n\n\n\n<p>Hacia el final del proceso de instalaci\u00f3n, Tunnelblick le preguntar\u00e1 si tiene alg\u00fan archivo de configuraci\u00f3n.&nbsp;Respondo&nbsp;<strong>Tengo archivos de configuraci\u00f3n<\/strong>&nbsp;y dejo que Tunnelblick termine.&nbsp;Abra una ventana del Finder y haga doble clic&nbsp;<code>client1.ovpn<\/code>.&nbsp;Tunnelblick instalar\u00e1 el perfil del cliente.&nbsp;Se requieren privilegios administrativos.<\/p>\n\n\n\n<p><strong>Conectando<\/strong><\/p>\n\n\n\n<p>Inicie Tunnelblick haciendo doble clic en el icono Tunnelblick en la&nbsp;carpeta&nbsp;<strong>Aplicaciones<\/strong>&nbsp;.&nbsp;Una vez que se haya lanzado Tunnelblick, habr\u00e1 un icono de Tunnelblick en la barra de men\u00fa en la parte superior derecha de la pantalla para controlar las conexiones.&nbsp;Haga clic en el icono y luego en el&nbsp;elemento de men\u00fa&nbsp;<strong>Conectar cliente1<\/strong>&nbsp;para iniciar la conexi\u00f3n VPN.<\/p>\n\n\n\n<p><strong>Linux<\/strong><\/p>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"installing\">Instalando<\/h4>\n\n\n\n<p>Si est\u00e1 utilizando Linux, hay una variedad de herramientas que puede usar dependiendo de su distribuci\u00f3n.&nbsp;Su entorno de escritorio o administrador de ventanas tambi\u00e9n puede incluir utilidades de conexi\u00f3n.<\/p>\n\n\n\n<p>Sin embargo, la forma m\u00e1s universal de conectarse es usar el software OpenVPN.<\/p>\n\n\n\n<p>En Debian, puede instalarlo tal como lo hizo en el servidor escribiendo:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo apt update\nsudo apt install openvpn<\/code><\/pre>\n\n\n\n<p>En CentOS puede habilitar los repositorios EPEL y luego instalarlo escribiendo:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo yum install epel-release\nsudo yum install openvpn\n<\/code><\/pre>\n\n\n\n<p><strong>Configurando<\/strong><\/p>\n\n\n\n<p>Verifique si su distribuci\u00f3n incluye un&nbsp;<code>\/etc\/openvpn\/update-resolv-conf<\/code>script:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>ls \/etc\/openvpn<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>Outputupdate-resolv-conf<\/code><\/pre>\n\n\n\n<p>A continuaci\u00f3n, edite el archivo de configuraci\u00f3n del cliente OpenVPN que transfiri\u00f3:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>nano client1.ovpn<\/code><\/pre>\n\n\n\n<p>Si pudo encontrar un archivo&nbsp;<code>update-resolv-conf<\/code>, descomente las tres l\u00edneas que agreg\u00f3 para ajustar la configuraci\u00f3n de DNS:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>client1.ovpn<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>script-security 2\nup \/etc\/openvpn\/update-resolv-conf\ndown \/etc\/openvpn\/update-resolv-conf<\/code><\/pre>\n\n\n\n<p>Si est\u00e1 usando CentOS, cambie la&nbsp;<code>group<\/code>directiva de&nbsp;<code>nogroup<\/code>a&nbsp;<code>nobody<\/code>para que coincida con los grupos disponibles de la distribuci\u00f3n:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>client1.ovpn<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>group nobody<\/code><\/pre>\n\n\n\n<p>Guarde y cierre el archivo.<\/p>\n\n\n\n<p>Ahora, puede conectarse a la VPN simplemente apuntando el&nbsp;<code>openvpn<\/code>comando al archivo de configuraci\u00f3n del cliente:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo openvpn --config client1.ovpn<\/code><\/pre>\n\n\n\n<p>Esto deber\u00eda conectarte a tu VPN.<\/p>\n\n\n\n<p><strong>iOS<\/strong><\/p>\n\n\n\n<p><strong>Instalando<\/strong><\/p>\n\n\n\n<p>Desde iTunes App Store, busque e instale&nbsp;<a href=\"https:\/\/itunes.apple.com\/us\/app\/id590379981\">OpenVPN Connect<\/a>&nbsp;, la aplicaci\u00f3n de cliente oficial de iOS OpenVPN.&nbsp;Para transferir la configuraci\u00f3n de su cliente iOS al dispositivo, con\u00e9ctelo directamente a una computadora.<\/p>\n\n\n\n<p>El proceso de completar la transferencia con iTunes se describe aqu\u00ed.&nbsp;Abra iTunes en la computadora y haga clic en&nbsp;<strong>iPhone<\/strong>&nbsp;&gt;&nbsp;<strong>aplicaciones<\/strong>&nbsp;.&nbsp;Despl\u00e1cese hacia abajo hasta la&nbsp;secci\u00f3n&nbsp;<strong>Compartir archivos<\/strong>&nbsp;y haga clic en la aplicaci\u00f3n OpenVPN.&nbsp;La ventana en blanco a la derecha,&nbsp;<strong>Documentos OpenVPN<\/strong>&nbsp;, es para compartir archivos.&nbsp;Arrastre el&nbsp;<code>.ovpn<\/code>archivo a la ventana Documentos de OpenVPN.<\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter size-large\"><img decoding=\"async\" width=\"745\" height=\"373\" src=\"https:\/\/dsantana.uas.edu.mx\/wp-content\/uploads\/2020\/05\/1.png\" alt=\"iTunes muestra el perfil VPN listo para cargar en el iPhone\" class=\"wp-image-332\" srcset=\"https:\/\/dsantana.uas.edu.mx\/wp-content\/uploads\/2020\/05\/1.png 745w, https:\/\/dsantana.uas.edu.mx\/wp-content\/uploads\/2020\/05\/1-300x150.png 300w\" sizes=\"(max-width: 745px) 100vw, 745px\" \/><\/figure>\n\n\n\n<p>Ahora inicie la aplicaci\u00f3n OpenVPN en el iPhone.&nbsp;Recibir\u00e1 una notificaci\u00f3n de que un nuevo perfil est\u00e1 listo para importar.&nbsp;Toque el signo m\u00e1s verde para importarlo.<\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter size-large\"><img decoding=\"async\" width=\"497\" height=\"745\" src=\"https:\/\/dsantana.uas.edu.mx\/wp-content\/uploads\/2020\/05\/2.png\" alt=\"La aplicaci\u00f3n OpenVPN para iOS que muestra un nuevo perfil listo para importar\" class=\"wp-image-333\" srcset=\"https:\/\/dsantana.uas.edu.mx\/wp-content\/uploads\/2020\/05\/2.png 497w, https:\/\/dsantana.uas.edu.mx\/wp-content\/uploads\/2020\/05\/2-200x300.png 200w\" sizes=\"(max-width: 497px) 100vw, 497px\" \/><\/figure>\n\n\n\n<p><strong>Conectando<\/strong><\/p>\n\n\n\n<p>OpenVPN ahora est\u00e1 listo para usar con el nuevo perfil.&nbsp;Inicie la conexi\u00f3n deslizando el&nbsp;bot\u00f3n&nbsp;<strong>Conectar<\/strong>&nbsp;a la&nbsp;posici\u00f3n&nbsp;<strong>Encendido<\/strong>&nbsp;.&nbsp;Desconecte deslizando el mismo bot\u00f3n a&nbsp;<strong>Apagado<\/strong>&nbsp;.<\/p>\n\n\n\n<p><strong>Nota:<\/strong>&nbsp;El conmutador VPN en&nbsp;<strong>Configuraci\u00f3n<\/strong>&nbsp;no se puede usar para conectarse a la VPN.&nbsp;Si lo intentas, recibir\u00e1s un aviso para conectarte solo con la aplicaci\u00f3n OpenVPN.<\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"497\" height=\"745\" src=\"https:\/\/dsantana.uas.edu.mx\/wp-content\/uploads\/2020\/05\/3.png\" alt=\"La aplicaci\u00f3n iOS OpenVPN conectada a la VPN\" class=\"wp-image-334\" srcset=\"https:\/\/dsantana.uas.edu.mx\/wp-content\/uploads\/2020\/05\/3.png 497w, https:\/\/dsantana.uas.edu.mx\/wp-content\/uploads\/2020\/05\/3-200x300.png 200w\" sizes=\"(max-width: 497px) 100vw, 497px\" \/><\/figure>\n\n\n\n<p><strong>Androide<\/strong><\/p>\n\n\n\n<p><strong>Instalando<\/strong><\/p>\n\n\n\n<p>Abre Google Play Store.&nbsp;Busque e instale&nbsp;<a href=\"https:\/\/play.google.com\/store\/apps\/details?id=net.openvpn.openvpn\">Android OpenVPN Connect<\/a>&nbsp;, la aplicaci\u00f3n cliente oficial de Android OpenVPN.<\/p>\n\n\n\n<p>Puede transferir el&nbsp;<code>.ovpn<\/code>perfil conectando el dispositivo Android a su computadora por USB y copiando el archivo.&nbsp;Alternativamente, si tiene un lector de tarjetas SD, puede quitar la tarjeta SD del dispositivo, copiar el perfil y luego insertar la tarjeta nuevamente en el dispositivo Android.<\/p>\n\n\n\n<p>Inicie la aplicaci\u00f3n OpenVPN y toque el men\u00fa para importar el perfil.<\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"745\" height=\"559\" src=\"https:\/\/dsantana.uas.edu.mx\/wp-content\/uploads\/2020\/05\/4.png\" alt=\"La selecci\u00f3n del men\u00fa de importaci\u00f3n del perfil de la aplicaci\u00f3n de Android OpenVPN\" class=\"wp-image-336\" srcset=\"https:\/\/dsantana.uas.edu.mx\/wp-content\/uploads\/2020\/05\/4.png 745w, https:\/\/dsantana.uas.edu.mx\/wp-content\/uploads\/2020\/05\/4-300x225.png 300w\" sizes=\"(max-width: 745px) 100vw, 745px\" \/><\/figure>\n\n\n\n<p>Luego navegue a la ubicaci\u00f3n del perfil guardado (la captura de pantalla usa&nbsp;<code>\/sdcard\/Download\/<\/code>) y seleccione el archivo.&nbsp;La aplicaci\u00f3n tomar\u00e1 nota de que el perfil se import\u00f3.<\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"257\" height=\"220\" src=\"https:\/\/dsantana.uas.edu.mx\/wp-content\/uploads\/2020\/05\/5.png\" alt=\"La aplicaci\u00f3n de Android OpenVPN que selecciona el perfil VPN para importar\" class=\"wp-image-335\"\/><\/figure>\n\n\n\n<p><strong>Conectando<\/strong><\/p>\n\n\n\n<p>Para conectarse, simplemente toque el&nbsp;bot\u00f3n&nbsp;<strong>Conectar<\/strong>&nbsp;.&nbsp;Se le preguntar\u00e1 si conf\u00eda en la aplicaci\u00f3n OpenVPN.&nbsp;Elija&nbsp;<strong>Aceptar<\/strong>&nbsp;para iniciar la conexi\u00f3n.&nbsp;Para desconectarse de la VPN, regrese a la aplicaci\u00f3n OpenVPN y elija&nbsp;<strong>Desconectar<\/strong>&nbsp;.<\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"745\" height=\"559\" src=\"https:\/\/dsantana.uas.edu.mx\/wp-content\/uploads\/2020\/05\/6.png\" alt=\"La aplicaci\u00f3n de Android OpenVPN lista para conectarse a la VPN\" class=\"wp-image-337\" srcset=\"https:\/\/dsantana.uas.edu.mx\/wp-content\/uploads\/2020\/05\/6.png 745w, https:\/\/dsantana.uas.edu.mx\/wp-content\/uploads\/2020\/05\/6-300x225.png 300w\" sizes=\"(max-width: 745px) 100vw, 745px\" \/><\/figure>\n\n\n\n<p><strong>Paso 11<\/strong>: prueba de la conexi\u00f3n VPN (opcional)<\/p>\n\n\n\n<p><strong>Nota:<\/strong>&nbsp;Este m\u00e9todo para probar su conexi\u00f3n VPN solo funcionar\u00e1 si opt\u00f3 por enrutar todo su tr\u00e1fico a trav\u00e9s de la VPN en el Paso 5.<\/p>\n\n\n\n<p>Una vez que todo est\u00e1 instalado, una simple comprobaci\u00f3n confirma que todo funciona correctamente.&nbsp;Sin tener una conexi\u00f3n VPN habilitada, abra un navegador y vaya a&nbsp;<a href=\"https:\/\/www.dnsleaktest.com\/\">DNSLeakTest<\/a>&nbsp;.<\/p>\n\n\n\n<p>El sitio le devolver\u00e1 la direcci\u00f3n IP asignada por su proveedor de servicios de Internet y tal como aparece en el resto del mundo.&nbsp;Para verificar su configuraci\u00f3n de DNS a trav\u00e9s del mismo sitio web, haga clic en&nbsp;<strong>Prueba Extendida<\/strong>&nbsp;y le dir\u00e1 qu\u00e9 servidores DNS est\u00e1 utilizando.<\/p>\n\n\n\n<p>Ahora conecte el cliente OpenVPN a la VPN de su Droplet y actualice el navegador.&nbsp;Ahora deber\u00eda aparecer una direcci\u00f3n IP completamente diferente (la de su servidor VPN), y as\u00ed es como se le aparece al mundo.&nbsp;Nuevamente,&nbsp;<a href=\"https:\/\/www.dnsleaktest.com\/\">la&nbsp;<\/a><strong>Prueba Extendida&nbsp;<\/strong><a href=\"https:\/\/www.dnsleaktest.com\/\">de DNSLeakTest<\/a>&nbsp;verificar\u00e1 su configuraci\u00f3n de DNS y confirmar\u00e1 que ahora est\u00e1 utilizando los solucionadores de DNS empujados por su VPN.<\/p>\n\n\n\n<p><strong>Paso 12<\/strong>: revocaci\u00f3n de certificados de cliente<\/p>\n\n\n\n<p>Ocasionalmente, es posible que deba revocar un certificado de cliente para evitar un mayor acceso al servidor OpenVPN.<\/p>\n\n\n\n<p>Para hacerlo, navegue al directorio EasyRSA en su m\u00e1quina CA:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>cd EasyRSA-v3.0.6\/<\/code><\/pre>\n\n\n\n<p>A continuaci\u00f3n, ejecute el&nbsp;<code>easyrsa<\/code>script con la&nbsp;<code>revoke<\/code>opci\u00f3n, seguido del nombre del cliente que desea revocar:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>.\/easyrsa revoke client2<\/code><\/pre>\n\n\n\n<p>Esto le pedir\u00e1 que confirme la revocaci\u00f3n ingresando&nbsp;<code>yes<\/code>:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>OutputPlease confirm you wish to revoke the certificate with the following subject:\n\nsubject=\n    commonName                = client2\n\n\nType the word 'yes' to continue, or any other input to abort.\n  Continue with revocation: yes<\/code><\/pre>\n\n\n\n<p>Despu\u00e9s de confirmar la acci\u00f3n, la CA revocar\u00e1 por completo el certificado del cliente.&nbsp;Sin embargo, su servidor OpenVPN actualmente no tiene forma de verificar si los certificados de alg\u00fan cliente han sido revocados y el cliente a\u00fan tendr\u00e1 acceso a la VPN.&nbsp;Para corregir esto, cree una lista de revocaci\u00f3n de certificados (CRL) en su m\u00e1quina CA:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>.\/easyrsa gen-crl<\/code><\/pre>\n\n\n\n<p>Esto generar\u00e1 un archivo llamado&nbsp;<code>crl.pem<\/code>.&nbsp;Transfiera este archivo de forma segura a su servidor OpenVPN:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>scp ~\/EasyRSA-v3.0.6\/pki\/crl.pem debian@your_server_ip:\/tmp<\/code><\/pre>\n\n\n\n<p>En su servidor OpenVPN, copie este archivo en su&nbsp;<code>\/etc\/openvpn\/<\/code>directorio:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo cp \/tmp\/crl.pem \/etc\/openvpn<\/code><\/pre>\n\n\n\n<p>A continuaci\u00f3n, abra el archivo de configuraci\u00f3n del servidor OpenVPN:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo nano \/etc\/openvpn\/server.conf<\/code><\/pre>\n\n\n\n<p>En la parte inferior del archivo, agregue la&nbsp;<code>crl-verify<\/code>opci\u00f3n, que le indicar\u00e1 al servidor OpenVPN que verifique la lista de revocaci\u00f3n de certificados que hemos creado cada vez que se realiza un intento de conexi\u00f3n:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>\/etc\/openvpn\/server.conf<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>crl-verify crl.pem<\/code><\/pre>\n\n\n\n<p>Guarde y cierre el archivo.<\/p>\n\n\n\n<p>Finalmente, reinicie OpenVPN para implementar la revocaci\u00f3n del certificado:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo systemctl restart openvpn@server<\/code><\/pre>\n\n\n\n<p>El cliente ya no deber\u00eda poder conectarse con \u00e9xito al servidor utilizando la credencial anterior.<\/p>\n\n\n\n<p>Para revocar clientes adicionales, siga este proceso:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Revocar el certificado con el\u00a0comando<code>.\/easyrsa revoke client_name<\/code><\/li>\n\n\n\n<li>Generar una nueva CRL<\/li>\n\n\n\n<li>Transfiera el nuevo\u00a0<code>crl.pem<\/code>archivo a su servidor OpenVPN y c\u00f3pielo en el\u00a0<code>\/etc\/openvpn<\/code>directorio para sobrescribir la lista anterior.<\/li>\n\n\n\n<li>Reinicie el servicio OpenVPN.<\/li>\n<\/ol>\n\n\n\n<p>Puede utilizar este proceso para revocar cualquier certificado que haya emitido previamente para su servidor.<\/p>\n\n\n\n<p><strong>Conclusi\u00f3n<\/strong><\/p>\n\n\n\n<p>Ahora est\u00e1 atravesando de forma segura Internet protegiendo su identidad, ubicaci\u00f3n y tr\u00e1fico de intrusos y censores.<\/p>\n\n\n\n<p>Para configurar m\u00e1s clientes, solo necesita seguir los pasos&nbsp;<strong>4<\/strong>&nbsp;y&nbsp;<strong>9-11<\/strong>&nbsp;para cada dispositivo adicional.&nbsp;Para revocar el acceso a los clientes, solo siga el paso&nbsp;<strong>12<\/strong>&nbsp;.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Literalmente, hay una lista de razones por las que es posible que desee utilizar una VPN, pero mantener sus datos seguros es el n\u00famero 1 en nuestra lista. Y si bien hay algunos servicios VPN de pago que son bastante f\u00e1ciles de usar en su billetera \u2026 Si est\u00e1 tratando de mantener sus datos seguros, \u00bfpor qu\u00e9 confiar\u00eda en ellos a una empresa s\u00faper secreta que puede o no tener conexiones con las operaciones de miner\u00eda de datos ? Respuesta: no deber\u00edas. Especialmente cuando es tan f\u00e1cil y econ\u00f3mico configurar su propia VPN r\u00e1pida en su SSD Nodes VPS. As\u00ed que hoy, le mostraremos c\u00f3mo instalar OpenVPN en Debian 10 para mantener sus datos verdaderamente seguros. Requisitos previos para instalar OpenVPN en Debian 10 Dos VPS que ejecutan Debian 10, uno para alojar el servicio OpenVPN y otro para servir como su Autoridad de certificaci\u00f3n (CA). No se recomienda usar su servidor OpenVPN como su CA, esto abre su VPN a las vulnerabilidades de seguridad. Una cuenta regular (no root) con privilegios de sudo. Consulte nuestro tutorial de claves SSH para obtener m\u00e1s informaci\u00f3n. NOTA: Si deshabilita la autenticaci\u00f3n de contrase\u00f1a mientras configura estos servidores, puede tener dificultades al transferir archivos entre ellos m\u00e1s adelante en esta gu\u00eda. Para resolver este problema, puede volver a habilitar la autenticaci\u00f3n de contrase\u00f1a en cada servidor. O bien, puede generar un par de claves SSH para cada servidor, luego agregar la clave SSH p\u00fablica del servidor OpenVPN al archivo autorizado de claves de la m\u00e1quina de CA y viceversa. \u00bfCu\u00e1l es la MEJOR OFERTA en el alojamiento en la nube?Desarrolle a alta velocidad con un VPS de rendimiento de nodos SSD. DOBLAMOS la cantidad de almacenamiento NVMe incre\u00edblemente r\u00e1pido en nuestro plan m\u00e1s popular y reforzamos la oferta de CPU en estos planes. No hay nada m\u00e1s parecido en el mercado, al menos no a estos precios. \u00a1Obtenga un VPS de rendimiento de 16GB con 160GB de almacenamiento NVMe por solo $ 89 \/ a\u00f1o por tiempo limitado! \u00a1Obt\u00e9n ofertas por tiempo limitado! \u26a1 Paso 1: Instale OpenVPN y EasyRSA Comencemos actualizando nuestro aptcach\u00e9 e instal\u00e1ndolo openvpn. OpenVPN utiliza SSL \/ TLS para la autenticaci\u00f3n y el intercambio de claves para cifrar el tr\u00e1fico entre el servidor y los clientes.Para emitir certificados de confianza, configurar\u00e1 su autoridad de certificaci\u00f3n (CA) simple. Para hacer esto, descargaremos la \u00faltima versi\u00f3n de EasyRSA, que usaremos para construir nuestra infraestructura de clave p\u00fablica (PKI) de CA, desde el repositorio oficial de GitHub del proyecto . NOTE:Se recomienda mantener el servidor de CA apagado cuando no se utilice para firmar claves como medida de precauci\u00f3n adicional. Para comenzar a construir la infraestructura de CA y PKI, utilice wgetpara descargar la \u00faltima versi\u00f3n de EasyRSA tanto en su m\u00e1quina de CA como en su servidor OpenVPN . Luego extrae el tarball: Ha instalado con \u00e9xito todo el software requerido en su servidor y m\u00e1quina CA.&nbsp;Contin\u00fae para configurar las variables utilizadas por EasyRSA y para configurar un directorio de CA, desde el cual generar\u00e1 las claves y certificados necesarios para que su servidor y sus clientes accedan a la VPN. Paso 2: configuraci\u00f3n de las variables de EasyRSA y creaci\u00f3n de la CA EasyRSA viene instalado con un archivo de configuraci\u00f3n que puede editar para definir una serie de variables para su CA. En su&nbsp;m\u00e1quina CA&nbsp;, navegue al directorio EasyRSA: Podemos utilizar la&nbsp;plantilla haciendo una copia de un&nbsp;archivo&nbsp;existente&nbsp;en este directorio y renombr\u00e1ndolo&nbsp;:easy-rsavars.examplevars Necesitamos editar algunas de las variables que ayudan a decidir c\u00f3mo crear los certificados.&nbsp;Use&nbsp;nano, u otro editor favorito, para abrir el archivo.&nbsp;Vamos a editar algunas variables hacia el final del archivo. Encuentre la configuraci\u00f3n que establece los valores predeterminados de campo para los nuevos certificados.&nbsp;Se ver\u00e1 algo como esto: Descomente estas l\u00edneas y actualice los valores resaltados a lo que prefiera, pero no los deje en blanco: Cuando haya terminado, guarde y cierre el archivo. Dentro del directorio EasyRSA hay un script llamado&nbsp;easyrsaque se llama para realizar una variedad de tareas relacionadas con la construcci\u00f3n y administraci\u00f3n de la CA.&nbsp;Ejecute este script con la&nbsp;init-pkiopci\u00f3n de iniciar la infraestructura de clave p\u00fablica en el servidor de CA: Despu\u00e9s de esto,&nbsp;easyrsavuelva a&nbsp;llamar al&nbsp;script, sigui\u00e9ndolo con la&nbsp;build-caopci\u00f3n.&nbsp;Esto crear\u00e1 la CA y crear\u00e1 dos archivos importantes,&nbsp;ca.crty&nbsp;ca.keyque conforman los lados p\u00fablico y privado de un certificado SSL. Si no desea que se le solicite una contrase\u00f1a cada vez que interact\u00faa con su CA, puede ejecutar el&nbsp;build-cacomando con la&nbsp;nopassopci\u00f3n, como esta: En la salida, se le pedir\u00e1 que confirme el&nbsp;nombre com\u00fan&nbsp;para su CA: El nombre com\u00fan es el nombre utilizado para referirse a esta m\u00e1quina en el contexto de la autoridad de certificaci\u00f3n.&nbsp;Puede ingresar cualquier cadena de caracteres para el nombre com\u00fan de la CA pero, por simplicidad, presione&nbsp;ENTERpara aceptar el nombre predeterminado. Con eso, su CA est\u00e1 en su lugar y est\u00e1 lista para comenzar a firmar solicitudes de certificados. Paso 3: creaci\u00f3n del certificado del servidor, la clave y los archivos de cifrado Ahora que tiene una CA lista para funcionar, puede generar una clave privada y una solicitud de certificado desde su servidor y luego transferir la solicitud a su CA para que se firme, creando el certificado requerido.&nbsp;Tambi\u00e9n es libre de crear algunos archivos adicionales utilizados durante el proceso de cifrado. Comience navegando al directorio EasyRSA en su&nbsp;servidor OpenVPN&nbsp;: A partir de ah\u00ed, ejecute el&nbsp;easyrsascript con la&nbsp;init-pkiopci\u00f3n.&nbsp;Aunque ya ejecut\u00f3 este comando en la m\u00e1quina de CA, es necesario ejecutarlo aqu\u00ed porque su servidor y CA tendr\u00e1n directorios PKI separados: Luego&nbsp;easyrsa, vuelva a&nbsp;llamar al&nbsp;script, esta vez con la&nbsp;gen-reqopci\u00f3n seguida de un nombre com\u00fan para la m\u00e1quina.&nbsp;Una vez m\u00e1s, esto podr\u00eda ser lo que quiera, pero puede ser \u00fatil para que sea algo descriptivo.&nbsp;A lo largo de este tutorial, el nombre com\u00fan del servidor OpenVPN ser\u00e1 simplemente \u00abservidor\u00bb.&nbsp;Aseg\u00farese de incluir tambi\u00e9n la&nbsp;nopassopci\u00f3n.&nbsp;De lo contrario, proteger\u00e1 con contrase\u00f1a el archivo de solicitud, lo que podr\u00eda provocar problemas de permisos m\u00e1s adelante: NOTA: Si elige un nombre que no sea \u00abservidor\u00bb aqu\u00ed, deber\u00e1 ajustar algunas de las instrucciones a continuaci\u00f3n.&nbsp;Por ejemplo, al copiar<\/p>\n","protected":false},"author":1,"featured_media":1451,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[16,5,12,1,10,6],"tags":[36],"class_list":["post-159","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-debian","category-docencia","category-linux","category-sin-categoria","category-sistemas-operativos","category-talleres","tag-openvpn"],"_links":{"self":[{"href":"https:\/\/dsantana.uas.edu.mx\/index.php\/wp-json\/wp\/v2\/posts\/159","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/dsantana.uas.edu.mx\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/dsantana.uas.edu.mx\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/dsantana.uas.edu.mx\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/dsantana.uas.edu.mx\/index.php\/wp-json\/wp\/v2\/comments?post=159"}],"version-history":[{"count":20,"href":"https:\/\/dsantana.uas.edu.mx\/index.php\/wp-json\/wp\/v2\/posts\/159\/revisions"}],"predecessor-version":[{"id":1453,"href":"https:\/\/dsantana.uas.edu.mx\/index.php\/wp-json\/wp\/v2\/posts\/159\/revisions\/1453"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/dsantana.uas.edu.mx\/index.php\/wp-json\/wp\/v2\/media\/1451"}],"wp:attachment":[{"href":"https:\/\/dsantana.uas.edu.mx\/index.php\/wp-json\/wp\/v2\/media?parent=159"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/dsantana.uas.edu.mx\/index.php\/wp-json\/wp\/v2\/categories?post=159"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/dsantana.uas.edu.mx\/index.php\/wp-json\/wp\/v2\/tags?post=159"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}