ERPNext production own server access from web

I recently started learning linux and trying to setup a server at home so my knowledge
is very limited.

I have spent few months trying to setup erpnext on own server ubuntu 16, and 18,
so far got ubuntu 16 with erpnext production local host working on the lan.
I would like to access this own server erpnxt from the internet outside the lan, using
my subdomain forwarding.
I have setup the subdomain forwarding from godaddy to my external/ public.
i have setup the ports 22, 80, 3306 on my linksys too. and given sudo cmds to ufw for these ports too. yet nothing is still working, and open port check tool is not finding any of these ports open.

i have gone through hundreds of forums and topics people put up but nothing is giving a direct answer. only half and then redirecting to the same topics and forums over and over again in circles.

can any one please tell me how to get this server accessible from the internet,
or what am i missing? it would be a great help for me and my new business to get a steady start.
I know of clouds for erp but I am not in a position to afford it after making great losses.
i have to get this old pc server to work. (its a c2quad) 5g ram and enough hhd space.)

Here are the screen shots of what i got so far and,
with the terminal info for the ports. my server pc local ip is seen below.

user1@user1-G41D3C:~$ sudo netstat -ntlp | grep LISTEN
[sudo] password for user1:
Sorry, try again.
[sudo] password for user1:
tcp 0 0* LISTEN 12914/dnsmasq
tcp 0 0* LISTEN 12914/dnsmasq
tcp 0 0* LISTEN 873/dnsmasq
tcp 0 0* LISTEN 636/cupsd
tcp 0 0* LISTEN 8406/redis-server 1
tcp 0 0* LISTEN 13472/master
tcp 0 0* LISTEN 8622/python
tcp 0 0* LISTEN 8410/redis-server 1
tcp 0 0* LISTEN 8409/redis-server 1
tcp 0 0* LISTEN 6671/mysqld
tcp 0 0* LISTEN 4208/redis-server 1
tcp 0 0* LISTEN 6746/nginx -g daemo
tcp6 0 0 ::1:53 :::* LISTEN 12914/dnsmasq
tcp6 0 0 fe80::d9c5:7c10:cf78:53 :::* LISTEN 12914/dnsmasq
tcp6 0 0 ::1:631 :::* LISTEN 636/cupsd
tcp6 0 0 :::25 :::* LISTEN 13472/master
tcp6 0 0 :::9000 :::* LISTEN 8623/node

Hi Crash,

  • Regarding your setup is it a standalone server, or virtual server? (i can give you a solution for both)
  • if you own the external IP “Public IP” where did you use it?
  • if you don’t own the external IP, call your ISP they can give you one.
  • if a standalone server you’ll need to configure a public IP address (Routeable IP) on the linux server or at least you can do the same what i did (obviously for security reason) - mapping “same as natting” routeable ip to the internal on port 80 only.
  • you don’t have to open port 3306 (not recommended at all and should be accessible form the localhost only - using secure installation will disallow remote access to your database server or simply edit my.cnf to listen only on

Hi msaed,
thanks for the quick response.

  • this is a stand alone server i believe, i have tried VM, with and 8000 versions of erpnxt.
    but this one is straight linked to the ip alone on lan. no port to be entered to access on lan. hope that helps to understand what my setup is.

  • the public ip is of my internet connection from the ISP. ( i may not understand completely what you mean) i have entered it in go daddy dns settings, subdomain forwarding. i can put up a screen shot of it.

  • i will call my ISP and ask them regarding ownership too just to learn more of this.

  • could i get the instructions for public IP config as you have mentioned so i can try it out and see what happens?
    maybe if I try out what you have done and it dosn’t work then I might be able to narrow down what Needs to be done, maybe even if its an ISP issue.

  • I am still confused as to why the ports are not open after i forward on router and allowed on firewall.
    are there more barriers to this?

so I am ready to try out your configurations as soon as you can provide it, (again i am still abti new to this, i may not get the terms and such )

Thanks again msaed
greatly appreciated.

  • You have to be sure :slight_smile:

So, you don’t pay for it? I’ve already checked the IP seems to me is a dynamic IP, you have to Call your ISP Provider and ask them for a static IP to your subscription. - they will ask for extra monthly fees. and you’ll need to be extra careful since you are exposing your home/local network to the public.

Mapping and natting will not works for you, i usually set a range of Public IP to be mapped to internal servers (using specialized router) .

if you want to test it out in your case, you’ll need a public IP and then you can forward port to internal IP - and it will works fine with VM too, by forwarding port in your route to the VM IP. (still need a Public IP (private ip) to be accessible from external network).

I’ve just noticed the attached image you can’t open port on a dynamic IP since the ISP block all of them - and this is why you’ll need a Public IP (Private IP) and will have to pay for it.


Hey thank you so much, I think i understand a lot more now. from the straight forward info you have given.
I know the static IP, I have used it before, I currently do have a dynamic IP which i pay the monthly normal internet fixed fee for, the static does charge more. and according what you said, the ISp maybe not allowing the dynamic IP to be used this way, and that confirms what some forums mentioned. I need a static IP for domain forwarding. (correct?)

  • I Have setup a standalone server now, I tested all the others like VMs, the current setup was the most simple and straight forward to get up and running.
  • now if all my setup is correct then all I need to do is get a static IP and then theoretically this should work you think?
  • the country just stopped selling new unlimited download and upload connections too. luckily they allow to keep old unlimited connections like mine.
  • if this works I should be able able to host a small web page from home too yes?
  • I will try the static IP and see, seems like the only factor here that is not letting this work.

Thank you so much again msaed

As long as you are able to forward the requested port to the correct IP address, you should be able to access the system on either static or dynamic IP.
So, for example, if you get assigned a dynamic IP each time you connect - you’d need a dynamic DNS client to point your subdomain (eg. to your assigned IP address (eg.

If the LAN/ERPNext station was, and your running on port 8080, you would forward (on your router) port=8080 to go to IP=
Anyone using would be sent to your ERPNext system.
You shouldn’t necessarily open 3306 - better to use SSH tunneling. :sunglasses:


the port forwarding on the linksys is simple and straightforward and my dynamic ip also does not change often, it takes a very long time before it changes.
anyhow, the problem right now is that the ports still dont seem to open no matter what i allow.
trying to figure that out now.

I’m very new to ERPNext but I struggled through installing on a $10/mo. server from Digital Ocean. I used ufw to set up the firewall and I believe the production install script installs fail2ban so it’s reasonably secure. Have you considered using something like this instead of a local server? Once I figured it out it wasn’t actually that difficult.

I dont really want o use a cloud either personally.

but now.
I have followed the github manual install and got it working again on local network. this time the port is set as
port is open when i check from the internet open port checking sites.

Now I did install ubuntu 16 on a blank PC and then installed erpnxt right away with the mentioned instructions.
opened the ports on the double router system, not DMZ, just open ports. ports are active and open.
subdomain forwarded from godaddy. btu i am still unable to get to my server from the internet subdomain or public IP.

Is there something else that needs to be done. if so could anyone let me know? or point me in the direction then I could follow the instructions to get it working…

this is what i get when i try to access it through the sub domain . and the ip is correct.

The connection has timed out

The server at is taking too long to respond.

The site could be temporarily unavailable or too busy. Try again in a few moments.
If you are unable to load any pages, check your computer’s network connection.
If your computer or network is protected by a firewall or proxy, make sure that Firefox is permitted to access the Web.