как вы создаете профиль приложения для UFW?

У UFW есть команда, которая перечисляет профили, к которым вы можете дополнительно изучить определения их профилей.

$ ufw app list

И

$ ufw app PROFILE {app profile title}

Мне было интересно, как вы можете создать профиль для неопределенная программа, например виртуальная коробка, и этот профиль запускает те же определения, которые я дал iptables для моего дистрибутива Ubuntu.


Я не только пытаюсь использовать брандмауэр Ubuntus для обслуживания своей виртуальной машины. Мне также искренне любопытно, как создать профиль для приложения, которое не поставляется с ним.

31
задан 18 August 2015 в 21:05

2 ответа

Чтобы ответить на реальный вопрос о том, как создать свой собственный файл приложения, вам нужно только знать, что он использует формат файла Windows INI (yuck).

[appname]
title=1-liner here
description=a longer line here
ports=1,2,3,4,5,6,7,8,9,10,30/tcp|50/udp|53

Строка портов может указывать несколько портов, с / udp или / tcp, для ограничения протокола, в противном случае по умолчанию используется оба. Вы должны разделить разделы протокола с помощью |.

Итак, для реального набора примеров, которые я сделал:

[puppet]
title=puppet configuration manager
description=Puppet Open Source from http://www.puppetlabs.com/
ports=80,443,8140/tcp

[AMANDA]
title=AMANDA Backup
description=AMANDA the Advanced Maryland Automatic Network Disk Archiver
ports=10080

Вы можете перечислить несколько версий приложения в одном файле, например, из apache:

===start of apache2.2-common file===
[Apache]
title=Web Server
description=Apache v2 is the next generation of the omnipresent Apache web server.
ports=80/tcp

[Apache Secure]
title=Web Server (HTTPS)
description=Apache v2 is the next generation of the omnipresent Apache web server.
ports=443/tcp

[Apache Full]
title=Web Server (HTTP,HTTPS)
description=Apache v2 is the next generation of the omnipresent Apache web server.
ports=80,443/tcp

===end of file===

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

ufw app update appname
ufw app info appname

. Используйте его с чем-то вроде:

ufw allow from 192.168.1.10 to any app amanda
ufw allow amanda

предполагая, что 192.168.1.10 - это IP-адрес вашего сервера Аманды.

0
ответ дан 18 August 2015 в 21:05

Это - на самом деле все там в странице справочника под разделом "Application Integration".

Базовый синтаксис:

ufw allow <app_name>

Или можно использовать расширенный синтаксис, чтобы быть более конкретными:

ufw allow from <some_address> to any app <app_name>

В странице справочника конкретно говорится для не определения номера порта:

Вы не должны указывать протокол ни с одним синтаксисом, и с расширенным синтаксисом, использовать приложение вместо пункта порта.

Это, вероятно, означает, что позволит <app_name> используйте любой порт, он хочет..

Другие полезные команды:

ufw app info <app_name>

Который перечисляет информацию о <app_name>профиль.

ufw app update <app_name>  

Который обновляет <app_name>профиль. Можно использовать all обновить все профили приложений.

Можно использовать:

ufw app update --add-new <app_name>  

команда для добавления нового профиля для <app_name> и обновите его, после правил, с которыми Вы отправляетесь ufw app default <policy>.

Профили приложений хранятся в /etc/ufw/applications.d и иногда /etc/services.

Для получения дополнительной информации посмотрите man ufw.

10
ответ дан 18 August 2015 в 21:05

Другие вопросы по тегам:

Похожие вопросы: