Linux UFW防火墙设置、案例教程及注意事项

背景

远程连接服务器时,发现SSH远程登录服务器失败,但是又可以Ping通,故服务器的是开启的。

sudo systemctl status sshd

查看sshd的状态发现其是active,所以为什么一直SSH失败呢?

最后知道是有人启动了防火墙,所以解决办法就是在防火墙中放开22端口;

一、引言

在Linux系统中,UFW(Uncomplicated Firewall)是一个用户友好的防火墙管理工具,它提供了基于IPv4和IPv6的防火墙规则管理。本文将详细介绍如何使用UFW进行防火墙设置,并通过案例教程展示其用法,同时指出一些使用UFW时需要注意的事项。

二、UFW安装与启用

1. 安装UFW

在Ubuntu和Debian系统中,UFW默认已安装。如果没有安装,可以通过以下命令进行安装:

sudo apt-get update
sudo apt-get install ufw

在CentOS系统中,可以使用Firewalld或Iptables作为默认防火墙,但也可以安装UFW。安装命令如下:

sudo yum install ufw

2. 启用UFW

安装完成后,启用UFW防火墙:

sudo ufw enable

启用后,UFW将默认阻止所有入站连接,但允许所有出站连接。

三、UFW基本用法

1. 允许/拒绝特定端口

  • 允许HTTP(80端口)入站连接:
sudo ufw allow 80/tcp
  • 拒绝SSH(22端口)入站连接(请谨慎操作,否则可能无法远程登录):
sudo ufw deny 22/tcp

2. 允许/拒绝特定应用程序

UFW支持通过应用程序配置文件来允许或拒绝特定应用程序的访问。例如,允许OpenSSH服务:

sudo ufw allow OpenSSH

3. 查看防火墙状态及规则

  • 查看防火墙状态:
sudo ufw status

在这里插入图片描述

  • 查看防火墙规则:
sudo ufw status verbose

4. 禁用/启用UFW

  • 禁用UFW:
sudo ufw disable
  • 启用UFW(如果之前已禁用):
sudo ufw enable

四、案例教程

1. 设置Web服务器防火墙规则

假设您正在运行一个Web服务器,需要允许HTTP(80端口)和HTTPS(443端口)的入站连接。同时,您还想允许SSH(22端口)连接以便于远程管理。

  1. 允许HTTP和HTTPS入站连接:
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp
  1. 允许SSH入站连接(如果尚未允许):
sudo ufw allow 22/tcp
  1. 查看防火墙规则,确保设置正确:
sudo ufw status verbose

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-06-19 07:06:03       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-06-19 07:06:03       100 阅读
  3. 在Django里面运行非项目文件

    2024-06-19 07:06:03       82 阅读
  4. Python语言-面向对象

    2024-06-19 07:06:03       91 阅读

热门阅读

  1. 递归:汉诺塔问题III

    2024-06-19 07:06:03       29 阅读
  2. shell函数的定义

    2024-06-19 07:06:03       34 阅读
  3. Redis 面试热点(一)

    2024-06-19 07:06:03       39 阅读
  4. GPRS与4G网络:技术差异与应用选择

    2024-06-19 07:06:03       35 阅读
  5. 百度翻译注册流程

    2024-06-19 07:06:03       35 阅读
  6. 136.只出现一次的数字

    2024-06-19 07:06:03       33 阅读