Blokowanie stron internetowych za pomocą / etc / hosts


17

Jest strona internetowa, www.example.com, do której próbowałam się zablokować, ponieważ marnuje zbyt dużo czasu. Więc skonfigurowałem mój /etc/hostsplik. Dodałem następujące wiersze, aby zablokować witrynę zarówno na IPv4, jak i IPv6:

127.0.0.1 www.example.com
::1 www.example.com
127.0.0.1 http://www.example.com
::1 http://www.example.com
127.0.0.1 example.com
::1 example.com

Uruchomiłem ponownie komputer i nie mogę wget www.example.com, a pingowanie www.example.comdziała zgodnie z oczekiwaniami, ale witryna nie jest w rzeczywistości zablokowana w mojej przeglądarce! Nadal mogę uzyskać do niego dostęp w Firefox 28 i Chromium.

pytania

  • Co się dzieje?
  • Jak zablokować tę witrynę za pomocą narzędzi systemowych zamiast rozszerzeń przeglądarki?

Czy w przeglądarce wpisałeś http://www.example.com(które powinny być zablokowane), czy też http://example.com(które nie jest zablokowane)?
John1024

@ John1024 Zmieniłem moje pytanie, aby odpowiedzieć na twoje. W przeglądarce example.comi http://example.comsą zablokowane, ale www.example.comi http://www.example.comnie są zablokowane.
Newb

1
@Newb: Jakiej dystrybucji Linux używasz?
cuonglm

Spójrz na hostsblock : automatyzuje to za Ciebie i działa doskonale ...
jasonwryan

Skonfigurowałem blokowanie na poziomie DNS na moim domowym serwerze DNS. Dla osób o mniejszych umiejętnościach technicznych pi-hole jest interesującym projektem. pi-hole.net
Rui F Ribeiro

Odpowiedzi:


10

Zamiast tego użyj tego bloku za pomocą /etc/hostsSugeruję użycie dodatku / wtyczki do przeglądarki, takiej jak ta o nazwie: BlockSite dla Firefox lub StayFocusd dla Chrome.

BlockSite

  ss # 1

StayFocusd

                    ss # 2

Ale naprawdę chcę użyć pliku / etc / hosts

Jeśli musisz to zrobić w ten sposób, możesz zamiast tego spróbować dodać takie wpisy:

0.0.0.0   www.example.com
0.0.0.0   example.com
::0       www.example.com
::0       example.com

Nigdy nie należy dodawać wpisów do tego pliku innych niż nazwy hostów. Więc nie umieszczaj tam żadnych wpisów zawierających prefiksy, takie jak http://itp.


10
OP wyraźnie prosi o rozwiązania, które nie wymagają wtyczek / rozszerzeń przeglądarki ...
jasonwryan

1
@jasonwryan - dzięki, przegapiłem ostatnie zdanie w Q.
slm

2
Ostatnia część twojej odpowiedzi była poprawna - mój błąd polegał na tym, że napisałem http://www.example.comzamiast www.example.com. Teraz strona jest zablokowana.
Newb

Jest to przydatne, a zarówno chrome, jak i firefox mają rozszerzenie o nazwie block siteoba świetne.
Eric Wang

Niestety potrzebowałem wtyczki, która zignorowałaby wszystkie linki do innych stron niż bieżąca i została aktywowana do stron wybranych przeze mnie.
Rui F Ribeiro

4

Musisz opróżnić pamięć podręczną DNS. Zgodnie z tym artykułem możesz to zrobić, ponownie uruchamiając następujące usługi:

  • nscd
  • dnsmasq
  • named

Artykuł pochodzi z 2008 roku i wydaje się być nieaktualny. Moja instalacja linuksowa mięty nie ma nscd ani rndc.
Ben Crowell

oznacza to, że nie masz włączonego buforowania DNS. więc nie masz do czynienia z podobnym problemem, jaki ma op. jeśli Twoim problemem jest buforowanie DNS, może to wynikać z dowolnego innego komputera w sieci, który buforuje serwery nazw i zapytania, zamiast rzeczywistego dynamicznego serwera nazw.
totten
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.