{"id":82,"date":"2023-11-10T09:47:26","date_gmt":"2023-11-10T09:47:26","guid":{"rendered":"https:\/\/prportfolio.paoloronco.it\/?p=82"},"modified":"2023-11-10T09:47:26","modified_gmt":"2023-11-10T09:47:26","slug":"nginx-proxy-manager-per-un-accesso-locale-semplificato","status":"publish","type":"post","link":"https:\/\/paoloronco.it\/en\/nginx-proxy-manager-per-un-accesso-locale-semplificato\/","title":{"rendered":"NGINX Proxy Manager for Simplified Local Access"},"content":{"rendered":"<p class=\"wp-block-paragraph\">In running my homelab, I have successfully implemented NGINX Proxy Manager as a key component to simplify local access to services and applications on my network. This article will provide an overview of how NGINX Proxy Manager improves the experience of accessing web services on my local network.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Initial Problem<\/strong><br>Initially, accessing local applications required using specific IP addresses and ports, which was cumbersome and difficult to remember. Additionally, using self-generated certificates resulted in annoying security warnings in browsers.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Solution Implemented with NGINX Proxy Manager<\/strong><br>To solve these problems, I adopted NGINX Proxy Manager as a reverse proxy and local DNS. This solution makes it easy to access applications through custom local domains without the security caveats.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>How NGINX Proxy Manager Works<\/strong><br>NGINX Proxy Manager leverages the SSL certificate verification method called DNS-01, allowing you to generate valid certificates for local domains without exposing your machine to the public network. This approach overcomes the limitations of the HTTP-01 method, making it possible to use wildcard certificates for subdomains.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Practical Implementation<\/strong><\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li><strong>Preparations:<\/strong>\n<ul class=\"wp-block-list\">\n<li>I chose DuckDNS as my free DNS provider to simplify the process.<\/li>\n\n\n\n<li>NGINX Proxy Manager was selected as the reverse proxy because of its ease of setup and support for Let&#039;s Encrypt DNS-01 verification.<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li><strong>NGINX Proxy Manager Configuration:<\/strong>\n<ul class=\"wp-block-list\">\n<li>I ran NGINX Proxy Manager via Docker on a Debian 11 system.<\/li>\n\n\n\n<li>The docker-compose.yml file has been configured with the desired services, such as Nginx Proxy Manager, Jellyfin, Home Assistant, and Nextcloud.<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li><strong>DNS Setup with DuckDNS:<\/strong>\n<ul class=\"wp-block-list\">\n<li>Created a DuckDNS domain and configured the CNAME for the desired subdomain.<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li><strong>SSL Certificate Generation:<\/strong>\n<ul class=\"wp-block-list\">\n<li>Using the NGINX Proxy Manager interface, I created a valid SSL certificate for my local domain and its subdomains.<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li><strong>Proxy Configuration:<\/strong>\n<ul class=\"wp-block-list\">\n<li>For each application, I added a proxy entry in NGINX Proxy Manager specifying the domain, IP forwarding, and port.<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li><strong>Secure Access:<\/strong>\n<ul class=\"wp-block-list\">\n<li>Now, I can access local applications through custom domains (e.g. <a href=\"https:\/\/jellyfin.local\/\">https:\/\/jellyfin.local<\/a>) without security warnings.<\/li>\n<\/ul>\n<\/li>\n<\/ol>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Conclusions<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Integrating NGINX Proxy Manager into my local network has significantly improved application access and management, providing an elegant and secure solution. This approach is a significant upgrade from using IPs and ports, helping to simplify navigation of my homelab services. For more details on the advanced features of NGINX Proxy Manager, visit the official website: <a href=\"https:\/\/nginxproxymanager.com\/\">nginxproxymanager.com<\/a>.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>All articles on this site are written with the OpenAI ChatGPT AI, model 3.5.<br>This is an advanced language model that helped generate the site&#039;s content, ensuring quality and consistency in the language.<\/strong><\/p>","protected":false},"excerpt":{"rendered":"<p>Nella gestione del mio homelab, ho implementato con successo NGINX Proxy Manager come componente chiave per semplificare l&#8217;accesso locale ai servizi e alle applicazioni della mia rete. Questo articolo fornir\u00e0 una panoramica di come NGINX Proxy Manager migliora l&#8217;esperienza di accesso ai servizi web sulla mia rete locale. Problema InizialeInizialmente, l&#8217;accesso alle applicazioni locali richiedeva &hellip; <a href=\"https:\/\/paoloronco.it\/en\/nginx-proxy-manager-per-un-accesso-locale-semplificato\/\" class=\"more-link\">Continue reading<span class=\"screen-reader-text\"> &#8220;NGINX Proxy Manager per un Accesso Locale Semplificato&#8221;<\/span><\/a><\/p>","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[7,15,8],"tags":[],"class_list":["post-82","post","type-post","status-publish","format-standard","hentry","category-proxmox","category-server","category-web"],"_links":{"self":[{"href":"https:\/\/paoloronco.it\/en\/wp-json\/wp\/v2\/posts\/82","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/paoloronco.it\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/paoloronco.it\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/paoloronco.it\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/paoloronco.it\/en\/wp-json\/wp\/v2\/comments?post=82"}],"version-history":[{"count":0,"href":"https:\/\/paoloronco.it\/en\/wp-json\/wp\/v2\/posts\/82\/revisions"}],"wp:attachment":[{"href":"https:\/\/paoloronco.it\/en\/wp-json\/wp\/v2\/media?parent=82"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/paoloronco.it\/en\/wp-json\/wp\/v2\/categories?post=82"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/paoloronco.it\/en\/wp-json\/wp\/v2\/tags?post=82"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}