Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
serverguide-precise-ru.pdf
Скачиваний:
77
Добавлен:
03.05.2015
Размер:
1.86 Mб
Скачать

Защита

3. Брандмауэр

3.1. Введение

Ядро Linux включает подсистему Netfilter, которая используется для регулирования сетевого траффика, входящего на или проходящего через вашу систему. Все современные средства межсетевой защиты Linux используют эту систему для фильтрации пакетов.

Система фильтрации пакетов ядра была бы малопригодной для администраторов без пользовательского интерфейса управления ею. Для этого предназначено приложение iptables. Когда пакет достигает

вашего сервера, он передаётся подсистеме Netfilter для приёма, обработки или отклонения, в зависимости от правил, передаваемых ей из рабочего пространства пользователя с помощью iptables. Таким образом, если вы хорошо знакомы с iptables — это всё, что вам необходимо для управления межсетевым экраном. Однако существует множество программ, предоставляющих интерфейс для упрощения этой задачи.

3.2. ufw — Uncomplicated Firewall

По умолчанию, программой для настройки брандмауэра в Ubuntu является приложение ufw. Разработанное для облегчения настройки iptables, приложение ufw предоставляет дружелюбный пользователю способ по созданию брандмауэра для адресов в формате IPv4 или IPv6, устанавливаемый на машину пользователя.

Приложение ufw по умолчанию отключено. Выдержка из man-страницы ufw:

«Приложение ufw не может предоставить полной функциональности брандмауэра через свой интерфейс командной строки, однако, такое приложение предлагает лёгкий способ добавления или удаления несложных правил. В основном, такое приложение используется для создания брандмауэра, устанавливаемого на компьютере пользователя.»

Ниже идут примеры по использованию приложения ufw:

• Сначала необходимо активировать ufw. Введите в терминале:

sudo ufw enable

• Для того, чтобы открыть порт (в нашем примере — ssh), введите:

sudo ufw allow 22

180

Защита

• Также правила могут быть добавлены в числовом формате:

sudo ufw insert 1 allow 80

• Похожим образом, чтобы закрыть порт, введите:

sudo ufw deny 22

• Чтобы удалить правило, введите delete и, далее, удаляемое правило:

sudo ufw delete deny 22

Также возможно разрешить доступ с определённых узлов или сетей на конкретный порт. Нижеследующий пример позволяет доступ к порту ssh с узла 192.168.0.2 на любой IP-адрес на данном компьютере:

sudo ufw allow proto tcp from 192.168.0.2 to any port 22

Замените 192.168.0.2 на 192.168.0.0/24, чтобы разрешить доступ к порту ssh из целой подсети.

Указание опции --dry-run у команды ufw, приведёт к выводу результирующих правил без их применения. Например, следующее будет применено, если открыт порт HTTP:

sudo ufw --dry-run allow http

*filter

:ufw-user-input - [0:0] :ufw-user-output - [0:0] :ufw-user-forward - [0:0] :ufw-user-limit - [0:0] :ufw-user-limit-accept - [0:0]

###ПРАВИЛА ###

###tuple ### allow tcp 80 0.0.0.0/0 any 0.0.0.0/0 -A ufw-user-input -p tcp --dport 80 -j ACCEPT

###ОКОНЧАНИЕ ПРАВИЛ ###

-A ufw-user-input -j RETURN -A ufw-user-output -j RETURN -A ufw-user-forward -j RETURN

-A ufw-user-limit -m limit --limit 3/minute -j LOG --log-prefix "[UFW LIMIT]: " -A ufw-user-limit -j REJECT

-A ufw-user-limit-accept -j ACCEPT COMMIT

Правила изменены

• Можно отключить приложение ufw, для этого введите:

181

Защита

sudo ufw disable

• Введите для просмотра статуса брандмауэра:

sudo ufw status

Для более детального отображения статуса введите следующую команду:

sudo ufw status verbose

• Для просмотра числового формата:

sudo ufw status numbered

Если порт, который вы хотите открыть или закрыть, определён в файле /etc/services, вы можете использовать имя порта вместо его номера. Для этого в приведённых выше примерах можно заменить число 22 на ssh.

Это краткое введение в использование ufw. Пожалуйста, обратитесь к справочной странице программы ufw для более подробной информации.

3.2.1. Интеграция приложений с ufw

Приложения, открывающие порты, могут включать ufw профиль, который определяет порты, необходимые для корректной работы приложения. Эти профили содержатся в /etc/ufw/applications.d и могут быть изменены, если были изменены порты «по умолчанию».

Для просмотра списка приложений с установленными профилями введите в терминале следующую команду:

sudo ufw app list

Аналогично, чтобы разрешить трафик через порт с помощью профиля приложения, введите:

sudo ufw allow Samba

• Также доступен расширенный синтаксис:

ufw allow from 192.168.0.0/24 to any app Samba

Замените Samba и 192.168.0.0/24 профилем используемого вами приложения и адресом вашей сети соответственно.

182

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]