Budowa Onion Router opartego o FreeBSD z IPFW jako filter paketow i zalazkiem IPFilter jaki drugie ,,sitko".
Budowe zaczynamy od wyboru sprzetu. Ja do tego celu uzylem ThinClient Fujitsu S450 z allegro, i karte sieciowa na USB od Majfrendow, jednak planuje ja wymienic na jakas Intela. Rowie dobry moze okazac sie ktorys z ThinClientow od HP. S450 wyglada tak:
2. Sciagamy i wypalami FreeBSD na Pendrive lub dysku CD. Ja wypalalem go pod Mintem uzywajac nazedzia ,,disks" i restore image ze wzgledu na to ze wypalenie przez DD nie dziala do konca tak jak powinno, ale jesli ktos by chcial to prosze:
https://www.freebsd.org/doc/ha...
Pod windowsem uzywamy Rufusa. https://rufus.akeo.ie/ najlepiej portable.
No wiec przechodzimy do oficjalnej strony https://www.freebsd.org/where.... i klikamy AMD64 lub i386 jak kto woli.
Nastepnie pobieramy interesujaca nas wersje jest jest to jedna z zaznaczonych, jak chcemy memstick to pobieramy memstick img, a jak CD to pobieramy disk.iso
I czekamy az sie pobierze. Po skonczonym pobieraniu, wypalamy obraz na pendrive uzywajac pod windowsem rufusa, pod linuxem ,,disks" lub jak ktos sie chce meczyc to DD tak jak pisalem wyzej i przechodzimy do instalacji systemu po kolei:
Klikamy enter
Install i zatwierdzamy enterem.
Klikamy enter.
Wpisujemy nazwe i klikamy enter, w moim przypadku bedzie to ,,router"
Dznaczamy ,,PORT" klawiszem SPACJA po najechaniu na nia. Z portow nie bedziemy korzystac to raz a dwa zajmuja za duzo miejsca i sie nie zmieszcza.
Partycjonowanie. Nie bede sie rozpisywac bo mi sie nie chce. W necie sa poradniki mozna poczytac.
Klikamy Manual
Klikamy ,,create" Jak instalujemy z pendrive bedzie tutaj tez widoczny nalezy miec to na uwadze.
Wybieramy GUID partition Table.
Enter
Najezdzamy strzalkami jeszcze raz na CREATE i wciskamy ENTER
Nie ma miejsca na rozdrabnianie sie w partycje. Na ThinCliencie mamy do dspozycji 1GB wiec tworzymy partycje w calosci.
najezdzamy klikajac w TAB (Tabulator) az kursor pojawi se na freebsd-ufs,
a nastepnie strzalkami w dol na ,, Mountpoint" i wpisujemy /
Potem jeszcze raz "TAB" i zatwierdzamy enterem.
Wywala komunikat zeby zrobic boot partycje z tego co pamietam w MBR, zeby Legancy ogarnal.
Finish i enter.
Commit
Czekamy az sie zainstaluje.
Podajemy haslo root.
Wybieramy karte sieciowa ktora bedzie podlaczona do internetu, do Routera.
Uwaga Klikamy ,,NIE" ustwimy to potem w plikach konfiguracyjnych.
Nje
Ustawamy czas. Wybieramy europa i zatwierdzamy enterem.
Polska.
YES.
SKIP bedzie ustawiony potem z zegara atomowego ^^.
SKIP
Odznaczamy wszystko, bedzie ustawione potem.
Tutaj wszystko zaznaczamy.
Nie dodajemy innych uzytkownikow.
Exit i zatwierdzamy.
NO i zatwierdzamy.
REBOOT
Czekamy az sie wylaczy i wyciagamy medium instalacyjne.
Jak sie juz uruchomi logujemy sie na konto roota. LOGIN: root PASSWORD:haslo
Widzimy konsole. System jest gotowy do uzytku.
Sciagamy moja paczke z plikami konfiguracyjnymi z MEGA:
https://mega.nz/#!QxURXCIT!Jsj...
Nastepnie prawdzamy jakie mamy karty sieciowe. W tym przykladzie em0 to WAN (internet) a LAN to em1.
Sprawdzamy to poleceniem `# ifconfig.`
Skoro juz wiemy ktora to nasza karta od WAN a ktora od LAN to przepisujemy! (rc.conf koniecznie) z paczki ktora pobralismy do routera.
Edytor tekstu ktorym bedziemy sie poslugiwac to ee, podobny do nano z linuxa, ale prostrzy od vi, ktory tez jest dostepny. No wiec wpisujemy w konsole:
# ee /etc/rc.conf
i kasujemy wszystko co tam jest napisane, uzywajac kombinacji klawiszy CTRL+C. nastepnie przepisujemy konfig z paczki zamieniajac ,,re0" na waszego WANa a ue0 na waszego LANa. Dla mnie to jest oczywiste... nastepnie wychodzimy z edytora klawiszem esc zatwierdzamy zmiany dwa razy ENTEREM.
/etc/rc.conf na pastebin. https://pastebin.com/w5JGRZnk
Wsunalem wszystkie logowania wylaczylem sendmaila ssh dodalem serwer czasu i inne takie.
Taka sama czynnosc wykonujemy dla pozostalych plikow z folderu ,,etc" z paczki PAMIETAJAC o podmianie "re0" na swoj wan i "ue0" na swoj LAN.
/etc/ipfw.rules https://pastebin.com/35dLRQQC UWAGA. Tutaj jest maly ,,blad" jest usawiony moj adres DHCP ktory dostalem od swojego routera. Zamiast 192.168.1.40 wpiscie sobie any jak na obrazku. IPFW broni routera z dwoch stron. Puszczone jest tylko to co niezbedne czyli DHCP DNS HTTP HTTPS.
Teraz LAN. Lan ustawiony jest za pomoca PacketFilter. Przepisujemy go i zamieniamy interfacy na swoje tak jak poprzednio.
/etc/pf.conf https://pastebin.com/80F3DWei
Zeby TOR wystartowal (skonfigurujemy go pozniej) trzeba dopisac w /etc/devfs.conf uprawnienia dla Packetfilter. Wiec edytujemy ee /etc/devfs.conf i dopisujemy:
`own /dev/pf root:_tor`
`perm /dev/pf 0660`
/etc/devfs.conf https://pastebin.com/QfC5TRvZ
Teraz IPFilter. Nie wiem czym dokladnie jest bcast ale lepiej to zablokowac. W dodatku jest to zalazek drugiego sitka, po wiecej szczegolow zapraszam do manuali:
https://www.freebsd.org/doc/ha...
lub w konsoli #man ipf, #man ipf.conf
/etc/ipf.rules https://pastebin.com/McYQWiVr
Dopisujemy do crontab: Sa to skrypty ktore odpowiadaja za przeladowanie sie tora ze wzgledu na to, ze z niedwiadomych dla mnie przyczyn jak wszystko na raz startuje TOR jest przymulony. Pomaga dopiero przeladowanie. Drugi skrypt odpowiada za Update TORa bo jak sie pojawi nowa wersja stara moze przestac dzialac.
`@reboot root /bin/sh /root/tor.sh`
`@hourly root /bin/sh /root/tor.sh`
`@reboot root /bin/sh /root/torupdate.sh`
`@weekly root /bin/sh /root/torupdate.sh`
/etc/crontab https://pastebin.com/qcZz0kb2
Skoro sa odnosniki do skryptow ktore jeszcze nie istnieja wiec trzeba je zrobic. W tym celu w konsoli:
`#ee /root/tor.sh`
i wpisujemy:
`#!/bin/bash`
`sleep 10`
`service tor restart`
Wychodzimy z edytora i dalej.
`#ee /root/torupdate.sh`
i wpisujemy:
`!#/bin/bash`
`sleep 20`
`pkg update -q`
`pkg upgrade -y tor`
`pkg clean -a -y`
`pkg autoremove -y`
Nastepnie nadajemy uprawnienia do wykonywania pliku.
`#chmod +x /root/tor.sh`
`#chmod +x /root/torupdate.sh`
Teraz mozemy bezpiecznie podlaczyc komupter do internetu w tym celu z konsoli:
`#poweroff`
jak sie wylaczy to podlaczamy kabelek jesli wszystko zostalo zrobione, przepisane poprawnie i adres routera z ktorego mamy internet to jeden z tych adresow:
`192.168.0.0/16` to powinnismy miec dostep do internetu, zegar powinien sie zsynchronizowac. Jak mamy dostep do internetu instalujemy TOR i DNSMASQ, bo jest lekki.
No wiec logujemy sie na konsole roota i kolejno instalujemy PKG
#pkg
wpisujemy ,,y" i zatwierdzamy enterem.
Nastepnie uaktualniamy repozytorium pakietow do najnowszych.
#pkg update -f
jak sie zrobi to szukamy paczki z TORem w tym celu wpisujemy w konsole
`#pkg seach tor` i zatwierdzamy enterem.
Po chwili powinna nam sie wyswietlic lista paczek do zainstalowania. Jezeli jest zbyt dluga niz ekran to mozemy ja przewinac w gore uzywajac klawisza ,,pasue brake" na klawiaturze a nastepnie strzalka w gore. Odnajdujemy TORa
I go instalujemy, najpierw zwalniajac ,,pasue-brake"
`#pkg install tor-0.3.3.7`
Jezeli wkepalibysmy odrazu pkg install tor zainstalowalo by wszystko co ma ,,tor" w nazwie. Nie chcemy tego.
y i zatwierdzamy enterem.
Analogiczna czynnosc powtarzamy dla dnsmasq.
`#pkg search dnsmasq`
`#pkg install dnsmasq-xxxxx`
Na koncu edytujemy dwa pliki. Jeden to dnsmasq.conf ktory przydzieli nam adres dla komputerow ktore chcemy schowac za LANem. A drugi to config tor.
No wiec w pierwsze kolejnosci konfigurujemy dnsmasq.conf. Plik konfiguracyjny znajduje sie w /usr/local/etc/dnsmasq.conf wiec go usuwamy.
`#rm -R /usr/local/etc/dnsmasq.conf`
Nastepnie tworzymy go na nowo i wpisujemy co nastepuje
`domain-needed`
`server=208.67.222.222`
`server=208.67.220.220`
`dhcp-range=set:ue0,10.1.1.10,10.1.1.200,255.255.255.0,24h`
`dhcp-option=ue0,option:router,10.1.1.1`
`#ee /usr/loca/etc/dnsmasq.conf` https://pastebin.com/VrTx6Wda
Na samym koncu pozostal na do edycji plik konfiguracyjny tora. Wiec analogicznie usuwamy domyslny konfig tworzymy go na nowo i dodajemy wpisy:
`SOCKSPort 127.0.0.1:10001`
`TransPort 9050`
`DNSPort 9053`
Plik konfiguracyjny znajduje sie w /usr/local/etc/tor/torrc
`#rm -R /usr/local/etc/tor/torrc`
`#ee /usr/local/etc/tor/torrc`
To juz wszystko. Teraz wystarczy zresetowac komputer i jezeli nic nie sprartoliliscie to powinien powstac Onion Router. A oto wyniki z NMAP:
https://www.wykop.pl/wpis/3358...
Na koniec mieszamy w przegladarce. Ja korzystam z FireFoxa wiec dla niego zrobilem configi. https://pastebin.com/C0VM0uRK
zapisujemy kopiujemy to co tam jest i zapisujemy jak prefs.js nastepnie przechodzimy do: /home/User22/.mozilla/firefox/o7hbslcg.default/ i kopijemy prefs.js i podmieniamy istniejacy. Nastepnie istalujemy dwa dodatki. Canvas Blocker oraz Ublock origin. Kazdy znajdzie. https://www.wykop.pl/wpis/3228...
Zapraszam i polecam.
Komentarze (88)
najlepsze
1. weź tani think-client i zainstaluj openbsd, ale ja wolał bym jakiegoś alpine, z linuksem czuje się pewniej
2. zainstaluj i skonfiguruj router tak jak to się zwykło robić, skonfiguruj firewall
3. zainstaluj tor i skonfiguruj go
4. router gotowy, można używać
A to do poczytania dla Ciebie:
klik
Są znane ataki na sieć TOR i używając TOR nie jesteś całkowicie anonimowy, to Ci powie każdy administrator sieci, który widzi znacznie więcej niż byś mógł przypuszczać;) Zainteresuj się też zeronet, taki projekt łączący tor i blockchain, też ciekawa sprawa. Osobiście nie mam powodów do używania sieci tor, traktowałem to zawsze bardziej jako ciekawostkę, zaś zeronet zaciekawiło mnie sposobem generowania linków i ogólnie tym jak działa. Powiedzmy, że zeronet w
Tory są potrzebne do poruszania się pociągów, bez torów pociąg nie pojedzie. Tory są również dla tramwajów, tramwaje też jeżdżą po torach, jak widzisz mnogość zastosowań sprawia, że tory są w naszym kraju popularnym rozwiązaniem:)
OP był w dupie i gówno widział.
Komentarz usunięty przez moderatora
Komentarz usunięty przez moderatora
Tanie domowe routery są krótko wspieranie. Poważna dziura często równa się wymianie sprzętu, jeżeli kogoś to oczywiście rusza.
Komentarz usunięty przez moderatora
Druga to CARP i pfsync - keepalived i conntrackd w porównaniu to jakiś ponury żart.
Komentarz usunięty przez moderatora
Komentarz usunięty przez moderatora
Poza tym, TOR jest często zbyt powolny... i paradoksalnie zbyt zwraca na siebie uwagę... lepiej iść w dobrego (czyt. niezależnego operatora) VPNa - płatnego (większość darmowych, ma siedziby w... Hong-Kongu ;) ) i sam tenże VPN wystarczy
Komentarz usunięty przez moderatora
Komentarz usunięty przez moderatora
https://makezine.com/projects/browse-anonymously-with-a-diy-raspberry-pi-vpntor-router/
Komentarz usunięty przez moderatora
domain-needed
server=208.67.222.222
server=208.67.220.220
dhcp-range=set:em0,10.1.1.10,10.1.1.200,255.255.255.0,24h
dhcp-option=em0,option:router,10.1.1.1
/usr/local/etc/tor/torrc
SOCKSPort 127.0.0.1:10001
UseEntryGuards 1
GuardLifetime 1 days
security.bsd.see_other_uids=0
security.bsd.see_other_gids=0
security.bsd.unprivileged_read_msgbuf=0
security.bsd.unprivileged_proc_debug=0
kern.randompid=1
security.bsd.stack_guard_page=1
net.inet.tcp.blackhole=2
net.inet.udp.blackhole=1
net.inet.ip.random_id=1
#net.inet.tcp.log_in_vain=1
#net.inet.udp.log_in_vain=1
kern.ipc.maxsockbuf=131072
net.inet.tcp.recvspace=8192
net.inet.ip.ttl=128
net.inet.ip.rfc6864=0
ext_if="ue0"
int_if="re0"
#set skip on lo
#nat on $ext_if inet from ! ($ext_if) to any -> ($ext_if)
rdr pass on $int_if proto tcp from any to any port 80 -> 127.0.0.1 port 9150
rdr pass on $int_if proto tcp from any to any port 443 -> 127.0.0.1 port 9150
rdr pass on $int_if proto tcp from any to any port 53 -> 127.0.0.1 port 9053
rdr pass on $int_if proto udp
ipfw -q -f flush
#IPv6
ipfw -q add 100 deny ipv6 from any to any
ipfw -q add 101 deny all from any to any frag
#lo0
ipfw -q add 102 deny all from any to any via lo0
#ntpdate
ipfw -q add 103 allow udp from me to any dst-port 123 out keep-state
#ue0 WAN
ipfw -q add deny all from me to any in via ue0
ipfw -q add
hostname="router"
#kern_securelevel_enable="YES"
#kern_securelevel="3"
powerd_enable="YES"
powerd_flags="MAX"
ifconfig_re0="DHCP"
#ifconfig_re0="inet 192.168.1.40 netmask 255.255.255.0"
ifconfig_ue0="inet 10.1.1.1 netmask 255.255.255.0"
#wlans_urtwn0="wlan0"
#ifconfig_wlan0="inet 10.1.2.1 netmask 255.255.255.0"
#create_args_wlan0="wlanmode hostap"
#hostap_enable="YES"
dnsmasq_enable="YES"
gateway_enable="YES"
#defaultrouter="192.168.1.1"
ipfilter_enable="YES"
ipfilter_rules="/etc/ipf.rules"
pf_enable="YES"
pf_rules="/etc/pf.conf"
tor_enable="YES"
firewall_enable="YES"
firewall_script="/etc/ipfw.rules"
firewall_rules="/etc/ipfw.rules"
firewall_logging="YES"
sshd_enable="NO"
syslogd_enable="YES"
syslogd_flags="-ss"
sendmail_enable="NONE"
sendmail_msp_queue_enable="NO"
sendmail_outbound_enable="NO"
sendmail_submin_enable="NO"
ntpdate_enable="YES"
ntpdate_hosts="ntp.task.gda.pl"
icmp_drop_redirect="YES"
icmp_log_redirect="NO"
nfs_server_enable="NO"
nfs_client_enable="NO"
#inetd_enable="NO"
entropy_boot_file="NO"
fsck_y_enable="YES"
fsck_y_flags="-y"
tcp_extension="NO"
tcp_keepalive="NO"
tcp_drop_synfin="YES"
entropy_file="NO"
entropy_dir="NO"
dmesg_enable="NO"
#newsyslog_enable="NO"
Kolejny link odnośnie detekcji ruchu tor w sieci:
klik
klik2
Ten drugi przykład pokazuje, że firewall można wyczulić na próbę łączenia się z siecią tor i odpowiednio oznaczać taki ruch.
Dlatego jutro bardzo ambitnie: pomidorowa;)
#pytanie
Jeżeli ma jakis radiatorek to także wymień pastę termo przewodzącą i powinno pomóc.
Komentarz usunięty przez moderatora
Komentarz usunięty przez moderatora
Od trzech lat stoi na Dell OptiPlex 780 i nie mam z nim żadnych problemów, a wszystko ładnie blokuje :)
Komentarz usunięty przez moderatora
Komentarz usunięty przez moderatora
Komentarz usunięty przez moderatora