{"id":4434,"date":"2020-07-31T13:11:02","date_gmt":"2020-07-31T12:11:02","guid":{"rendered":"http:\/\/bitacora.eniac2000.com\/?p=4434"},"modified":"2020-07-31T13:11:02","modified_gmt":"2020-07-31T12:11:02","slug":"acceso-a-traves-de-openvpn-a-equipos-de-la-red-local-del-servidor","status":"publish","type":"post","link":"https:\/\/bitacora.eniac2000.com\/?p=4434","title":{"rendered":"Acceso a trav\u00e9s de OpenVPN a equipos de la red local del servidor VPN"},"content":{"rendered":"<p>La configuraci\u00f3n por defecto de OpenVPN permite acceder s\u00f3lo al equipo servidor de VPN cuando estableces la conexi\u00f3n desde el cliente. Sin embargo, es posible extender el acceso al resto de equipos de la red local de dicho servidor, en caso de necesitar acceso a otras m\u00e1quinas. La <em>receta<\/em> es la siguiente:<\/p>\n<ul>\n<li><strong>Configurar el servidor para que advierta al cliente de las rutas a las que puede acceder:<\/strong> Para que el cliente sepa que se puede conectar a m\u00e1s redes adem\u00e1s de al propio servidor de VPN es preciso advertirle de ello. Se puede hacer f\u00e1cilmente a\u00f1adiendo la directiva \u00abpush\u00bb en el fichero de configuraci\u00f3n del servidor. Para permitir acceso a una red de tipo 192.168.0.0\/24, bastar\u00eda con lo siguiente: <strong>push \u00abroute 192.168.0.0 255.255.255.0\u00bb<\/strong>, y reiniciar el servicio.<\/li>\n<li><strong>Permitir que nuestro servidor haga forwarding de paquetes:<\/strong> Se habr\u00e1 de modificar el fichero <em>\/etc\/sysctl.conf<\/em>, y quitar el comentario de la l\u00ednea <em># net.ipv4.ip_forward=1<\/em>. Posteriormente habr\u00e1 que reiniciar el servicio con <em>sudo sysctl -p<\/em>.<\/li>\n<li><strong>Activar el enmascaramiento de paquetes en nuestro servidor:<\/strong> Este \u00faltimo paso va en funci\u00f3n de nuestra arquitectura. Si nuestro servidor de OpenVPN <strong>no<\/strong> es la puerta de enlace por defecto de nuestra red, dado que las peticiones de los clientes OpenVPN llegar\u00e1n al servidor de destino con una IP del tipo 10.8.0.x (o como sea que lo tengamos configurado en nuestro servidor OpenVPN), a la hora de responder a dichas peticiones, enviar\u00e1n las respuestas a la puerta de enlace por defecto, con lo que se perder\u00e1n las respuestas, ya que la puerta de enlace por defecto no tendr\u00e1 constancia de la emisi\u00f3n de las mismas (enrutado asim\u00e9trico), y \u00e9stas no llegar\u00e1n al cliente OpenVPN (este problema no se dar\u00eda con el servidor OpenVPN actuando como puerta de enlace, ya que <strong>s\u00ed<\/strong> tendr\u00eda constancia de los paquetes, y podr\u00eda enrutarlos adecuadamente). Para evitar el problema, es posible activar el enmascaramiento de paquetes. Bastar\u00eda con a\u00f1adir la siguiente regla a nuestro iptables: <em>iptables -t nat -I POSTROUTING -s 10.8.0.0\/24 -o eth0 -j MASQUERADE<\/em>&#8230; siempre que la interfaz de la red sea la eth0, y que nuestra red de clientes OpenVPN sea la 10.8.0.0\/24 (si no, hay que modificar estos valores seg\u00fan correspondan). Para hacer que la configuraci\u00f3n sea persistente, recomiendo usar el servicio <strong>iptables-persistent<\/strong>, existente en Debian y otras distribuciones.<\/li>\n<\/ul>\n<p><strong>Referencias:<\/strong><\/p>\n<ul>\n<li><a href=\"https:\/\/openvpn.net\/community-resources\/expanding-the-scope-of-the-vpn-to-include-additional-machines-on-either-the-client-or-server-subnet\/\" target=\"_blank\">Expanding the scope of the VPN to include additional machines on either the client or server subnet<\/a><\/li>\n<li><a href=\"https:\/\/www.eduardocollado.com\/2017\/03\/24\/podcast-19-openvpn\/\" target=\"_blank\">OpenVPN<\/a><\/li>\n<li><a href=\"https:\/\/forum.openmediavault.org\/index.php?thread\/16886-openvpn-masquerading\/\" target=\"_blank\">OpenVPN: Masquerading<\/a><\/li>\n<li><a href=\"https:\/\/weblog.benetjoandarder.es\/como-usar-iptables-persistent-debian-7.xhtml\" target=\"_blank\">C\u00f3mo usar iptables-persistent en Debian 7<\/a><\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>La configuraci\u00f3n por defecto de OpenVPN permite acceder s\u00f3lo al<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"advanced_seo_description":"","jetpack_seo_html_title":"","jetpack_seo_noindex":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":false,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2}},"categories":[13],"tags":[517,853,986,1205,1762],"series":[],"class_list":["post-4434","post","type-post","status-publish","format-standard","hentry","category-informatica","tag-debian","tag-iptables","tag-linux","tag-openvpn","tag-vpn"],"jetpack_publicize_connections":[],"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/bitacora.eniac2000.com\/index.php?rest_route=\/wp\/v2\/posts\/4434","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/bitacora.eniac2000.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/bitacora.eniac2000.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/bitacora.eniac2000.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/bitacora.eniac2000.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=4434"}],"version-history":[{"count":0,"href":"https:\/\/bitacora.eniac2000.com\/index.php?rest_route=\/wp\/v2\/posts\/4434\/revisions"}],"wp:attachment":[{"href":"https:\/\/bitacora.eniac2000.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=4434"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/bitacora.eniac2000.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=4434"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/bitacora.eniac2000.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=4434"},{"taxonomy":"series","embeddable":true,"href":"https:\/\/bitacora.eniac2000.com\/index.php?rest_route=%2Fwp%2Fv2%2Fseries&post=4434"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}