Вопрос или проблема
Я использую настольную версию Ubuntu 14.04. Я хочу заблокировать определенные приложения от доступа в интернет и разрешить другим. Можно ли сделать это с помощью UFW? Если да, то как? Если нет, можно ли сделать это другим способом? Я не хочу использовать GUFW. Я могу блокировать по IP, но не по приложениям.
( год 2018 ) Невозможно.
Существуют только искусственные протезы, которые могут лишь разрешать или блокировать порты
из /etc/ufw/applications.d/ или из /etc/services.
Аналогичная проблема существует и с iptables.
Тем не менее, iptables также имеет или имел модуль “-m owner –gid-owner”.
https://unix.stackexchange.com/questions/373703/unable-to-get-iptables-owner-module-gid-owner-to-work#373783
Ответ или решение
На платформе Ubuntu 14.04, использование UFW (Uncomplicated Firewall) для блокировки интернет-доступа конкретных приложений может вызвать сложности, поскольку UFW не предоставляет встроенной функции для блокировки приложений напрямую. Вместо этого UFW работает с правилами сетевого трафика, основанными на портах и IP-адресах.
Основные принципы работы UFW
UFW в основном настраивается для управления входящим и исходящим трафиком на основе сетевых правил и политик. Вы можете разрешать или блокировать подключение на основе протоколов (например, TCP, UDP) и портов, но не на основании конкретных приложений или исполняемых файлов.
Блокировка приложений с помощью UFW
Хотя UFW не предназначен для управления доступом приложений, вы можете использовать следующие обходные пути:
-
Блокировка по портам: Если у вас есть информация о портах, которые использует приложение для доступа в сеть, вы можете заблокировать эти порты с помощью UFW. Например, для блокировки порта 80, используемого для HTTP, выполните команду:
sudo ufw deny 80
-
Фильтрация по IP: Если вы знаете, что определенные приложения обращаются к конкретным IP-адресам, вы можете заблокировать доступ к этим адресам с помощью следующей команды:
sudo ufw deny from [IP_ADDRESS]
Альтернативные методы
Если использование UFW не приносит должных результатов, вы можете рассмотреть следующие альтернативы:
-
Iptables: Хотя работа с
iptables
может показаться сложнее, это более гибкое решение для управления сетевыми правилами. С помощью модулейowner
иgid-owner
вы можете блокировать трафик, исходящий от конкретных пользователей или групп. Например:sudo iptables -A OUTPUT -m owner --uid-owner [USER_ID] -j DROP
Это также может помочь в блокировке приложений, запущенных под определённым пользователем.
-
На уровне приложений: Некоторые приложения могут создавать собственные правила файрвола или настройку сетевого доступа. Посмотрите параметры конфигурации используемого вами приложения, возможно, у него есть возможность управлять сетевыми подключениями.
-
Программы контроля доступа: Существует программное обеспечение, такое как
AppArmor
илиSELinux
, которые предоставляют дополнительные возможности контроля доступа к приложениям, включая ограничения на сетевые взаимодействия.
Заключение
Таким образом, хотя UFW сам по себе не позволяет непосредственно блокировать доступ конкретным приложениям, вы можете использовать его в сочетании с другими методами. Для более детального контроля вы можете рассмотреть iptables
и другие инструменты для управления доступом. Получить необходимые результаты возможно, однако потребуется дополнительная экспертиза и углубленные знания сетевых технологий.