Je╢li twoja prywatna sieæ zawiera jakie╢ wa┐ne informacje, pomy╢l trochê zanim zaczniesz korzystaæ z maskowania. Mo┐e to byæ twoja brama do Internetu, ale tak┐e brama do twojej sieci dla kogo╢ z zewn▒trz.
** Najnowsze informacje znajdziesz na stronie zasobów dla maskowanieu. Trudno jest czêsto uaktualniaæ HOWTO.**
/usr/src/
poleceniem
tar xvzf linux-2.0.x.tar.gz -C /usr/src
, gdzie x jest numerem
│aty (od 0 do najnowszej wersji).linux
).Odpowiedz YES na nastêpuj▒ce pytania:
* Prompt for development and/or incomplete code/drivers
CONFIG_EXPERIMENTAL
- pozwoli ci to na wybór eksperymentalnego kodu maskowania
* Enable loadable module support
CONFIG_MODULES
- pozwoli na │adowanie modu│ów
* Networking support
CONFIG_NET
* Network firewalls
CONFIG_FIREWALL
* TCP/IP networking
CONFIG_INET
* IP: forwarding/gatewaying
CONFIG_IP_FORWARD
* IP: firewalling
CONFIG_IP_FIREWALL
* IP: maskowanie (EXPERIMENTAL)
CONFIG_IP_MASQUERADE
- pomimo, ┐e jest to eksperymentalne jest to *KONIECZNE*
* IP: ipautofw masquerade support (EXPERIMENTAL)
CONFIG_IP_MASQUERADE_IPAUTOFW
- zalecane
* IP: ICMP maskowanie
CONFIG_IP_MASQUERADE_ICMP
- obs│uga maskowania pakietów ICMP, opcjonalne
* IP: always defragment
CONFIG_IP_ALWAYS_DEFRAG
- szczególnie zalecane
* Dummy net driver support
CONFIG_DUMMY
- zalecane
UWAGA: To s▒ opcje tylko do maskowania. W│▒cz to co potrzebujesz dla swojej konfiguracji.
make modules; make modules_install
/etc/rc.d/rc.local
(czy jakiego╢, który uwa┐asz za stosowny),
aby automatycznie podczas ka┐dego startu systemu za│adowaæ modu│y
znajduj▒ce siê w /lib/modules/2.0.x/ipv4/
:
.
.
.
/sbin/depmod -a
/sbin/modprobe ip_masq_ftp
/sbin/modprobe ip_masq_raudio
/sbin/modprobe ip_masq_irc
(i inne modu│y jak ip_masq_cuseeme, ip_masq_vdolive
je╢li za│o┐y│e╢ │aty)
.
.
.
Uwaga: Mo┐esz tak┐e za│adowaæ te modu│y rêcznie przed u┐yciem ip_masq, ale NIE u┐ywaj do tego celu kerneld - to NIE bêdzi dzia│aæ!
Poniewa┐ wszystkie INNE maszyny nie maj▒ przypisanych adresów, musi byæ jaki╢ poprawny sposób, aby nadaæ im takie adresy.
Z IP Masquerade FAQ:
Jest RFC (#1597) informuj▒ce które adresy IP mog▒ byæ u┐ywane w niepo│▒czonych sieciach. S▒ 3 bloki przeznaczone do tego celu. Ten, którego u┐ywam to podsieci klasy C o adresach 192.168.1.n do 192.168.255.n.
Z RFC 1597:
Rozdzia│ 3: Prywatna przestrzeñ adresowa
IANA (Internet Assigned Numbers Authority) zarezerwowa│o nastêpuj▒ce
trzy bloki przestrzeni adresów IP dla prywatnych sieci:
10.0.0.0 - 10.255.255.255
172.16.0.0 - 172.31.255.255
192.168.0.0 - 192.168.255.255
Do pierwszego bêdziemy siê odnosiæ jako "24-bitowy blok", do drugiego
jako "20-bitowy blok" i do trzeciego jako "16-bitowy blok". Zauwa┐, ┐e
pierwszy blok to nic innego jak pojedynczy numer sieci klasy A,
podczas gdy drugi blok to ci▒g│y blok 16. sieci klasy B i trzeci blok
to ci▒g│y blok 255. sieci klasy C.
Tak wiêc, je╢li u┐ywasz sieci klasy C, powiniene╢ nadaæ swoim maszynom adresy 192.168.1.1, 1.92.168.1.2, 1.92.168.1.3, ..., 192.168.1.x.
192.168.1.1 to zwykle gateway, który jest Linux-em │▒cz▒cym ciê z Internetem. Zauwa┐, ┐e 192.168.1.0 i 192.168.1.255, to odpowiednio adresy sieci i broadcast, które s▒ zarezerwowane. Unikaj u┐ycia tych adresów na twoich maszynach.
Oprócz ustawienia na ka┐dej maszynie adresu IP, powiniene╢ tak┐e ustawiæ odpowiedni gateway. Ogólnie, jest to raczej proste. Po prostu wpisujesz adres swojego Linux-a (zwykle 192.168.1.1) jako adres gateway-a.
Jako DNS mo┐esz wpisaæ jakikolwiek dostêpny adres serwera DNS-u. Najlepiej ten sam, którego u┐ywa twój Linux. Mo┐esz tak┐e dodaæ jak▒kolwiek domenê do przeszukiwania.
Po tym jak skonfigurowa│e╢ te adresy IP, nie zapomnij zrestartowaæ odpowiednich serwisów lub systemów.
Nastêpuj▒ce wskazówki konfiguracyjne zak│adaj▒, ┐e u┐ywasz sieci klasy C, twój Linux ma adres 192.168.1.1. Pamiêtaj, ┐e 192.168.1.0 i 192.168.1.255 s▒ zarezerwowane.
/etc/resolv.conf
). Opcjonalnie
mo┐esz dodaæ jak▒╢ domenê do przeszukiwania.ping
-nij Linux-a, aby sprawdziæ po│▒czenie sieciowe:
Start/Uruchom, wpisz ping 192.168.1.1
HOSTS
,
┐ebys móg│ u┐ywaæ nazw hostów (bez domeny) ze swojej sieci. W katalogu
windows znajduje siê przyk│ad o nazwie HOSTS.SAM
.
ping 192.168.1.1
[1]Novell NE2000 Adapter
. Potem ustaw Adres IP
na 192.168.1.x (1 < x < 255), ustaw Maskê podsieci na
255.255.255.0 i Domy╢lny gateway na 192.168.1.1.ping 192.168.1.1
/etc/sysconfig/network-scripts/ifcfg-eth0
w dystrybucji
Red Hat, albo po prostu zrób to w Control Panel-u./etc/resolv.conf
./etc/networks
.ping
: ping 192.168.1.1
, aby
sprawdziæ po│▒czenie do gateway-a.
nwpd 0x60 10 0x300
, je╢li karta jest ustawiona na IRQ=10 i
adres I/O=0x300.pkunzip
tel2308b.zip
.config.tel
.myip=192.168.1.x
(1 < x < 255) i
netmask=255.255.255.0.hardware=packet,
interrupt=10, ioaddr=60
name=default
host=twój.linux
hostip=192.168.1.1
gateway=1
name=dns.domena.pl ; hostip=123.123.123.123; nameserver=1
Uwaga: zamieñ powy┐sze informacje na poprawne dla ciebie.config.tel
telnet 192.168.1.1
ping
-n▒æ Linux-a, aby sprawdziæ
po│▒czenie. Je╢li masz program freeware'owy MacTCP Watcher,
kliknij na przycisk Ping i wpisz adres swojego Linux-a
(192.168.1.1) w okienku, które siê pojawi. (To jest tylko test dla sieci
lokalnej. Nie mo┐esz jeszcze testowaæ po│▒czenia na ╢wiat.)Hosts
w System
Folders, ┐eby u┐ywaæ tylko nazw hostów bez domeny w swojej sieci
lokalnej. Plik powinien siê ju┐ znajdowaæ w System Folders i powinien
zawieraæ kilka (zakomentowanych) przyk│adowych pozycji, które mo┐esz
zmodyfikowaæ na swoje potrzeby.
ping
-n▒æ Linux-a, aby sprawdziæ po│▒czenie sieciowe.
Je╢li masz program freeware'owy MacTCP Watcher,
kliknij na przycisk Ping i wpisz adres swojego Linux-a
(192.168.1.1) w okienku, które siê pojawi. (To jest tylko test dla sieci
lokalnej. Nie mo┐esz jeszcze testowaæ po│▒czenia na ╢wiat.)Hosts
w System
Folders, ┐eby u┐ywaæ tylko nazw hostów bez domeny w swojej sieci
lokalnej. Plik mo┐e, ale nie musi, ju┐ siê znajdowaæ w System Folders.
Je╢li jest, to powinien zawieraæ kilka (zakomentowanych) przyk│adowych
pozycji, które mo┐esz zmodyfikowaæ na swoje potrzeby. Je╢li go nie ma,
mo┐esz pobraæ kopiê z systemu z MacTCP, albo po prostu stworzyæ swój
w│asny (sk│adnia jest taka jak w unix-owym /etc/hosts
.
Opisane to jest na stronie 33. w RFC 1035). Je╢li ju┐ stworzy│e╢ taki
plik, otwórz TCP/IP control panel, kliknij Select Hosts File
... i otwórz plik Hosts
.
c:\nwclient\startnet.bat
. Oto kopia mojego:
SET NWLANGUAGE=ENGLISH LH LSL.COM LH KTC2000.COM LH IPXODI.COM LH tcpip LH VLM.EXE F:
c:\nwclient\net.cfg
(zmieñ Link Driver na
swój):
Link Driver KTC2000 Protocol IPX 0 ETHERNET_802.3 Frame ETHERNET_802.3 Frame Ethernet_II FRAME Ethernet_802.2 NetWare DOS Requester FIRST NETWORK DRIVE = F USE DEFAULTS = OFF VLM = CONN.VLM VLM = IPXNCP.VLM VLM = TRAN.VLM VLM = SECURITY.VLM VLM = NDS.VLM VLM = BIND.VLM VLM = NWP.VLM VLM = FIO.VLM VLM = GENERAL.VLM VLM = REDIR.VLM VLM = PRINT.VLM VLM = NETX.VLM Link Support Buffers 8 1500 MemPool 4096 Protocol TCPIP PATH SCRIPT C:\NET\SCRIPT PATH PROFILE C:\NET\PROFILE PATH LWP_CFG C:\NET\HSTACC PATH TCP_CFG C:\NET\TCP ip_address xxx.xxx.xxx.xxx ip_router xxx.xxx.xxx.xxx
c:\bin\resolv.cfg
.
SEARCH DNS HOSTS SEQUENTIAL NAMESERVER 207.103.0.2 NAMESERVER 207.103.11.9
ping
-n▒æ Linux-a, aby sprawdziæ konfiguracjê sieci.
W oknie OS/2 Command prompt wpisz ping 192.168.1.1
.
Je╢li pakiety ping-a przychodz▒ wszystko jest w porz▒dku.
Powinno siê to robiæ podobnie. Sprawd╝ poprzednie punkty. Je╢li jeste╢ zainteresowany opisaniem konfiguracji w jakimkolwiek systemie, to wy╢lij szczegó│owe instrukcje na adres ambrose@writeme.com.
W tym momencie, powiniene╢ mieæ zainstalowane j▒dro wraz ze wszystkimi potrzebnymi pakietami, jak równie┐ za│adowane modu│y. Tak┐e adresy IP, gateway-a i DNS-u na INNYCH maszynach powinny byæ ustawione.
Teraz jedyne co pozosta│o, to u┐ycie ipfwadm, aby przekazywaæ odpowiednie pakiety odpowiednim maszynom.
** Mo┐na to zrobiæ na wiele róznych sposbów. Poni┐sze sugestie i przyk│ady dzia│a│y u mnie, ale ty mo┐esz mieæ inne pomys│y. Wiêcej szczegó│ów znajdziesz w rozdziale 4.4 i na stronie podrêcznika systemowego o ipfwadm. **
ipfwadm -F -p deny
ipfwadm -F -a m -S yyy.yyy.yyy.yyy/x -D 0.0.0.0/0
gdzie x jest jednym z poni┐szych adresów w zale┐no╢ci od klasy twojej sieci, a yyy.yyy.yyy.yyy jest adresem twojej sieci:
Maska | x | Podsieæ
~~~~~~~~~~~~~~~~|~~~~|~~~~~~~~~~~~~~~
255.0.0.0 | 8 | Klasa A
255.255.0.0 | 16 | Klasa B
255.255.255.0 | 24 | Klasa C
255.255.255.255 | 32 | Point-to-point
Na przyk│ad je╢li jestem w posieci klasy C, wpisa│bym:
ipfwadm -F -p deny
ipfwadm -F -a m -S 192.168.1.0/24 -D 0.0.0.0/0
Poniewa┐ pakiety bootp przychodz▒ z poprawnym IP kiedy klient jeszcze nic na temat adresu IP nie wie, dla tych którzy u┐ywaj▒ serwera bootp w maszynach z maskowaniem czy firewall-ingiem konieczne jest u┐ycie poni┐szego polecenia przed poleceniem z deny:
ipfwadm -I -a accept -S 0/0 68 -D 0/0 67 -W bootp_clients_net_if_name -P udp
Mo┐esz to tak┐e zrobiæ dla ka┐dej maszyny osobno. Na przyk│ad je╢li chcê, ┐eby maszyny 192.168.1.2 i 192.168.1.8 mia│y dostêp do Internetu, a inne nie, to wpisa│bym:
ipfwadm -F -p deny
ipfwadm -F -a m -S 192.168.1.2/32 -D 0.0.0.0/0
ipfwadm -F -a m -S 192.168.1.8/32 -D 0.0.0.0/0
Opcjonalnie mo┐esz wpisaæ maskê podsieci zamiast warto╢ci: 192.168.1.0/255.255.255.0.
Popularnym b│êdem jest umieszczanie jako pierwszego polecenia:
ipfwadm -F -p masquerade
Nie czyñ maskowania domy╢ln▒ zasad▒ - je╢li tak zrobisz, kto╢ kto mo┐e manipulowaæ swoim routingiem, bêdzie w stanie stworzyæ tunel bezpo╢rednio poprzez twój gateway, aby ukryæ swoj▒ to┐samo╢æ!
Mo┐esz dodaæ te linie do plików /etc/rc.local
, do jakiego╢
innego pliku rc.*
, lub robiæ to rêcznie za ka┐dym razem kiedy
potrzebujesz maskowania.
Szczegó│y na temat ipfwadm znajdziesz w rozdziale 4.4.
Nadszed│ czas, ┐eby wypróbowaæ to wszystko po ciê┐kiej pracy. Upewnij siê, ┐e Linux jest pod│▒czony do Internetu.
Mo┐esz spróbowaæ posurfowaæ po INTERNECIE!!! na swoich INNYCH maszynach i sprawdziæ czy siê uda. Za pierwszym razem radzê, u┐yæ adresu IP zamiast nazwy kanonicznej, poniewa┐ twoje ustawienia DNS mog▒ byæ niepoprawne.
Na przyk│ad mo┐esz sprawdziæ stronê projektu JTZ (http://www.jtz.org.pl/) podaj▒c jako adres http://156.17.40.40/.
Je╢li ujrzysz j▒, to gratulacje! Dzia│a! Mo┐esz teraz spróbowaæ podaæ nazwê kanoniczn▒, potem telnet, ftp, Real Audio, True Speech i co tam jeszcze jest obs│ugiwane przez maskowanie ... .
Jak dot▒d nie mam problemów z powy┐szymi ustawieniami i jest to w pe│ni zas│uga ludzi, którzy po╢wiêcaj▒ swój czas, aby ta wspania│a w│a╢ciwo╢æ dzia│a│a.