CentOS中:
- 查看防火墙状态:sudo systemctl status firewalld
- 关闭防火墙: systemctl stop firewalld.service.
- 开启防火墙: systemctl start firewalld.service.
- 关闭开机启动: systemctl disable firewalld.service.
- 打开防火墙开机启动: systemctl enable firewalld.service.
Ubuntu中:
- 查看防火墙状态:sudo ufw status
- 关闭防火墙:sudo ufw disable
- 开启防火墙:sudo ufw enable
- 外来访问默认允许/拒绝:ufw default allow/deny
- 允许/拒绝 访问20端口,20后可跟/tcp或/udp,表示tcp或udp封包:ufw allow/deny 20
- ufw从/etc/services中找到对应service的端口,进行过滤:ufw allow/deny servicename
- 允许自10.0.1.0/10的tcp封包访问本机的25端口:ufw allow proto tcp from 10.0.1.0/10 to 本机ip port 25
- 删除以前定义的"允许/拒绝访问20端口"的规则:ufw delete allow/deny 20
附:
Ubuntu中的ufw是指UFW(Uncomplicate Firewal),它是Ubuntu 下基于 iptables 的接口,旨在简化配置防火墙的过程。默认情况下 UFW 为关闭状态,开启时默认为拒绝所有传入链接,并允许所有传出连接。这意味着任何人尝试到达您的服务器将无法连接,而服务器内的任何应用程序能够达到外部世界。
UFW 是标准 Ubuntu 20.04 安装过程中的一部分,系统安装好后它应该已经在你的系统上存在。如果因为某些原因,它没有被安装,你可以通过输入下面的命令安装它:
sudo apt update
sudo apt-get install ufw
大部分应用都附带一份应用配置,它描述了服务,并且包含了 UFW 设置。这个规则在软件包安装的时候,被自动创建在/etc/ufw/applications.d目录下。如果想要查看系统上所有的应用配置,输入:sudo ufw app list 命令就会显示出系统上安装的软件包关系:
ckamaster@ckamaster-virtual-machine:~$ sudo ufw app list
[sudo] password for ckamaster:
Available applications:
CUPS
OpenSSH
ckamaster@ckamaster-virtual-machine:~$
如果想要查找更多关于指定配置和包含规则的信息,使用命令:sudo ufw app info ‘应用名称’ 进行查看:
ckamaster@ckamaster-virtual-machine:~$ sudo ufw app info 'OpenSSH'
Profile: OpenSSH
Title: Secure shell server, an rshd replacement
Description: OpenSSH is a free implementation of the Secure Shell protocol.
Port:
22/tcp
ckamaster@ckamaster-virtual-machine:~$
我们可以看到OpenSSH打开的端口号是22