LINUX.ORG.RU

Почему не все программы запускаются через firejail? Возможна ли встроенная защита проприетарных приложений от firejail?

 , ,


0

2

Вот есть один софт для линукса, лидер отрасли, стоит $1800 за годовую лицензию фактически, ни много не мало, это вам не 300 баксов, в общем я пока что не готов платить такие деньги, но обязательно куплю софт, как только заработаю с помощью этого софта на него деньги. Так стараюсь поступать со всем.

Значит пока пытаюсь запускать его с самим легким окружением и настройкой firejail, всего лишь обрезав ему сеть:

~$ firejail --net=none ./бинарь_софта

Но софт не запускается, т.к. очевидно пытается прослушивать наличие интерфейсов или как-то так:

cat: '/sys/class/net/eth?/address': No such file or directory
↑ это в выхлопе запуска через firejail.

Но если запускать (без firejail) просто с отключенной сетью и погашенными сетевыми интерфейсами (но с их наличием), софт запускается нормально.

Как быть в таком случае?

И еще, известны ли случаи, быть может вы сталкивались на собственном опыте со встроенной защитой у свободного/закрытого софта от запуска через огненную тюрьму?



Последнее исправление: slon (всего исправлений: 3)

ну запусти его через докер, или подобную ересь.

snaf ★★★★★
()

Как по мне, так имеет место быть какая-нибудь «привязочка к hardware».

kawaii_neko ★★★★
()

Не будем комментировать моральную сторону вопроса. Если рассматривать задачу как сугубо техническую, то напрашивается решение в виде полноценного контейнера А для проверки можно сделать sudo unshare -n sudo -u %%username%% %%appname%% и посмотреть, на что софт будет ругаться. Если ему для работы нужно проверять лицензию с помощью MAC-адреса и стука на 127.0.0.1, то с unshare -n не вжлетит.

LittleKawaiiNeko ★★
()
Ответ на: комментарий от LittleKawaiiNeko

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

Если ему для работы нужно проверять лицензию с помощью MAC-адреса и стука на 127.0.0.1, то с unshare -n не вжлетит.

Ему не нужно ничего проверять, лицензия при выходе в сеть не слетает и программа продолжает полноценно работать, но контора получает все твои данные (ip, mac, железо, прочее) и очень серьезно распердоливает тебя потом по судам, в том числе международным.

Там уже $1800 не отделаешься.

slon
() автор топика
Ответ на: комментарий от slon

Контора - это The Faggotry? Их поделия руками особо не трогал, но по описанию - их лучше в контейнер или виртуалку. Они как-то затейливо стучали - типа процесс приложения в сеть не лезет, а вот процесс сервера активации (?) стучит.

LittleKawaiiNeko ★★
()
Ответ на: комментарий от LittleKawaiiNeko

The Faggotry

Да, примерно так. Хотя я лично ничего против конторы не имею и считаю их софт лучшим в отрасли.

slon
() автор топика
Ответ на: комментарий от slon

Я считаю их отношение к приватности пользователя оскорбительным. Вдобавок - они в числе немногих упоротых, у которых в 2014-м есть поддержка CUDA и нет поддержки OpenCL.

LittleKawaiiNeko ★★
()
Ответ на: комментарий от LittleKawaiiNeko

Вдобавок - они в числе немногих упоротых, у которых в 2014-м есть поддержка CUDA и нет поддержки OpenCL.

Шутишь, поддержка OpenCL на онтопике есть только у Cycles Blender'а и кривом Luxmark'е.

slon
() автор топика
Ответ на: комментарий от slon

Если говорить конкретно про рендер-движки - Indigo Renderer вроде умеет. А ещё композер Mamba FX, плагины от Re:Vision (которые, насколько я знаю, OpenCL only и на Нвидии через него работают), Neat Video (вроде бы). По слухам, такая суровая вещь как Mistika тоже использует OpenCL, но, по причине, бардака с драйверами у AMD, работает только с Нвидией. Проще сказать, кто не поддерживает: Ньюк, Сапфир и Рэдшифт. В Октан вроде завезли, но совсем недавно.

LittleKawaiiNeko ★★
()
Ответ на: комментарий от LittleKawaiiNeko

Indigo Renderer вроде умеет.

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

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

sudo unshare -n sudo -u nonet bash -c 'app'

Не нужен ни iptables, ничего. Только в ~/.xinitrc обычного пользователя прописал xhost + для разрешения на подключение к X-серверу/сессии.

slon
() автор топика
Ответ на: комментарий от thesis

ip netns

а есть какая-то существенная разница между ip netns и unshare? Здесь тоже нужен отдельный пользователь и прокидка его в пользовательскую X сессию через xhost + ?

slon
() автор топика
Ответ на: комментарий от slon

Насчет unshare ничего не знаю.

Здесь тоже нужен отдельный пользователь и прокидка его в пользовательскую X сессию через xhost + ?

Здесь нужен рут, увы.

thesis ★★★★★
()
Ответ на: комментарий от LittleKawaiiNeko

Ахах, так через unshare можно давать себя же самого, а не другого пользователя, всё работает.

slon
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.