📅  最后修改于: 2023-12-03 15:35:27.156000             🧑  作者: Mango
在使用ufw
防火墙的过程中,可能会遇到deny
和reject
两个关键字。它们看起来很相似,但是它们之间存在很大的区别。
deny
的作用deny
关键字指示防火墙拒绝传入或传出的连接,这意味着对该连接的请求将不会得到任何响应。客户端在发送请求后,将得到一个超时错误或无响应错误。
在 ufw
中,使用以下命令来拒绝传入或传出的连接:
sudo ufw deny [port]/[protocol]
这将拒绝在指定端口上的所有传入或传出的连接,根据选择的协议(tcp或udp)。
reject
的作用reject
关键字指示防火墙显式地拒绝传入或传出的连接,告知客户端请求被拒绝。这样客户端就会收到一个错误消息,而非超时或无响应错误。
在 ufw
中,使用以下命令来显式地拒绝传入或传出的连接:
sudo ufw reject [port]/[protocol]
这将拒绝在指定端口上的所有传入或传出的连接,根据选择的协议(tcp或udp)。
从上面的介绍中,可以看出deny
和reject
的差别主要在于客户端获得的反馈。对于deny
,客户端不会收到任何错误消息或反馈,只会在一段时间后超时或无响应。而对于reject
,客户端会显式地收到一个错误消息,告知其请求被拒绝。
因此,在使用防火墙时,需要根据实际情况选择使用哪个关键字。如果只是希望拒绝连接而不需要告知客户端,可以使用deny
。如果需要防止恶意访问并告知客户端请求被拒绝,可以使用reject
。
注:deny
和reject
的默认设置是基于reject
的。
### `deny`的作用
`deny`关键字指示防火墙拒绝传入或传出的连接,这意味着对该连接的请求将不会得到任何响应。客户端在发送请求后,将得到一个超时错误或无响应错误。
在 `ufw` 中,使用以下命令来拒绝传入或传出的连接:
sudo ufw deny [port]/[protocol]
这将拒绝在指定端口上的所有传入或传出的连接,根据选择的协议(tcp或udp)。
### `reject`的作用
`reject`关键字指示防火墙显式地拒绝传入或传出的连接,告知客户端请求被拒绝。这样客户端就会收到一个错误消息,而非超时或无响应错误。
在 `ufw` 中,使用以下命令来显式地拒绝传入或传出的连接:
sudo ufw reject [port]/[protocol]
这将拒绝在指定端口上的所有传入或传出的连接,根据选择的协议(tcp或udp)。
### 区别
从上面的介绍中,可以看出`deny`和`reject`的差别主要在于客户端获得的反馈。对于`deny`,客户端不会收到任何错误消息或反馈,只会在一段时间后超时或无响应。而对于`reject`,客户端会显式地收到一个错误消息,告知其请求被拒绝。
因此,在使用防火墙时,需要根据实际情况选择使用哪个关键字。如果只是希望拒绝连接而不需要告知客户端,可以使用`deny`。如果需要防止恶意访问并告知客户端请求被拒绝,可以使用`reject`。
***注:`deny`和`reject`的默认设置是基于`reject`的。***