How do I enable outside access if port 80 and 443 are blocked?

I’m using a Raspberry PI with nextcloudpi. Problem is that my ISP seems to have the ports blocked. Any way to get access when I’m not at home?

cc @nachoparker

Which inbound tcp ports are opened usually depend on the configuration of your internet router and not your ISP. You should check the configuration of your internet router first, if you want to allow inbound traffic. This need always to be done independently from which tcp port you want to use at the end.

some ISPs block ports or directly hide you behing a CG-NAT. You would have to do the DNS challenge mechanism. Look that up in the NCP wiki

Im using a vpn provider that have all ports open and a static wan ip. Ok its not free but damn fast. But thats for my epost server My iSP havent blocked 80 or 443. But if my isp blocks 80 and 443 i can use my vpn for that to. its in sweden but have servers all over the world.

How do I do that?

Get vpn static wan ip? Can write a guide about it in a few hours!

vpn about 3 to 5$ month Static IP about 2$ month look for offer.

apt install openvpn-server

Order a vpn that use a dedicated IP VPN the have guide to add the config file for my ovpn my config looks like this

cd /tmp && wget && unzip && mv config/* /etc/openvpn && rm -rf config && rm

paste username and password:

nano /etc/openvpn/credentials

chmod 600 /etc/openvpn/credentials
openvpn --config /etc/openvpn/ovpn.conf --daemon

and u are done and safe behind vpn all ports open

Perl script to see if ip is right

nano ~/



# get HTML file with external IP address
system ("wget -q");
open(FILE, '<index.html') || die("Could not open file!");

print "Your IP Address is: ";

foreach (@raw_data) {
        if (/((\d{1,3})(\.)){3}\d{1,3}/) {
        print "$_\n";
# removing index.html
system ("rm index.html");

cd ~
Your IP Address is:

Open port 80 443 25 465 587 and so on for your software and so on in your router, dmz use ufw


systemctl status/reload/restart/stop/start openvpn

NOTE some vpn providers have there own dns servers dont forget to look them up if it dosent work.

for that price. open an account at or or a cheap hoster nearby
and setup your nextcloud in the cloud. encrypt your datafiles and you should have privacy like at home.
use my playbook to setup up nextcloud in 15-20 minutes.

the external dns name of a scaleway machine works even with letsencrypt.

You can change the ports in your Apache configuration of your NextcloudPi.