Chciałbym użyć oprogramowania do kontrolowania, który program może łączyć się z Internetem. Wiem, że takie zachowanie jest związane ze słowem „zapora ogniowa”, ale niektórzy użytkownicy Linuksa są bardzo zdenerwowani, jeśli ktoś żąda zapory osobistej. Nie chcę cię denerwować, żądając takiego programu.
Nie chcę „zabezpieczać portów” ani innych rzeczy, które zapora osobista zapowiada w systemie Windows. Zajrzałem, iptables
ale to nie spełnia moich wymagań.
Widziałem tutaj doskonałą odpowiedź ( „Jak zablokować dostęp do Internetu dla aplikacji do wina” ), ale ustawienie tego jest bardzo niewygodne.
Czy istnieje oprogramowanie, które pyta o każdy program, czy może on uzyskać dostęp do Internetu?
Odpowiedzi:
Na niemieckim forum Ubuntu znajduje się skrypt Perla ( przetłumaczony przez Google na angielski ), który wydaje się to robić. Nigdy go nie wypróbowałem i nie przyjrzałem się bliżej skryptowi, ale może to działa dla ciebie. Opis jest tylko w języku niemieckim, więc możesz potrzebować usługi tłumaczeniowej (takiej jak Tłumacz Google; patrz wyżej).
źródło
Jeśli nadal szukasz tego rodzaju aplikacji, obecnie opracowuję dokładnie tę aplikację: http://douaneapp.com/ https://gitlab.com/douaneapp/Douane
Moja aplikacja blokuje nieznane aplikacje (nowe wersje autoryzowanej aplikacji są blokowane) i pyta, czy zezwalasz na ruch lub go odmawiasz.
Zajrzyj na stronę internetową ;-)
źródło
I znaleźć wygodne rozwiązanie, które rozwiązuje ten problem. Tworzysz grupę, która nigdy nie może korzystać z Internetu i uruchamiasz program jako członek tej grupy.
Utwórz grupę
no-internet
. Czy nie dołączyć do tej grupyDodaj regułę do iptables, która uniemożliwia wszystkim procesom należącym do grupy
no-internet
korzystanie z sieci (użyjip6tables
również, aby zapobiec ruchowi IPv6)sudo -g no-internet YOURCOMMAND
zamiastYOURCOMMAND
.Możesz łatwo napisać skrypt opakowujący, który używa sudo dla Ciebie. Możesz pozbyć się pytania o hasło, dodając
lub coś podobnego z
sudo visudo
Użyj
iptables-save
i,iptables-restore
aby zachować reguły zapory.źródło
sudo -g no-internet firefox
łączy się szybciej niż domyślny. To nie działaW Ubuntu jest już zapora ogniowa
ufw
, ale jest ona domyślnie wyłączona. Możesz włączyć i używać go za pomocą wiersza polecenia lub jego interfejsu GUFW , który można zainstalować bezpośrednio z Centrum oprogramowania Ubuntu.Jeśli chcesz zablokować dostęp do Internetu dla określonej aplikacji, możesz wypróbować LeopardFlower , który jest nadal w wersji beta i nie jest dostępny w Centrum oprogramowania Ubuntu:
źródło
Uruchomienie programu pod innym użytkownikiem spowoduje użycie plików konfiguracyjnych dla tego użytkownika, a nie twojego.
Oto rozwiązanie, które nie wymaga modyfikacji reguł zapory i działa pod tym samym użytkownikiem (przez
sudo
) w zmodyfikowanym środowisku, w którym znajduje się użytkownikmy_user
i aplikacja, którą chcesz uruchomićmy_app
:Aby uzyskać więcej informacji, zobacz
man unshare
i ta odpowiedź .Zapora graficzna systemu Linux
Jeśli szukasz zapory graficznej z interfejsem GUI, miałem dobre wyniki z OpenSnitch - nie ma jeszcze repozytoriów ubuntu i nie nazwałbym tego poziomem produkcyjnym, ale działały dla mnie kroki kompilacji ze strony github .
źródło
@psusi: Naprawdę chciałbym, żeby ludzie nie sprzedawali złych i nieprzydatnych informacji. IPTables pozwala to zrobić, więc nie uważam tego za „nierozsądne”. Samo powiedzenie „NIE” bez zrozumienia przypadku użycia jest nieco zawężone. http://www.debian-administration.org/article/120/Application_level_firewalling
EDYCJA bodhi.zazen
UWAGA - TA OPCJA ZOSTAŁA USUNIĘTA Z IPTABLES W 2005 ROKU, 8 LAT PRZED ZAKOŃCZENIEM ODPOWIEDZI
ZOBACZ - http://www.spinics.net/lists/netfilter/msg49716.html
źródło
iptables
wdrażanie ograniczeń dla poszczególnych aplikacji. Zalecam podanie w odpowiedzi ważnych informacji (i podanie linku w celach informacyjnych).Inną opcją jest firejail . Uruchamia aplikację w piaskownicy, w której kontrolujesz, czy aplikacja może zobaczyć sieć:
To polecenie uruchomi przeglądarkę Firefox bez dostępu do Internetu. Pamiętaj, że dystrybucja firejail w repozytorium Ubuntu jest nieaktualna - lepiej pobierz jej najnowszą wersję LTS ze strony głównej firejail.
źródło
Znalazłem opublikowane tutaj rozwiązanie , które jest dobre. Polega ona na utworzeniu grupy użytkowników, dla których dostęp do Internetu jest dozwolony , oraz skonfigurowaniu reguł zapory sieciowej, aby umożliwić dostęp tylko dla tej grupy. Jedynym sposobem, aby aplikacja uzyskała dostęp do Internetu, jest uruchomienie jej przez członka tej grupy. Możesz uruchamiać programy w tej grupie, otwierając powłokę za pomocą
sudo -g internet -s
.Podsumowując to, co jest w poście, który zamieściłem powyżej:
Utwórz grupę „Internet”, wpisując następujące polecenie w powłoce:
sudo groupadd internet
Upewnij się, że użytkownik, który uruchomi poniższy skrypt, zostanie dodany do
sudo
grupy w/etc/group
. Jeśli skończysz modyfikować ten plik, musisz się wylogować i zalogować ponownie, zanim poniższy skrypt zacznie działać.Utwórz skrypt zawierający następujące elementy i uruchom go:
Po uruchomieniu powyższego skryptu będziesz mieć powłokę, w której możesz uruchamiać aplikacje z dostępem do Internetu.
Pamiętaj, że ten skrypt nie robi nic, aby zapisać i przywrócić reguły zapory. Możesz zmodyfikować skrypt, aby używał poleceń
iptables-save
iiptables-restore
powłoki.źródło
Na lepsze lub gorsze, Linux stosuje inne podejście. Nie ma prostego interfejsu graficznego, który oferowałby tę funkcjonalność. Istnieje wiele dyskusji na ten temat w Internecie i można znaleźć ciekawe dyskusje, jeśli szukasz w wyszukiwarce Google. Chociaż debata jest interesująca, do tej pory nie było dedykowanej grupy programistów, którzy chcieliby pisać i utrzymywać tę funkcjonalność.
Narzędziami oferującymi tę funkcjonalność w systemie Linux są Apparmor, Selinux i Tomoyo.
Żadne z tych narzędzi nie jest zbyt łatwe do nauczenia się i wszystkie mają zalety i wady. Osobiście wolę SELinux, chociaż SELinux ma bardziej stromą krzywą uczenia się.
Widzieć:
http://www.linuxbsdos.com/2011/12/06/3-application-level-firewalls-for-linux-distribution/
Była (jest) aplikacja, do której już się odwołano, leopardflower. Nie jestem pewien statusu / utrzymania.
źródło
Było to w iptables do wersji jądra 2.6.24. Jeśli używasz maszyny w wersji 2.x - 2.6.24, a twoje jądro ma taką zgodność, możesz to zrobić. z jakiegoś powodu wyjęli go, więc nie jest to Microsoft. http://cateee.net/lkddb/web-lkddb/IP_NF_MATCH_OWNER.html
źródło
Wypróbuj Leopard Flower . Ma GUI i ograniczenia dla poszczególnych aplikacji.
źródło
Nie, nie jest to możliwe. Nie jest to również część tradycyjnej definicji zapory. Jest to coś, co Microsoft wymyślił dość niedawno, próbując obejść swoje zasadniczo zepsute problemy bezpieczeństwa systemu operacyjnego. W społeczności Linuksa jest to uważane za nierozsądne i niewykonalne, ponieważ jeden niedozwolony program może po prostu uruchomić inny program i uzyskać w ten sposób dostęp.
Jeśli nie podoba ci się to, co program robi w sieci po uruchomieniu, nie uruchamiaj tego programu.
źródło