Я хотел бы использовать программное обеспечение для контроля, какая программа может подключаться к Интернету. Я знаю, что такое поведение связано со словом «брандмауэр», но некоторые пользователи Linux очень расстраиваются, если кто-то требует персонального брандмауэра. Я не хочу расстраивать вас требованием такой программы.
Я не хочу «защищать порты» или другие вещи, которые Персональный брандмауэр обещает в Windows. Я посмотрел, iptables
но это не соответствует моим требованиям.
Я увидел здесь отличный ответ ( «Как заблокировать доступ в интернет для винных приложений» ), но настроить его очень неудобно.
Существует ли программное обеспечение, которое запрашивает каждую программу, может ли она получить доступ к Интернету?
Ответы:
На немецком форуме Ubuntu ( переведенный на английский язык ), похоже, есть Perl-скрипт . Я никогда не пробовал, и я не стал внимательнее смотреть на сценарий, но, возможно, он работает для вас. Описание только на немецком языке, поэтому вам может потребоваться услуга перевода (например, Google Translate; см. Выше).
источник
Если вы все еще ищете приложение такого типа, в настоящее время я разрабатываю именно это приложение: http://douaneapp.com/ https://gitlab.com/douaneapp/Douane
Мое приложение блокирует все неизвестные приложения (блокируются новые версии авторизованного приложения) и спрашивает, разрешить или запретить его трафик.
Посмотрите на сайт ;-)
источник
Я нашел удобное решение, которое решает проблему. Вы создаете группу, которой никогда не разрешается пользоваться Интернетом, и запускаете программу как член этой группы.
Создать группу
no-internet
. Вы не присоединиться к этой группеДобавьте в iptables правило, которое запрещает
no-internet
использование сети всеми процессами, входящими в группу (ip6tables
также для предотвращения трафика IPv6).sudo -g no-internet YOURCOMMAND
вместоYOURCOMMAND
.Вы можете легко написать скрипт-обертку, который использует sudo для вас. Вы можете избавиться от запроса пароля, добавив
или что-то похожее с
sudo visudo
Используйте
iptables-save
иiptables-restore
для сохранения правил брандмауэра.источник
sudo -g no-internet firefox
подключается быстрее, чем по умолчанию. Не работаетВ Ubuntu уже есть брандмауэр,
ufw
но он по умолчанию отключен. Вы можете включить и использовать его с помощью командной строки или ее внешнего интерфейса, gufw , который можно установить непосредственно из Ubuntu Software Center.Если вам нужно заблокировать доступ в Интернет к определенному приложению, вы можете попробовать LeopardFlower , который все еще находится в бета-версии и недоступен в Центре программного обеспечения Ubuntu:
источник
Запуск программы под другим пользователем будет использовать файлы конфигурации для этого пользователя, а не для вас.
Вот решение, которое не требует изменения правил брандмауэра и работает под тем же пользователем (через
sudo
) с измененной средой, где находится ваш пользовательmy_user
и приложение, которое вы хотите запуститьmy_app
:Для более подробной информации смотрите
man unshare
и этот ответ .Linux GUI firewall
Если вы ищете брандмауэр с графическим интерфейсом, у меня были хорошие результаты с OpenSnitch - его пока нет в репозиториях Ubuntu, и я бы не назвал его производственным уровнем, но выполнение шагов сборки на странице github помогло мне.
источник
@psusi: Мне бы очень хотелось, чтобы люди не продавали плохую и не полезную информацию. IPTables позволяет это делать, поэтому я вряд ли считаю это «безрассудным». Просто сказать «НЕТ», не понимая варианта использования, несколько ограниченно. http://www.debian-administration.org/article/120/Application_level_firewalling
РЕДАКТИРОВАТЬ бодхи.зазен
ПРИМЕЧАНИЕ. ЭТОТ ВАРИАНТ УДАЛЕН ИЗ IPTABLES В 2005 ГОДУ, ЗА 8 ЛЕТ ДО ЭТОГО ОТВЕТА
СМ. - http://www.spinics.net/lists/netfilter/msg49716.html
источник
iptables
ограничения для каждого приложения. Я рекомендую включить важную информацию в ваш ответ (и по-прежнему предоставлять ссылку, для справки).Другой вариант - пожарная тюрьма . Он запускает приложение в песочнице, где вы контролируете, может ли приложение видеть сеть:
Эта команда запустит браузер Firefox без доступа в интернет. Обратите внимание, что дистрибутив firejail в репозитории Ubuntu устарел - лучше загрузите его последнюю версию LTS с домашней страницы firejail.
источник
Я нашел решение, размещенное здесь, чтобы быть хорошим. Он включает создание группы пользователей, для которой разрешен доступ в Интернет , и настройку правил брандмауэра, разрешающих доступ только этой группе. Единственный способ для приложения получить доступ к Интернету, если он запущен членом этой группы. Вы можете запускать программы из этой группы, открыв оболочку с помощью
sudo -g internet -s
.Напомним, что в посте, который я связал выше:
Создайте группу «интернет», набрав в командной строке следующее:
sudo groupadd internet
Убедитесь, что пользователь, который запустит приведенный ниже скрипт, будет добавлен в
sudo
группу в/etc/group
. Если вы в конечном итоге измените этот файл, то вам нужно будет выйти и снова войти в систему, прежде чем будет работать приведенный ниже скрипт.Создайте скрипт, содержащий следующее, и запустите его:
Запустив приведенный выше скрипт, вы получите оболочку, в которой вы сможете запускать приложения с доступом в интернет.
Обратите внимание, что этот скрипт ничего не делает для сохранения и восстановления правил брандмауэра. Вы можете изменить скрипт для использования команд
iptables-save
иiptables-restore
команд оболочки.источник
Хорошо это или плохо, но Linux использует другой подход. Нет простого графического интерфейса, чтобы предложить эту функциональность. В Интернете много дискуссий на эту тему, и вы можете найти интересные обсуждения, если воспользуетесь поиском в Google. Хотя дебаты интересны, на сегодняшний день не было специальной группы программистов, желающих написать и поддерживать эту функциональность.
Инструментами, которые предлагают эту функциональность в Linux, являются Apparmor, Selinux и Tomoyo.
Ни один из этих инструментов не слишком прост в освоении, и все они имеют свои преимущества и недостатки. Лично я предпочитаю SELinux, хотя у SELinux более крутая кривая обучения.
Видеть:
http://www.linuxbsdos.com/2011/12/06/3-application-level-firewalls-for-linux-distributions/
Было (есть) приложение, на которое уже ссылались, leopardflower. Я не уверен в статусе / обслуживании.
источник
Это было в iptables до версии ядра 2.6.24. Если вы работаете на машине с 2.x - 2.6.24 и ваше ядро соблюдает ее, вы можете это сделать. по какой-то причине они вынули его, так что нет его не Microsoft. http://cateee.net/lkddb/web-lkddb/IP_NF_MATCH_OWNER.html
источник
Попробуйте цветок леопарда . Он имеет графический интерфейс и ограничения для каждого приложения.
источник
Нет, это невозможно. Это также не является частью традиционного определения брандмауэра. Это то, что Microsoft придумала совсем недавно, пытаясь обойти свои принципиально сломанные проблемы безопасности ОС. В сообществе Linux это считается безрассудным и неработоспособным, потому что одна недопустимая программа может просто запустить другую программу и получить доступ таким образом.
Если вам не нравится, что программа делает в сети при запуске, не запускайте эту программу.
источник