{"id":2534,"date":"2021-05-13T02:27:26","date_gmt":"2021-05-13T02:27:26","guid":{"rendered":"https:\/\/auladig.co\/?p=2534"},"modified":"2025-12-20T15:31:01","modified_gmt":"2025-12-20T15:31:01","slug":"como-configurar-tu-servidor-ftp-detras-de-un-servidor-nat-con-ip-dinamica","status":"publish","type":"post","link":"https:\/\/agenciaroco.com\/en\/how-to-configure-your-ftp-server-behind-a-nat-server-with-dynamic-ip\/","title":{"rendered":"How to Configure Your FTP Server Behind a NAT Server with Dynamic IP"},"content":{"rendered":"<p>Knowing how to configure your FTP server behind a NAT server with a dynamic IP address is a common challenge for those who need their server accessible from the outside, but are faced with changing IP addresses and routers with NAT.<\/p>\n\n\n\n<p>In this article, you&#039;ll learn how to set up an FTP server with FileZilla Server, enable passive mode, port forwarding, assign a static IP address, and use DDNS to maintain a stable connection from any location.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Why is it difficult to set up an FTP server behind a NAT with a dynamic IP?<\/h2>\n\n\n\n<p>One of the main challenges when setting up an FTP server at home or on a corporate network is that we&#039;re often behind a NAT router with a dynamic IP address. This complicates external connections, as all devices share a single public IP address, preventing the client from connecting directly to the server.<\/p>\n\n\n\n<p>FTP (File Transfer Protocol) allows files to be transferred between a client and a server. However, since the server is located on a local network, external connections must be properly redirected to reach the correct computer, which requires configuring both the router and the FTP server software.<\/p>\n\n\n\n<p>To understand how this connection works, we must know that the client needs to know the FTP server&#039;s IP address. Since this address can change constantly (because it&#039;s dynamic) and doesn&#039;t point directly to our device, we must rely on specific configurations such as passive mode and port forwarding.<\/p>\n\n\n\n<p>Next, we&#039;ll show you how to use FileZilla Server to set up your FTP server and prepare your network so external connections work properly even with a dynamic IP address.<br>Initial FTP Server Configuration with FileZil<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">FTP Server Setup with FileZilla Step by Step<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">Installing Filezilla Server<\/h3>\n\n\n\n<p>On our computer we are going to configure the FTP server, for this we use filezilla server. On the Internet you will find more options such as Titan FTP Server, Serv-U FTP Server, among others, but Filezilla is the one that has taken its strongest place.&nbsp;<\/p>\n\n\n\n<p>First we install it in the folder we define, leave the default options and enter an administrator password. Once installed you will find a screen like the following:<\/p>\n\n\n\n<figure class=\"wp-block-image\"><a href=\"https:\/\/auladig.co\/wp-content\/uploads\/2021\/05\/Inicio-programa.jpg\" target=\"_blank\" rel=\"noopener\"><img decoding=\"async\" src=\"https:\/\/auladig.co\/wp-content\/uploads\/2021\/05\/Inicio-programa.jpg\" alt=\"\" title=\"\"><\/a><\/figure>\n\n\n\n<p><\/p>\n\n\n\n<p>Once FileZilla Server is installed, we access the administration interface with the following settings:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Host:<\/strong> <code>localhost<\/code> (to connect to the same computer \u2013 127.0.0.1)<\/li>\n\n\n\n<li><strong>Port:<\/strong> <code>14147<\/code> (default port of the administrative panel)<\/li>\n\n\n\n<li><strong>Password:<\/strong> the one established during installation<\/li>\n<\/ul>\n\n\n\n<p><\/p>\n\n\n\n<p>Upon entering, you may see some warnings. The most common are:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u201cYou appear to be behind a NAT router. Please configure the passive mode settings and forward a range of ports in your router.\u201d<\/li>\n\n\n\n<li>\u201cFTP over TLS is not enabled, users cannot securely log in.\u201d<\/li>\n<\/ul>\n\n\n\n<p><\/p>\n\n\n\n<p>The first warning is the one we&#039;ll address in this article, as it prevents an external client from connecting properly. This situation is common when configuring your FTP server behind a NAT server with a dynamic IP address. We&#039;ll address the second warning, related to the lack of FTPS encryption, later.<\/p>\n\n\n\n<!DOCTYPE html>\n<html lang=\"es\">\n  <meta charset=\"UTF-8\">\n  <style>\n    body {\n      margin: 0;\n      padding: 0;\n      font-family: Arial, sans-serif;\n    }\n\n    .banner {\n      display: flex;\n      align-items: center;\n      justify-content: space-between;\n      background-color: #252654;\n      border-radius: 20px;\n      color: white;\n      padding: 35px 30px 35px 30px;\n      max-width: 800px;\n      margin: 40px auto;\n    }\n\n    .left-content {\n      display: flex;\n      flex-direction: column;\n      align-items: center;\n    }\n\n    .left-content img {\n      width: 200px;\n      height: auto;\n      margin-bottom: 40px;\n    }\n\n    .btn {\n      background-color: #157BA2;\n      color: white !important;\n      padding: 12px 30px;\n      border: none;\n      border-radius: 15px;\n      font-size: 22px;\n      cursor: pointer;\n      text-decoration: none;\n    }\n\n    .right-content {\n      flex: 1;\n      padding-left: 40px;\n    }\n\n    .right-content h3 {\n      font-size: 45px;\n      margin-bottom: 10px;\n      margin-top: 0px;\n      color: white !important;\n    }\n\n    .right-content p {\n      font-size: 16px;\n      line-height: 23px;\n      margin: 0;\n      width: 375px;\n      \n    }\n  <\/style>\n\n  <div class=\"banner\">\n    <div class=\"left-content\">\n      <img decoding=\"async\" src=\"https:\/\/agenciaroco.com\/wp-content\/uploads\/2021\/02\/Logo-Blanco-ROCO.png\" alt=\"Roco CRM Logo\" title=\"\">\n      <a href=\"https:\/\/api.whatsapp.com\/send?phone=573196592501&#038;text=%C2%A1Hola!%20Estoy%20interesado%20en%20uno%20de%20sus%20servicios\" class=\"btn\" target=\"_blank\" rel=\"noopener\">Contact us!<\/a>\n    <\/div>\n\n    <div class=\"right-content\">\n      <h3>Set up your FTP behind a NAT without any hassle!<\/h3>\n      <p>\n        Having trouble with dynamic IP addresses or closed ports? We can help you implement an externally accessible FTP server, even behind NAT.\n      <\/p>\n    <\/div>\n  <\/div>\n\n<\/html>\n\n\n\n<h3 class=\"wp-block-heading\">Configuring Groups in Filezilla<\/h3>\n\n\n\n<p>We are going to create a group to which we are going to give access to our FTP server. Just click on the add button, write the name and activate the Enable access for users inside group box.<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/auladig.co\/wp-content\/uploads\/2021\/05\/Creacion-de-grupos-1-1.jpg\" alt=\"\" title=\"\"><\/figure>\n\n\n\n<p><\/p>\n\n\n\n<h4 class=\"wp-block-heading\">Filezilla v0.8<\/h4>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/auladig.co\/wp-content\/uploads\/2021\/05\/Creacion-de-grupos-filezila-1.jpg\" alt=\"\" title=\"\"><\/figure>\n\n\n\n<p><\/p>\n\n\n\n<h4 class=\"wp-block-heading\">Filezilla v1.1<\/h4>\n\n\n\n<p>Once created, we must configure which folder we are going to give access to to the users who belong to this group. To do this, we go to the shared folders option in the left menu, select the created group and click on the add button (below directories), there we must select the folder that we want to share via ftp and select the permissions that we are going to give it.<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/auladig.co\/wp-content\/uploads\/2021\/05\/Creacion-de-grupos-2-1-1.jpg\" alt=\"\" title=\"\"><\/figure>\n\n\n\n<p><\/p>\n\n\n\n<h4 class=\"wp-block-heading\">Filezilla v0.8<\/h4>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/auladig.co\/wp-content\/uploads\/2021\/05\/Creacion-de-grupos-2-filezila-1.jpg\" alt=\"\" title=\"\"><\/figure>\n\n\n\n<p><\/p>\n\n\n\n<h4 class=\"wp-block-heading\">Filezilla v1.1<\/h4>\n\n\n\n<p>Finally, we&#039;ll add an extra layer of security to restrict access to our server. We&#039;ll only allow access to our client&#039;s IP address. In our case, we&#039;re configuring an FTP server to perform backups, so we have the client IP addresses fairly well defined. To block all incoming connections, type * and exclude the IP addresses we want to allow in the connection in the following box. Click OK to finish:<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/auladig.co\/wp-content\/uploads\/2021\/05\/Creacion-de-grupos-3-1.jpg\" alt=\"\" title=\"\"><\/figure>\n\n\n\n<p><\/p>\n\n\n\n<h4 class=\"wp-block-heading\">Filezilla v0.8<\/h4>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/auladig.co\/wp-content\/uploads\/2021\/05\/Creacion-de-grupos-3-filezila-1.jpg\" alt=\"\" title=\"\"><\/figure>\n\n\n\n<p><\/p>\n\n\n\n<h4 class=\"wp-block-heading\">Filezilla v1.1<\/h4>\n\n\n\n<h3 class=\"wp-block-heading\">Creating Users in Filezilla<\/h3>\n\n\n\n<p>Once the group is created, we&#039;ll create the users. Go to the Users section, click Add, enter a name, and select the group it belongs to. Then, enable the account and enter a password. In Filezilla v1.1, it&#039;s important to note that folder management has changed slightly. You must select a virtual path; otherwise, you&#039;ll receive an error message saying &quot;Virtual path must be absolute.&quot; To fix this, simply type &quot;\/.&quot;<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/auladig.co\/wp-content\/uploads\/2021\/05\/Creacion-de-usuarios-1-1.jpg\" alt=\"\" title=\"\"><\/figure>\n\n\n\n<p><\/p>\n\n\n\n<h4 class=\"wp-block-heading\">Filezilla v0.8<\/h4>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/auladig.co\/wp-content\/uploads\/2021\/05\/Creacion-de-usuarios-1-Filezilla-1.jpg\" alt=\"\" title=\"\"><\/figure>\n\n\n\n<p><\/p>\n\n\n\n<h6 class=\"wp-block-heading\">Filezilla v1.1<\/h6>\n\n\n\n<p>Being within an already configured group we do not need to make any further modifications, however FileZilla allows us to make specific configurations per user if desired.&nbsp;<\/p>\n\n\n\n<p>We have already finished the user configuration. Now let&#039;s go with our team. As I mentioned at the beginning, we have a NAT router that generates dynamic IP addresses for both our local IP and the network IP. This in addition to having a network IP for all our computers on our local network, as you can imagine, this implies It makes it impossible for our client to connect to our server since the IP to which it connects can be from several different computers on the local network assigned to that IP. Therefore, we must configure passive mode in FileZilla, this will cause our router to receive a FTP request (port 21 by default) and return a series of ports so that the client can connect through one of these at random. To configure this we go to edit&gt;settings and in the menu on the left we will go to passive mode settings:<\/p>\n\n\n\n<figure class=\"wp-block-image\"><a href=\"https:\/\/auladig.co\/wp-content\/uploads\/2021\/05\/Passive-mode-settings.jpg\" target=\"_blank\" rel=\"noopener\"><img decoding=\"async\" src=\"https:\/\/auladig.co\/wp-content\/uploads\/2021\/05\/Passive-mode-settings.jpg\" alt=\"\" title=\"\"><\/a><\/figure>\n\n\n\n<p><\/p>\n\n\n\n<p>In FileZilla Server, go to Passive Mode Settings and define a port range greater than 1024, as lower ports are reserved for the system. Then, enable the \u201cRetrieve external IP address from\u201d option so the program automatically detects your public IP address, which is essential when setting up your FTP server behind a NAT server with a dynamic IP address.<\/p>\n\n\n\n<p>Next, access your router&#039;s dashboard (usually from 192.168.0.1) and go to the Port Forwarding section. There, redirect the ports selected in FileZilla to the local IP of the computer hosting the FTP server. This way, you&#039;ll ensure external connections arrive correctly, even with a dynamic IP address.<\/p>\n\n\n\n<figure class=\"wp-block-image\"><a href=\"https:\/\/auladig.co\/wp-content\/uploads\/2021\/05\/Configuracion-router.jpg\" target=\"_blank\" rel=\"noopener\"><img decoding=\"async\" src=\"https:\/\/auladig.co\/wp-content\/uploads\/2021\/05\/Configuracion-router-1024x428.jpg\" alt=\"\" title=\"\"><\/a><\/figure>\n\n\n\n<p><\/p>\n\n\n\n<p>As you can see, we write the ports described above and direct them to the local IP of our computer. If you do not know what your IP is, open a command line (cmd) and write ipconfig, it is the ipv4 line.<\/p>\n\n\n\n<figure class=\"wp-block-image\"><a href=\"https:\/\/auladig.co\/wp-content\/uploads\/2021\/05\/cmd.jpg\" target=\"_blank\" rel=\"noopener\"><img decoding=\"async\" src=\"https:\/\/auladig.co\/wp-content\/uploads\/2021\/05\/cmd.jpg\" alt=\"\" title=\"\"><\/a><\/figure>\n\n\n\n<p><\/p>\n\n\n\n<p>With this we solve the problem of a single IP for our entire local network. The connection would be as follows:&nbsp;<\/p>\n\n\n\n<p>Client connects through the network IP. The router receives it, through a port forward it determines which computer on the local network it should send the communication to with the ports selected in FileZilla.<\/p>\n\n\n\n<p>Finally, we must configure the static (local) IP of our server, with this we ensure that the local IP will not change and the port forward would be sending the communication to an IP that is no longer being used. We must do this configuration on our router:<\/p>\n\n\n\n<figure class=\"wp-block-image\"><a href=\"https:\/\/auladig.co\/wp-content\/uploads\/2021\/05\/ip-local-estatica.jpg\" target=\"_blank\" rel=\"noopener\"><img decoding=\"async\" src=\"https:\/\/auladig.co\/wp-content\/uploads\/2021\/05\/ip-local-estatica.jpg\" alt=\"\" title=\"\"><\/a><\/figure>\n\n\n\n<p><\/p>\n\n\n\n<p>With this, we&#039;re done. The next step is to connect through the client. The IP address would be our network IP address\u2014how do I know my network IP address?\u2014the username we created on our FileZilla server, along with its password and port 21 if your client requests it. If everything went correctly, you&#039;ll see a screen like this on your FileZilla Server with the connection status:&nbsp;<\/p>\n\n\n\n<figure class=\"wp-block-image\"><a href=\"https:\/\/auladig.co\/wp-content\/uploads\/2021\/05\/Conexion-OK.jpg\" target=\"_blank\" rel=\"noopener\"><img decoding=\"async\" src=\"https:\/\/auladig.co\/wp-content\/uploads\/2021\/05\/Conexion-OK.jpg\" alt=\"\" title=\"\"><\/a><\/figure>\n\n\n\n<p><\/p>\n\n\n\n<p>If you get a connection error at this point, the firewall is probably preventing the connection to your computer. To solve this, I invite you to read this article.<\/p>\n\n\n\n<p>We&#039;ve already tested with our current IP, but what happens when our IP changes? To do this, we must use a dynamic DNS (DDNS) service. If you&#039;re unfamiliar with this concept, I invite you to read this article. In short, this service will update our router&#039;s IP and assign it to a hostname. Therefore, our client will no longer connect to a specific IP, but to the hostname.&nbsp;<\/p>\n\n\n\n<p>We are going to configure our DDNS, for this there are many services, both paid and free, I recommend you review the options of your router to evaluate if the DDNS service is supported by your router.<\/p>\n\n\n\n<p>Once validated, we must access our DDNS service, create the hostname, and assign it the current IP address. Next, we search for the DDNS option in our router&#039;s settings, select our service, and enter the credentials. The router can now connect to our DDNS service and update the IP address to the hostname.<\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter is-resized\"><a href=\"https:\/\/auladig.co\/wp-content\/uploads\/2021\/05\/DDNS.jpg\" target=\"_blank\" rel=\"noopener\"><img decoding=\"async\" src=\"https:\/\/auladig.co\/wp-content\/uploads\/2021\/05\/DDNS-1024x512.jpg\" alt=\"\" style=\"width:592px;height:auto\" title=\"\"><\/a><\/figure>\n\n\n\n<p>With this we would have configured our Local ftp server.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Boost Your Digital Presence with Comprehensive Solutions!<\/h2>\n\n\n\n<p>Now that you know how to configure your FTP server behind a NAT server with a dynamic IP, it&#039;s time to take the next step. <strong><strong><a href=\"https:\/\/agenciaroco.com\/en\/\" data-type=\"link\" data-id=\"https:\/\/agenciaroco.com\/\" target=\"_blank\" rel=\"noreferrer noopener\">Agencia Roco<\/a><\/strong><\/strong>We boost your digital presence with customized SEO strategies, CRM automation, and Google Ads campaigns that truly convert.<\/p>\n\n\n\n<div class=\"wp-block-buttons is-content-justification-center is-layout-flex wp-container-core-buttons-is-layout-a89b3969 wp-block-buttons-is-layout-flex\">\n<div class=\"wp-block-button\"><a class=\"wp-block-button__link wp-element-button\" href=\"https:\/\/wa.link\/zw0l6t\" target=\"_blank\" rel=\"noreferrer noopener\">Contact us!<\/a><\/div>\n<\/div>","protected":false},"excerpt":{"rendered":"<p>Saber c\u00f3mo configurar tu servidor FTP detr\u00e1s de un servidor NAT con IP din\u00e1mica es un desaf\u00edo com\u00fan para quienes necesitan que su servidor sea accesible desde el exterior, pero enfrentan IPs cambiantes y routers con NAT. En este art\u00edculo aprender\u00e1s a configurar un servidor FTP con FileZilla Server, habilitar el modo pasivo, hacer port [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":20279,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[12],"tags":[],"class_list":["post-2534","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-servidores"],"acf":[],"_links":{"self":[{"href":"https:\/\/agenciaroco.com\/en\/wp-json\/wp\/v2\/posts\/2534","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/agenciaroco.com\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/agenciaroco.com\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/agenciaroco.com\/en\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/agenciaroco.com\/en\/wp-json\/wp\/v2\/comments?post=2534"}],"version-history":[{"count":0,"href":"https:\/\/agenciaroco.com\/en\/wp-json\/wp\/v2\/posts\/2534\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/agenciaroco.com\/en\/wp-json\/wp\/v2\/media\/20279"}],"wp:attachment":[{"href":"https:\/\/agenciaroco.com\/en\/wp-json\/wp\/v2\/media?parent=2534"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/agenciaroco.com\/en\/wp-json\/wp\/v2\/categories?post=2534"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/agenciaroco.com\/en\/wp-json\/wp\/v2\/tags?post=2534"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}