22

Whenever I run a command like ufw allow 22, ufw automatically adds the firewall rules to both ipv4 and ipv6. If I want to only open a port on ipv4, is there a way to do so? Something like ufw allow 22 proto ipv4.

Ralph
  • 362

3 Answers3

32

You just have to use the fuller syntax and specify an address (range).

For example, allow connections to TCP port 22 on all IPv4 addresses:

ufw allow proto tcp to 0.0.0.0/0 port 22
27

I would edit the ufw config file itself to turn off IPv6:

sudo nano /etc/default/ufw

Change the line that says: IPV6=yes to IPV6=no then restart the ufw service. You can even run sudo ufw reload if the ufw instance is already enabled.

This worked for me to ensure that all the rules I add are only added to IPv4.

Thanks

james-see
  • 377
4

Maybe only by subnet:

sudo ufw allow proto tcp from 192.168.0.0/24 to any port 22

More info: https://ubuntu.com/server/docs/firewalls

StudioLE
  • 103
Chico3001
  • 253