Обновляем систему Debian:
sudo apt-get update && sudo apt-get upgrade -y
Устанавливаем UFW, используя следующую команду:
sudo apt-get install ufw -y
После установки включаем службу:
sudo systemctl enable ufw --now
Затем проверяем статус UFW, чтобы убедиться, что он активен и без ошибок:
sudo systemctl status ufw
Включаем брандмауэр:
sudo ufw enable
Вывод:
Command may disrupt existing ssh connections. Proceed with operation (y|n)? y
Firewall is active and enabled on system startup
По умолчанию весь входящий трафик блокируется автоматически, а весь исходящий разрешается после включения брандмауэра. Это защитит систему, запретив кому-либо удаленное подключение к системе.
Если нужно временно отключить UFW, используем следующую команду:
sudo ufw disable
Полностью удалить UFW из системы Debian:
sudo apt-get remove ufw --purge
Проверяем статус UFW, состояние правил брандмауэра и то, что активно:
sudo ufw status verbose
Вывод:
Status: active
Logging: on (low)
Default: deny (incoming), allow (outgoing), disabled (routed)
New profiles: skip
Перечисление правил в числовой последовательности:
sudo ufw status numbered
Запретить все входящие соединения:
sudo ufw default deny incoming
Разрешить все исходящие соединения:
sudo ufw default allow outgoing
Заблокировать все исходящие соединения:
sudo ufw default deny outgoing
Отобразить все профили приложений:
sudo ufw app list
Найти дополнительную информацию о существующем профиле:
sudo ufw app info WWW
Вывод:
Profile: WWW
Title: Web Server
Description: Web server
Port:
80/tcp
Включить IPv6 в UFW:
sudo nano /etc/default/ufw
IPV6=yes
sudo systemctl restart ufw
Разрешить UFW SSH-соединения:
sudo ufw allow ssh
Заблокировать все соединения SSH:
sudo ufw deny ssh/tcp
Включить порты UFW.
Разрешить по профилю приложения:
sudo ufw allow 'WWW'
Разрешить по названию службы:
sudo ufw allow http
Разрешить по номеру порта:
sudo ufw allow 80/tcp
При открытии диапазона портов необходимо указать протокол порта:
sudo ufw allow 6500:6800/tcp
sudo ufw allow 6500:6800/udp
Разрешить несколько портов в одном обращении:
sudo ufw allow 6500, 6501, 6505, 6509/tcp
sudo ufw allow 6500, 6501, 6505, 6509/udp
Разрешить определенный IP-адрес:
sudo ufw allow from 192.168.0.200
Разрешить определенный IP-адрес на определенном порту:
sudo ufw allow from 192.168.0.200 to any port 3900
Разрешить подключения подсети к указанному порту:
sudo ufw allow from 192.168.0.0/24 to any port 3900
Разрешить определенный сетевой интерфейс:
sudo ufw allow in on enp0s3 to any port 3900
Заблокировать определенный IP-адрес:
sudo ufw deny from 200.100.20.100
Заблокировать доступ из подсети на определенном порту:
sudo ufw deny from 200.100.20.100/24 to any port 80
Заблокировать подключения из подсети:
sudo ufw deny from 200.100.20.100/24
Вставить правило в начало списка UFW.
sudo ufw insert 1 deny from 114.119.135.0/24 to any port 80
Удалить правило UFW с использованием номера правила:
sudo ufw status numbered
Вывод:
Status: active
To Action From
-- ------ ----
[ 1] 22/tcp ALLOW IN Anywhere
[ 2] 80/tcp ALLOW IN Anywhere
[ 3] 22/tcp (v6) ALLOW IN Anywhere (v6)
[ 4] 80/tcp (v6) ALLOW IN Anywhere (v
Удалить третье(3) правило:
sudo ufw delete 3
Уровень ведения журнала UFW:
sudo ufw logging low
sudo ufw logging medium
sudo ufw logging high
Полностью отключить ведение журнала:
sudo ufw logging off
Журналы UFW хранятся по умолчанию: /var/журнал/ufw.log. Просмотреть журналы в реальном времени - использовать команду tail:
sudo ufw tail -f /var/log/ufw.log
Сбросить правила UFW:
sudo ufw reset
Проверка безопасности. Установить Nmap, а затем составить список открытых портов.
sudo apt-get install nmap -y
Внутренний IP-адрес системы:
hostname -I
32.41.23.5
Команда Nmap с IP-адрес сервера:
sudo nmap 32.41.23.5
Вывод:
Nmap scan report for 32.41.23.5
Host is up (0.00034s latency).
All 1000 scanned ports on 32.41.23.5 are filtered
Nmap done: 1 IP address (1 host up) scanned in 6.77 seconds
UFW это простая система межсетевого экрана по сравнению с другими вариантами, которые могут быть слишком запутанными для неопытных пользователей.