防火墙管理工具
ubuntu里使用ufw来管理防火墙。ufw是一个管理防火墙规则的前端工具。本文阐述如何开启、关闭防火墙,放行指定端口。
因为我采用putty远程来使用,需要关闭防火墙或者放行22端口。
核心思维
因为ufw只是一个前端工具,所以一开始就要把ufw和防火墙功能区分开,搞清楚禁用和关闭服务的区别。
查看防火墙状态
从ufw中查看,即ufw这个前端工具的防火墙功能管理是否开启。
sudo ufw status
从systemctl中查看,即查看ufw这个防火墙管理前端工具的一个工作状态
systemctl status ufw #或者systemctl status ufw.service
关闭防火墙
首先关闭ufw和关闭防火墙不一样。从ufw管理工具中关闭只是在ufw中禁用了防火墙功能。如果采用ufw查看状态,看到的是关闭了,但是systemctl中查看ufw的状态还是开启的,也就是说,ufw中关闭防火墙(sudo ufw disable)只是在ufw中禁用了,但是本质ufw的服务还是没有关闭。
所以关闭防火墙需要禁用功能且关闭ufw服务(应该可以直接关闭ufw服务,可以试试,ufw服务关闭后也就不存在禁用不禁用的说法了,本文重点阐述只禁用ufw的防火墙管理功能有时候没效果,要关闭ufw服务)。
所以还需要systemctl stop ufw...
禁用ufw防火墙服务:
sudo ufw disable
关闭ufw防火墙管理工具服务:
sudo systemctl stop ufw
开启防火墙
开启ufw中的管理防火墙服务:
sudo ufw enable
开启ufw服务:
sudo systemctl start ufw
放行指定端口
通过ufw来放行,例如我们要放行tcp22端口。
sudo ufw allow 22/tcp
如果要放行指定端口呢?
sudo ufw allow 22
放行端口范围呢?
sudo ufw allow 1000:2000/tcp
放行http服务
sudo ufw allow http
删除或限制指定端口或服务
删除已经开启了放行的tcp22端口。
sudo ufw delete 22/tcp
删除指定端口呢?
sudo ufw delete 22
限制http服务
sudo ufw denty http