Az alapértelmezett átjáró freebsd módosítása. FreeBSD Router beállítása
Bevezetés == Röviden szeretném felvázolni azt a tervet, amit érdemes követni, hogy az interneten az irodai kurzus megfelelő legyen, és senki ne kószáljon félre. Azonnal megjegyzem, hogy a Unix átjárója nem egy program, hanem egy tucat program, amelyek mindegyike saját műveletet hajt végre, és saját beállításai vannak. Használjuk: * FreeBSD 7 * natd * elnevezett, irányított * ipfw * squid * squidGuard * apache * dhcpd Saját teszt szerver már bent van helyi hálózat szóval ezt elhiszem külső hálózat Nekem 192.168.0.0/24 van, a belsőé pedig 172.16.0.0/16. A számok végül is nem számítanak - a lényeg a jelentés. A FreeBSD-t minimális konfigurációban telepítettem, és az rc.conf fájlom csak a következőket tartalmazza: hostname = "vm = freepro.local" ifconfig_em0 = "DHCP" linux_enable = "YES" sshd_enable = "IGEN"== A NAT konfigurálása == A külső interfészem - em0 - alapértelmezés szerint DHCP-n keresztül kapja az IP-címét egy 192.168.1.1-es címmel rendelkező normál útválasztótól. Nyilvánvaló, hogy ugyanaz az útválasztó működik DNS-kiszolgálóként. Első lépésben NAT-ot csinálok (mindig a külső felületen!), és módosítom az /etc/rc.conf fájlt a következőképpen: hostname = "vm = freepro.local" defaultrouter = "192.168.1.1" ifconfig_em0 = "inet 192.168.1.10 hálózati maszk 255.255.255.0" linux_enable = "YES" sshd_enable = "YES" sshd_enable = "YES" .0.0 "gateway_enable =" YES "natd_enable =" YES "natd_interface =" em0 "#natd_flags =" - f /etc/redirect.conf "firewall_enable =" YES "firewall_type =" "#firewall_script =" / etc / firewall megnyitása. conf "router_enable =" IGEN "router =" / sbin / routed "router_flags =" - q " Javítottam a külső címet és beállítottam a belsőt. Most javítsuk ki a DNS-t az /etc/resolv.conf fájlban: nameserver 192.168.1.1 Ez az! Elkezdjük a szolgáltatást: # /etc/rc.d/ipfw start # /etc/rc.d/natd start # /etc/rc.d/routed start # /etc/rc.d/named startÉs az internet működik! Természetesen kézzel írjuk fel az ügyfélnek: IP: 172.16.0.2 MASZK: 255.255.0.0 GATE: 172.16.0.1 DNS1: 192.168.1.1 Természetesen ez egy nagyon rossz átjáró. Egyrészt egyáltalán nincs védve, másodszor pedig egyáltalán nincs gyorsítótárban, harmadszor pedig minden DNS-kérést "felfelé" irányít át, és nincs mód semmilyen statisztikára vagy bármi kezelésére. De másrészt ez egy nagyon könnyű és gyors átjáró, és további beállításoktól a teljesítménye csak nő, nem csökken. Egyébként vegye figyelembe, hogy két sor már ki van írva az új rc.conf-ban. Az első megjegyzés - segít a jövőben "továbbítani" néhány portot kívülről - a hálózaton belül. Azok. Például, ha ssh-n keresztül szeretnék elérni a 172.16.0.2-es ügyfélszámítógépet, akkor létre kell hoznom egy ilyen fájlt: # FÁJL /etc/redirect.conf redirect_port tcp 172.16.0.2:22 2222 Ez azt jelenti, hogy amikor a 2222-es porton kívül csatlakozom a szerverhez, akkor csak a 22-es porton (ssh) jutok el a géphez a helyi hálózaton. A második megjegyzés a személyes tűzfalkonfigurációm, kiélezett és tesztelt. == Az ipfw beállítása == Saját konfigurációm az ipfw-hez at ezt a szakaszt ez így néz ki: #! / bin / sh # IPFW konfiguráció egy egyszerű NAT-kiszolgálóhoz /etc/firewall.conf cmd = "/ sbin / ipfw -q" IfOut = "em0" IpOut = "192.168.1.10" NetOut = "192.168.1.0/24 "IfIn =" em1 "IpIn =" 172.16.0.1 "NetIn =" 172.16.0.0/16 "########################### # #################### # Clear ########################## # ###################### $ (cmd) -f flush $ (cmd) table 0 flush $ (cmd) asztal 1 flush ##### # ################################################# # # Whitelist / Blacklist # ############################################ #### $ (cmd) táblázat 0 hozzáadás 172.16.0.12 $ (cmd) 1. táblázat hozzáadás 172.16.0.13 ########################### #### #################### # Loopback ######################### #### #################### $ (cmd) add engedélyezi az ip-t bármelyikről bármelyikre a lo0-n keresztül ############# #### ################################ # Világ letiltása privátra ######### ### ###################################### $ (cmd) add deny ip from tetszőleges 127.0 .0.0 / 8 $ (cmd) deny ip hozzáadása 127.0.0.0/8-tól bármely # $-hoz (cmd) deny ip hozzáadása 172.16.0.0/16-tól tetszőlegeshez $ (IfOut) # $ (cmd) add d eny ip 192.168.1.0/24-től tetszőlegeshez $ (IfOut) $ (cmd) deny ip hozzáadása tetszőlegestől 10.0.0.0/8-hoz $ (IfOut) keresztül # $ (cmd) deny ip hozzáadása bármelyikhez 172.16.0.0/ 12 $ (IfOut) # $ (cmd) deny ip hozzáadása tetszőlegesről 192.168.0.0/16-hoz $ (IfOut) $ (cmd) deny ip hozzáadása tetszőlegestől 0.0.0.0/8-hoz $ (IfOut) $ (cmd) segítségével ) add meg a deny ip-t bármelyikhez a 169.254.0.0/16-hoz $ (IfOut) $-on (cmd) add deny ip-t bármelyikhez a 192.0.2.0/24-hez $ (IfOut) keresztül $ (cmd) add deny ip-t bármelyikhez 224.0.0.0-hoz / 4 $ (IfOut) $-on keresztül (cmd) add meg a deny ip-t bármelyiktől 240.0.0.0/4-hez $ (IfOut) keresztül ####################### ################################### # ICMP ############# ######### ############################## $ (cmd) add meg a deny icmp parancsot bármelyiktől bármelyikhez frag $ (cmd) add meg a deny log icmp-t bármelyikről 255.255.255.255 bemenetre $ (IfOut) $ (cmd) függvényen keresztül ########### ############################### # NAT ###### ########### ################################# $ (cmd) átirányítás hozzáadása 8668 ip $-ról (NetIn) bármely $-on keresztül (IfOut) $ (cmd) add átirányítás 8668 ip-t bármelyikről $-ra (IpOut) $-on keresztül (IfOut) # $ (cmd) add átirányítás 8668 ip-t bármelyikről bármelyikre $ (IfOut) keresztül ######################## ########################## # Privát letiltása a világ számára ################### # ############################# $ (cmd) add meg a deny ip-t 10.0.0.0/8-tól bármely $ ( IfOut ) # $ (cmd) deny ip hozzáadása 172.16.0.0/12-től bármely $-on keresztül (IfOut) # $ (cmd) deny ip hozzáadása 192.168.0.0/16-tól bármely $-on keresztül (IfOut) $ (cmd) deny hozzáadása ip 0.0.0.0/8-tól tetszőleges $ (IfOut) $-on keresztül (cmd) deny ip hozzáadása 169.254.0.0/16-tól tetszőleges $ (IfOut) $-hoz (cmd) deny ip hozzáadása 192-től. 0.2.0 / 24 bármely $ (IfOut) $-on keresztül (cmd) deny ip hozzáadása 224.0.0.0/4-től bármely $ (IfOut) $-hoz (cmd) deny ip hozzáadása 240.0.0.0/4-től bármely $ ( IfOut) ############################################ # Whitelist ############################################ ### # $ (cmd) add engedélyezi az összeset "táblázat (0)"-tól tetszőleges $ (cmd) hozzáadás engedélyezi mindet bármelytől "tábla (0)"-ig ############### ### ############################### # Feketelista ############ #### ################################# $ (cmd) add hozzá az összes megtagadása a "táblázat (1 )"-ből bármely ########################################### #### # Tartsa állandóan ######################################### # $ (cmd) add engedélyezi a tcp-t bármelyiktől nekem létrehozott ############################## ####### ############# # Fő ############################ ####### ############## $ (cmd) add engedélyezése ip tetszőleges fraghoz $ (cmd) add icmp engedélyezése tetszőlegestől $ (IpOut) icmptypes 0, 8.11 # dns $ (cmd) ) add engedélyezni a tcp-t tetszőlegesből $-ba (IpOut) dst-port 53 beállítás $ (cmd) add engedélyezni udp-t tetszőlegesből $-ba (IpOut) dst-port 53 $ (cmd) add udp engedélyezése $-tól (IpOut) 53 tetszőleges $-hoz (cmd) add udp engedélyezése $-tól (IpOut) tetszőleges dst-porthoz 53 Keep-state # dns-kliens $ (cmd) add tcp engedélyezése bármelyiktől $-hoz (NetIn) dst-port 53 beállítás $ (cmd) add engedélyezése udp tetszőlegesről $-ra (NetIn) dst-port 53 $ (cmd) add udp engedélyezése $-ról (NetIn) 53 bármely $-ra (cmd) add udp engedélyezése $-ról (NetIn) bármely dst-porthoz 53 Keep-state # time $ (cmd) add engedélyezi udp-t $-tól (IpOut) bármely dst-porthoz 123 Keep-state # time-kliens $ (cmd) add engedélyezi udp-t $-tól (NetIn ) tetszőleges dst-porthoz 123 keep-state # ssh-in $ (cmd) add engedélyezi a tcp-t tetszőlegesből $-ba (IpOut) 22 $ (cmd) add engedélyezni a tcp-t $-ból (IpOut) 22 tetszőleges # ssh-out $ ( cmd) add hozzá a tcp engedélyezését $-tól (IpOut) tetszőleges 22 $-hoz (cmd) add engedélyezd a tcp-t tetszőleges 22-től $-ig (IpOut) # http $ (cmd) add hozzá a tcp engedélyezését $-tól (IpOut) bármely dst-porthoz 80 # http -kliens $ (cmd) add tcp engedélyezése $-tól (NetIn) bármely dst-porthoz 80 $ (cmd) add tcp engedélyezése tetszőleges 80-tól $-ig (NetIn) # smtp $ (cmd) add tcp engedélyezése bármelyiktől $-hoz (IpOut ) dst-port 25 setup # előre 8080-ról 81 $-ra (cmd) add engedélyezi a tcp-t bármelyikről $-ra (IpOut ) dst-port 8080 $ (cmd) add tcp engedélyezése $-tól (IpOut) 8080 bármely $-hoz (cmd) add tcp engedélyezése bármelyiktől $-hoz (NetIn) dst-port 81 $ (cmd) add tcp engedélyezése $-tól (NetIn) 81 tetszőleges # out $ (cmd) add deny log tcp bármely bemenethez $ (IfOut) beállításon keresztül # $ (cmd) add engedélyezi tcp bármelyikből bármely beállításhoz ############## ##################################### # Helyi hálózat ########## ####################################### $ (cmd) add engedélyezi az összeset bármelyiktől a bármelyik $ (IfIn) keresztül ########################################## # ##### # Összes elutasítása ######################################### ####### $ (cmd) add meg a deny all-t bármelyiktől a tetszőlegesig Kifejezetten kommentáltam néhány sort, amelyek a 192-es, 172-es helyi hálózatok csomagjait a külső interfészre szegezik, mivel az én külső interfészem a helyi. A valóságban ezekre a sorokra van szükség. Menjünk tovább. == A squid beállítása == Most szükségem van a squid-re - egy gyorsítótárazó proxyszerverre, amely képes kompetensen elosztani az internetet minden felhasználó számára a rendszergazda által meghatározott szabályok szerint. pkg_add -r squid Megjegyzés: természetesen helyesebb szoftvert készíteni friss és frissített portokból, de időt takarítunk meg, ezért csomagokban telepítjük. Valamikor később frissítjük a portupgrade segítségével. A tintahal esetében a legegyszerűbb beállítást végezzük: szerkesszük a /usr/local/etc/squid/squid.conf fájlt # Minimum SQUID config acl all src 0.0.0.0/0.0.0.0 acl manager proto cache_object acl localhost src 127.0.0.1/255.255.255.255 acl to_localhost dst 127.0.0/0.0.0.0.5 port acl CONNECT metódus CONNECT http_access engedélyezése kezelő localhost http_access engedélyezése localnet http_access letiltása menedzser http_access megtagadása Biztonságos portok http_access megtagadása CONNECT SSL_portok http_access megtagadása minden icp_access engedélyezi az összes http_port 3128 transzparens hierarchiát. acl QUERY urlpath_regex cgi-bin \? cache deny QUERY cache_dir ufs / usr / local / squid / cache 100 16 256 access_log /usr/local/squid/logs/access.log squid cache_log /usr/local/squid/logs/cache.log cache_quiusrd_log /s /logs/store.log refresh_pattern ^ ftp: 1440 20% 10080 refresh_pattern ^ gopher: 1440 0% 1440 frissítési_minta. 0 20% 4320 acl apache rep_header Szerver ^ Az Apache törött_változatos kódolása engedélyezi az apache gyorsítótárat_effektív_felhasználó squid cache_effective_group squid látható_gépnév vm-freepro.local icp_port 0 error_directory / usr / local error /quiirdsd /_squi local / etc /mpsrd Szándékosan távolítottam el a megjegyzéseket a konfigurációs fájlból, mert nem sok van, de nagyon sok. Ne felejtse el kijavítani az /etc/rc.conf fájlt a következő sor hozzáadásával: squid_enable = "YES" Ezután újraépítjük a gyorsítótárat, és elindítjuk a squid-et: # squid -z # /usr/local/etc/rc.d/squid start Az első, amit utána csinálunk tintahal telepítések- megtiltjuk a helyi felhasználóknak, hogy a 80-as porton keresztül hozzáférjenek az internethez. A 80-as portot átvisszük 3128-ra - i.e. minden felhasználót csak a squid-en keresztül használunk. Van itt egy nagy kis fogás. Ezt csak úgy lehet megtenni, ha bevezetjük az IPFW támogatást a kernelbe, különben a továbbítás nem fog működni. Igen, ez azt jelenti, hogy most meg kell építenünk a saját kernelt! Nem egyszerű feladat, de hasznos - a mag összeszerelése után a működési sebessége növekedjen, a hangerő pedig érezhetően csökkenjen. Először a sysinstall segítségével telepítse a kernelforrásokat: # sysinstall Ugrás a / Konfigurálás / Elosztásokhoz Jelölje be a szakaszon belül src [X] base [X] sys A kernelforrások most a / usr / src mappában vannak. Ezután másolja a GENERIC konfigurációt a "mi" MYKERNEL-ünkbe, és szerkessze a MYKERNEL-t: # cd / usr / src / sys / i386 / conf # cp GENERIC MYKERNEL # mcedit MYKERNEL A konfiguráció szerkesztésekor feltétlenül adja meg a következő beállításokat: # A tűzfal engedélyezése a kernelopciókban IPFIREWALL # A "naplózás" mechanizmus opcióinak engedélyezése IPFIREWALL_VERBOSE # Naplók korlátozása - túlcsordulás elleni védelem opciók IPFIREWALL_VERBOSE_LIMIT = 50 # Csomagtovábbítási mechanizmus engedélyezése IPFIREWALL_FORWARD # Fordítási mechanizmus engedélyezése NAT címek opciók IPDIVERT # Csatornasebesség-korlátozási opciók engedélyezése DUMMYNETÉs távolítsa el az összes felesleges "hardvert", amely valójában nem rendelkezik. Most a kernelt építjük. Ez a művelet eltarthat egy kis ideig, és meghiúsulhat egy hiba miatt, amely miatt további forrásokat kell telepítenie a sysinstallból attól függően, hogy mit írt a konfigurációban. Reméljük, nincs ott semmi felesleges. # cd / usr / src # make buildkernel KERNCONF = MYKERNEL # make installkernel KERNCONF = MYKERNEL Most újra kell indítania, de az újraindítás előtt feltétlenül olvassa el a kézikönyvet arra az esetre, ha az újraindítás nem sikerülne. Természetesen szeretném, ha ez nem történne meg. Tehát töltse be újra, és szerkessze újra az /etc/firewall.conf fájlt. #! / bin / sh # IPFW konfiguráció a NAT-kiszolgálóhoz és a SQUID-proxyhoz cmd = "/ sbin / ipfw -q" IfOut = "em0" IpOut = "192.168.1.10" NetOut = "192.168.1.0/24" IfIn = "em1" " IpIn = "172.16.0.1" NetIn = "172.16.0.0/16" ################################## ################# # Clear ############################ ### ################### $ (cmd) -f flush $ (cmd) asztal 0 flush $ (cmd) asztal 1 flush ######## ## ###################################### # Whitelist / Blacklist #### ### ################################################# # $ (cmd) táblázat 0 hozzáadás 172.16.0.2 $ (cmd) tábla 1 hozzáadás 172.16.0.13 ############################# ### ################ # Loopback ############################# ## ################### $ (cmd) add meg az engedélyezési ip-t bármelyiktől bármelyikhez a lo0-n keresztül ################# ### ############################### # A világ letiltása priváttá ############ #### ################################### $ (cmd) add meg a tagadó ip-t bármelyikről ide 127. 0. 0 19 2.168.1.0/24 bármelyikhez $ (IfOut) $ (cmd) deny ip hozzáadása tetszőlegestől 10.0.0.0/8 értékhez $ (IfOut) keresztül # $ (cmd) deny ip hozzáadása bármelyikhez 172.16.0.0/12 $ segítségével (IfOut) # $ (cmd) deny ip hozzáadása tetszőlegestől 192.168.0.0/16-hoz $ (IfOut) keresztül $ (cmd) deny ip hozzáadása tetszőlegeshez 0.0.0.0/8-hoz $ (IfOut) keresztül $ (cmd) deny hozzáadása ip tetszőlegesről 169.254.0.0/16-ra $ (IfOut) $ (cmd) deny ip hozzáadása tetszőlegesről 192.0.2.0/24 értékre $ (IfOut) $ (cmd) deny ip hozzáadása bármelyikről 224.0.0.0/4 $ (IfOut) $ (cmd) add meg a deny ip-t bármelyiktől 240.0.0.0/4-hez a $ (IfOut) keresztül ########################## ####################### # ICMP ######################### ######################### $ (cmd) add deny icmp bármely fraghez $ (cmd) add deny log icmp hozzárendelés tetszőlegeshez 255.255 .255.255 be a $ (IfOut) $-on keresztül (cmd) add meg a deny log icmp-t bármelyiktől a 255.255.255.255 kimenőhöz $ (IfOut) keresztül ####################### ################################################# ########## ############################# $ (cmd) add átirányítás 8668 ip from $ (NetIn) tetszőlegesbe $-on keresztül (IfOut) $ (cmd) add átirányítás 8668 ip-t bármelyikről $-ba (IpOut) keresztül $ ( IfOut) # $ (cmd) hozzáadja a 8668 ip átirányítását bármelyikről bármelyikre $ (IfOut) keresztül ############################## ##################### # Privát letiltása a világ számára ######################### # ######################## $ (cmd) add meg a deny ip-t 10.0.0.0/8-tól bármelyikhez $ (IfOut) # $ (cmd) ) add meg a deny ip-t a 172.16.0.0/12-től bármelyikhez $ (IfOut) # $ (cmd) add deny ip 192.168.0.0/16-tól bármely $ (IfOut) $ (cmd) deny ip-hez add hozzá a 0.0.0.0/ 8 bármely $ (IfOut) $-on keresztül (cmd) add deny ip-t 169.254.0.0/16-tól bármely $ (IfOut) $-on (cmd) add deny ip-t 192-től. 0.2.0 / 24 bármely $ (IfOut) $-on keresztül (cmd) deny ip hozzáadása 224.0.0.0/4-től bármely $ (IfOut) $-hoz (cmd) deny ip hozzáadása 240.0.0.0/4-től bármely $ ( IfOut) ############################################ # Whitelist ############################################ ### # $ (cmd) add engedélyezi az összeset "táblázat (0)"-tól tetszőleges $ (cmd) hozzáadás engedélyezi mindet bármelytől "tábla (0)"-ig ############### ### ############################### # Feketelista ############ #### ################################# $ (cmd) add hozzá az összes megtagadása a "táblázat (1 )"-ből bármely ########################################### #### # Tartsa állandóan ######################################### # $ (cmd) add engedélyezi a tcp-t bármelyiktől nekem létrehozott ############################## ####### ############# # Fő ############################ ####### ############## $ (cmd) add engedélyezése ip tetszőleges fraghoz $ (cmd) add icmp engedélyezése tetszőlegestől $ (IpOut) icmptypes 0, 8.11 # dns $ (cmd) ) add engedélyezni a tcp-t tetszőlegesből $-ba (IpOut) dst-port 53 beállítás $ (cmd) add engedélyezni udp-t tetszőlegesből $-ba (IpOut) dst-port 53 $ (cmd) add udp engedélyezése $-tól (IpOut) 53 tetszőleges $-hoz (cmd) add udp engedélyezése $-tól (IpOut) tetszőleges dst-porthoz 53 Keep-state # dns-kliens $ (cmd) add tcp engedélyezése bármelyiktől $-hoz (NetIn) dst-port 53 beállítás $ (cmd) add engedélyezése udp tetszőlegesről $-ra (NetIn) dst-port 53 $ (cmd) add udp engedélyezése $-ról (NetIn) 53 bármely $-ra (cmd) add udp engedélyezése $-ról (NetIn) bármely dst-porthoz 53 Keep-state # time $ (cmd) add engedélyezi udp-t $-tól (IpOut) bármely dst-porthoz 123 Keep-state # time-kliens $ (cmd) add engedélyezi udp-t $-tól (NetIn ) tetszőleges dst-porthoz 123 keep-state # ssh-in $ (cmd) add engedélyezi a tcp-t tetszőlegesből $-ba (IpOut) 22 $ (cmd) add engedélyezni a tcp-t $-ból (IpOut) 22 tetszőleges # ssh-out $ ( cmd) add hozzá a tcp engedélyezését $-tól (IpOut) tetszőleges 22 $-hoz (cmd) add engedélyezd a tcp-t tetszőleges 22-től $-ig (IpOut) # http $ (cmd) add hozzá a tcp engedélyezését $-tól (IpOut) bármely dst-porthoz 80 # http -kliens # $ (cmd) add engedélyezi a tcp-t $-ról (NetIn) bármely dst-porthoz 80 # $ (cmd) add engedélyezi a tcp-t tetszőleges 80-tól $-ig (NetIn) # squid $ (cmd) add hozzá az összes engedélyezése $-tól (NetIn) ) a $ (IpIn) 3128-hoz $ (IfIn) $-on (cmd) keresztül adja hozzá az fwd $-t (IpIn), a 3128 tcp-t $-tól (NetIn) bármely 80-hoz # smtp $ (cmd) add engedélyezése tcp bármelyről $ (IpOut) dst-port 25 beállítás # out $ (cmd) naplózás tiltása tcp hozzáadása bármelyikről tetszőlegesbe be $ (IfOut) beállításon keresztül # $ (cmd) add engedélyezése tcp bármely beállításból bármilyen beállításra #### # Helyi hálózat ######################################## ## ###### $ (cmd) add engedélyezi az összeset bármelyiktől a tetszőlegesig a $-on keresztül (IfIn) ############################# ##################### # Összes elutasítása ####################### ### ########################$ $ (cmd) add meg a megtagadást mindentől bármelyikhezÚjraindítjuk a szolgáltatásokat és ellenőrizzük - minden működik, az ügyfelek pedig észrevétlenül mennek át az ellenőrző rendszeren. Egyelőre elhalasztjuk a hozzáférés-vezérlés beállítását, és megoldunk egy másik fontos problémát: a DNS beszerzését. == DNS beállítása == Mostantól ügyfeleink 192.168.1.1 regisztrált DNS-címmel rendelkeznek - a belső hálózaton kívül: 172.16.0.0/16. Elmondhatjuk, hogy a kliensek naponta több ezer alkalommal másznak fel a szerver fölé címeket keresve. Tegyük jobbá a rendszert – egy gyorsítótárazó DNS-kiszolgálót állítunk fel, amely lehetővé teszi, hogy elkerüljük a végpontok közötti kapcsolatokat a külső felé, megspóroljuk a forgalmat és felgyorsítjuk a munkánkat. Ne felejtse el előtte megtagadni az 53-as porton kívüli hozzáférést minden ügyfél számára. Az /etc/namedb/named.conf fájlban szerkessze a figyelés, továbbító paramétereket: opciók ("/ etc / namedb" könyvtár; pid-file "/ var / run / named / pid"; dump-file "/var/dump/named_dump.db"; statisztikai fájl "/var/stats/named.stats "; behallgatás (127.0.0.1; 172.16.0.1;); disable-empty-zone" 255.255.255.255.IN-ADDR.ARPA "; disable-empty-zone" 0.0.0.0.0.0.0.0.0.0.0 .0 .0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.IP6.ARPA "; letiltás üres zóna" 1.0.0.0.0.0.0.0.0.0.0.0.0.0. 0.0.0.0.0. 0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.IP6.ARPA "; továbbítók (192.168.1.1;); // lekérdezési forrás címe * 53-as port;); Az /etc/resolv.conf fájlban először állítsa be a helyi DNS-t: névszerver 127.0.0.1 névszerver 192.168.1.1 Az /etc/firewall.conf fájlban tiltsa meg az ügyfelek számára a külső DNS használatát (a szakaszok szerkesztése a dns-client megjegyzéssel) # dns-kliens # Külső DNS letiltása # $ (cmd) add engedélyezi a tcp-t tetszőlegesről $-ba (NetIn) dst-port 53 beállítás # $ (cmd) add engedélyezi udp-t bármelyikről $ (NetIn) dst-port 53 # $ ( cmd) add udp engedélyezése $-tól (NetIn) 53 tetszőleges # $-hoz (cmd) add udp engedélyezése $-tól (NetIn) bármely dst-porthoz 53 Keep-state # Csak helyi DNS engedélyezése $ (cmd) add tcp engedélyezése $ ( NetIn) a $ (IpIn) dst-porthoz 53 beállítás $ (cmd) add engedélyezi az udp-t $-tól (NetIn) a $-hoz (IpIn) dst-port 53Újrakezd: # /etc/rc.d/named újraindítás # /etc/rc.d/ipfw újraindítás Most térjünk vissza az internet-hozzáférés szabályozásának kérdéséhez. Egyszerre két megoldás létezik. Először állítsa be az ACL-házirendeket a squid-ben. Másodszor, telepítse és konfigurálja a squidGuard-ot, egy dedikált hozzáférés-vezérlő alkalmazást. Kezdjük sorban. == A squid acl beállítása == Az acl a squid konfiguráció szabályai, amelyek meglehetősen hatékonyan korlátozzák információáramlás keresztül megy egy proxy szerveren. Röviden: az acl-lel pillanatok alatt megölhet minden baloldaliságot, amely zavarja a munkát. Alapértelmezés szerint minden acl-beállítás a squid.conf fájlba van írva, de áthelyezhető ide is külső fájlok... Példaként adok egy részt a konfigurációból: # Megtiltjuk az összes fájlrabló acl megosztást dstdomain .rapidshare.com .webfile.ru http_access deny shares # Mindenkinek megtiltjuk, hogy IP-címen kérjen webhelyeket acl ip_urls url_regex http: // + \. + \. + \. + [: /] Http_access deny ip_urls # Csoportkorlátozások src group_strict (ip 172.16.0.20-172.16.0.25) src group_allow (ip 172.16.0.26-172.16.0.30) acl (group any_pass)_ local Remekül kiderül. De nyilvánvaló, hogy egy jó proxyban sok ilyen szabálynak kell lennie - egy szabály minden "lyukhoz". A "lyukak" kiderítése és egyenkénti felírása fárasztó, de mint mindig, most is van egy kész megoldás - a squidGuard - egy hatalmas szabályrendszerrel rendelkező szűrőalkalmazás, amely elvileg akár a szerint is pótolható. a cron menetrendje. Tanulmányozzuk a kérdést. == A squidGuard beállítása == Most próbáljuk meg a squidGuard telepítését és konfigurálását. Ezt nem nehéz megtenni, de óvatosnak kell lenni. Így: # pkg_add -r squidGuard # cp /usr/local/etc/squid/squidGuard.conf.sample /usr/local/etc/squid/squidGuard.conf A squidGuard.conf fájl tartalmazza az összes beállítást, amelyek közül néhányat azonnal ki kell javítani, nevezetesen: # SquidGuard.conf fájl ... forrásminta-kliensek (ip 172.16.0.0/16) ... Kössük össze a squidGuard-ot a squid-hez – adjunk hozzá 3 sort a squid.conf fájlhoz: redirector_bypass on redirect_program / usr / local / bin / squidGuard -c /usr/local/etc/squid/squidGuard.conf redirect_children 10 A squidGuard a konfigurációs adatbázisát a / var / db / squidGuard könyvtárban tárolja. Az első indítás előtt vagy változtatások után újra kell építeni: # rehash # squidGuard -C all # chown -R squid: squid / var / db / squidGuard # /usr/local/etc/rc.d/squid restart Minden rendben van, de amikor egy ügyfél megpróbál belépni egy tiltott oldalra, például a http://3warez.com/ oldalra, fékeket látunk. És szeretnék valami érthető üzenetet kapni. Ehhez apache-ra van szükségünk. == Az apache beállítása == Mint már említettük, az apache-re van szükségünk ahhoz, hogy információkat jelenítsen meg a blokkolt címekről és a blokkolás okairól. A szokásos módon csináljuk: # pkg_add -r apache22 # echo "apache22_enable =" YES "" >> /etc/rc.conf Az Apache beállításai a /usr/local/etc/apache22/httpd.conf fájlban találhatók. Mielőtt elkezdené, ellenőriznie kell a DocumentRoot és a ServerName direktívákat - a részleteket kihagyom, mivel az interneten sok cikk található a szerver beállításáról. 1 másodperc alatt elkészült. Dob: # echo "Hozzáférés megtagadva"> /usr/local/www/apache22/data/index.html # /usr/local/etc/rc.d/apache22 start Javítsuk ki egy kicsit a squidGuard.conf konfigurációt: # Az acl fájl legvégén (..... alapértelmezett (átirányítás http://172.16.0.1/index.html))== A dhcpd beállítása == És most már közeledünk a befejezéshez. A hálózat be van állítva és csodálatosan működik. Minden ellenőrzés alatt áll, minden szigorúan korlátozott. De az ostor után itt az ideje, hogy egy répát is kínáljunk a vásárlóknak – automatikus DHCP-címek kiosztása formájában. A jó adminisztrátor persze itt is csal - csak MAC-on keresztül osztja ki a címeket, de mi csak teszünk rá mazsolát. # pkg_add -r isc-dhcp3-server # cp /usr/local/etc/dhcpd.conf.sample /usr/local/etc/dhcpd.conf Adja hozzá a sorokat az /etc/rc.conf fájlhoz: dhcpd_enable = "IGEN" dhcpd_flags = "- q" dhcpd_ifaces = "em1" Javítania kell a /usr/local/etc/dhcpd.conf legfontosabb konfigurációt is: opció domain-name "example.com"; opció tartománynév-szerverek 172.16.0.1; opció alhálózati maszk 255.255.255.0; alapértelmezett bérleti idő 3600; max. bérleti idő 86400; ddns-update-style nincs; alhálózat 172.16.0.0 hálózati maszk 255.255.0.0 (tartomány 192.16.0.11 172.16.0.15; opciós útválasztók 172.16.0.1;) Bekapcsoljuk az áramot: # /usr/local/etc/rc.d/isc-dhcpd start Talán ez minden, a legfontosabb. Ez a cikk nem állítja, hogy teljes és értelmes, de röviden leírja azokat a lépéseket, amelyeket a kiszolgáló működőképes állapotba hozásához meg kell tenni. Tovább - csak hangolás és újra hangolás. Ne felejtse el azt sem, hogy ez nem az egyetlen módja a szerver beállításának – unixban mindig van alternatíva, és teljesen más alkalmazásokat is használhat.
ALEXEY BEREZHNOY
Internet átjáró beállítása FreeBSD alapú
A FreeBSD használata kis útválasztókon a külvilággal való kommunikációra már régen nem számít kiemelkedőnek. Ez a könnyen használható, alacsony erőforrás- és karbantartásigényű operációs rendszer szinte ideális az ilyen feladatokhoz.
Szükségünk van
- Hardver... A belső hálózat internetre hozásához elég egy Pentium III 600 MHz-es számítógép, 256 MB RAM, 10 GB HDD, 2 hálózati kártya. A konfigurációt csekély mértékben veszik, egy kis iroda teljes értékű hálózatához (körülbelül 50 felhasználó) a Pentium II 400 MHz 128 MB RAM-mal elég lenne. De a jövőben érdemes lehet ugyanarra az átjáróra telepíteni, például egy proxyszervert, jobb, ha magasabb szintű konfigurációt választunk.
- Operációs rendszer: FreeBSD 5.5 vagy 6.1.
- Továbbá: mert ez a számítógép folyamatos használat mellett javaslom, hogy a tokban szállítsa további ventilátorok a hűtőlevegő kényszerfúvatása/szellőztetése érdekében. Szinte minden modern ATX ház lehetővé teszi ezt.
Mivel az összes szükséges modult tartalmazza a operációs rendszer, nincs szükségünk másra.
Hálózati interfészek konfigurálása
Tisztázni kell a hálózati kártyák interfészeinek neveit, amelyek alapján az operációs rendszer felismeri azokat.
# ifconfig
Valami ilyesminek kellene megjelennie:
rl0: zászlók = 8843 mtu 1500 Opciók = 8 Ether 00: xx: xx: xx: xx: xx Állapot: aktív xl0: zászlók = 8843 mtu 1500 Opciók = 9 Éter 00: zz: zz: zz: zz: zz Média: Ethernet automatikus kiválasztás (100baseTX) Állapot: aktív plip0: zászlók = 108810 mtu 1500 lo0: zászlók = 8049 mtu 16384 Inet6 :: 1 előtag 128 |
A számítógép két hálózati kártyával rendelkezik, amelyek interfész neve rl0 és xl0.
Esetünkben az rl0 interfész "benéz". külső világés xl0 - a belső hálózatra. IP-cím belső interfész: 192.168.9.2, alhálózati maszk 255.255.255.0, interfész neve xl0; A külső interfész IP-címe 83.xxx.xxx.xxx, az alhálózati maszk 255.255.255.224, az interfész neve pedig rl0.
A / usr / src / sys / i386 / conf könyvtárban található GENERIC fájlból megtudhatja, hogy mely gyártók melyik hálózati kártyái felelnek meg bizonyos hálózati címeknek:
# more / usr / src / sys / i386 / conf / GENERIC
Ebben megtaláljuk a megfelelő sorokat:
eszköz rl # RealTek 8129/8139 eszköz xl # 3Com 3c90x (`` Boomerang "", "Cyclone" ") |
Így az rl0 interfész megfelel a RealTek 8129/8139 hálózati kártyának és analógjainak. Az xl0 hálózati interfész megegyezik a 3Com hálózati kártyával.
Külön érdemes megemlíteni a GENERIC fájlt. Ez a rendszermag konfigurációs fájlja alapértelmezés szerint telepítve van a FreeBSD telepítésekor. Úgy van megszervezve, hogy a rendszer támogassa a legtöbb leggyakrabban használt eszközt, beleértve a megadott hálózati kártyákat is. Nagyon gyakran további kernelmódosítások épülnek a fájl módosított másolatára. Ebben az esetben a következőket tesszük:
- Szolgáltató átjárója – alapértelmezés szerint 83.xxx.xxx.1.
- A hálózat felhasználói számítógépeket tartalmaz - 192.168.9.31, 192.168.9.32.
- Domainünk (feltételesen) a midomain.ru.
- A gazdagép (számítógép) neve ourhost.ourdomain.ru.
Hálózati kártyákat konfigurálunk. Használhatja a sysinstall segédprogramot (FreeBSD 5.5 esetén / stand / sysinstall és FreeBSD 6.1 esetén / usr / sbin / sysinstall) De mivel ismerjük az összes szükséges paramétert, a folyamat egyszerűsítése és az időmegtakarítás érdekében a paramétereket a megfelelő konfigurációs fájlokat.
A FreeBSD hálózati interfész beállításai az /etc/rc.conf fájlban vannak tárolva. Megnyitjuk szerkesztésre:
# vi /etc/rc.conf
És hozzá következő sorokat:
# Állítsa be a belső interfészt
ifconfig_xl0 = "inet 192.168.9.2 hálózati maszk 255.255.255.0"
# Állítsa be a külső interfészt
ifconfig_rl0 = "inet 83.xxx.xxx.xxx hálózati maszk 255.255.255.224"
# Állítsa be a szolgáltató alapértelmezett átjáróját
defaultrouter = "83.xxx.xxx.1"
# Gazdanév
hostname = "ourhost.ourdomain.ru"
# Jelezzük, hogy a szerver routerként fog működni
gateway_enable = "IGEN"
Ezután újraindítjuk a számítógépet:
# újraindítás
V Ebben a pillanatban a számítógépet nem kellett újraindítani. De szeretnénk megbizonyosodni arról, hogy az interfészeink megfelelően vannak telepítve és működnek, ezért javaslom az újraindítást.
Betöltés után ellenőrizzük:
# ifconfig
Az ifconfig parancs kimenete:
rl0: zászlók = 8843 mtu 1500 Opciók = 8 Inet6 fe80 :: 215: 58ff: fe3e: 8fb1% rl0 prefixlen 64 hatókör 0x1 Inet 83.xxx.xxx.xxx hálózati maszk 0xffffffe0 broadcast 83.xxx.xxx.yyy Ether 00: xx: xx: xx: xx: xx Média: Ethernet automatikus kiválasztás (100baseTX) Állapot: aktív xl0: zászlók = 8843 mtu 1500 Opciók = 9 Inet6 fe80 :: 20a: 5eff: fe62: ade2% xl0 prefixlen 64 hatókör 0x2 Inet 192.168.9.2 hálózati maszk 0xffffff00 adás 192.168.9.255 Éter 00: zz: zz: zz: zz: zz Média: Ethernet automatikus kiválasztás (100baseTX) Állapot: aktív plip0: zászlók = 108810 mtu 1500 lo0: zászlók = 8049 mtu 16384 Inet6 :: 1 előtag 128 Inet6 fe80 :: 1% lo0 prefixlen 64 hatókör 0x4 Inet 127.0.0.1 hálózati maszk 0xff000000 |
Az rc.conf fájl véleményem szerint kulcskonfigurációs fájlnak nevezhető. A rendszer által használt nagyon sok paraméter megfelelő változók formájában van beállítva ebben a fájlban. Beleértve az általunk használt hálózati interfészek, tűzfal és NAT beállításait.
Az átjáró konfigurálása
A natív FreeBSD IPFW tűzfalat fogjuk használni. Ehhez néhány változtatást kell végrehajtanunk a rendszer magjában. Ha van További kérdések A kernel újrafordításával kapcsolatban azt tanácsolom, hogy olvassa el a további anyagokat: http://freebsd.org.ru/how-to/kernelconfig.html.
Vegye figyelembe, hogy a megfelelő architektúrához a kernelforrásokat kell használnia. Mivel számítógépünk architektúrája az i386 platformra épül, ezért a kernelt is a platformnak megfelelően kell lefordítani. Más platformon lévő számítógépek tulajdonosai számára javaslom a vonatkozó szakirodalom áttekintését.
A kernelforrások alapértelmezés szerint az / usr / src / sys / i386 / conf könyvtárban találhatók. Ennek megfelelően ebbe a könyvtárba megyünk:
# cd / usr / src / sys / i386 / conf
Általában az alapértelmezett kernelbeállításokat tartalmazó GENERIC fájl módosul. Ehhez készítsen másolatot erről a fájlról:
# cp GENERIC kernelünk
Nyissa meg szerkesztésre új fájl kernelünk:
# vi kernelünk
és adja hozzá a következő lehetőségeket:
Opciók IPFIREWALL #tűzfal
Opciók IPFIREWALL_VERBOSE?
#enable naplózás a syslogd-ba (8)
Opciók IPFIREWALL_FORWARD?
#átlátszó proxy támogatás engedélyezése
Opciók IPFIREWALL_VERBOSE_LIMIT = 100 #limit verbosity
Opciók IPFIREWALL_DEFAULT_TO_ACCEPT #alapértelmezés szerint mindent engedélyez
Opciók DUMMYNET
Opciók IPDIVERT #divert sockets
A változtatások elvégzése után megkezdheti a kernel újrafordítását.
A következő parancsokat hajtjuk végre:
# a kernelünk konfigurálása
# cd / usr / src / sys / i386 / fordítás / kernelünk
# függővé tenni
# gyártmány
# telepítse
Túlterhelés:
# újraindítás
Ha az újraindítás után a szerver jól működik, kezdjük el a tűzfal beállítását.
A tűzfal munkájának megszervezéséhez a következő változókat használjuk, amelyeket szükség esetén hozzáadunk az rc.conf fájlhoz.
Engedélyezi vagy megtagadja a tűzfal használatát:
# Állítsa IGEN értékre a tűzfal funkció engedélyezéséhez
firewall_enable = "NEM"
A tűzfal inicializálásáért felelős fájl neve és helye.
# Melyik szkriptet kell futtatni a tűzfal beállításához
firewall_script = "/ etc / rc.firewall"
Telepítéskor ennek a szabálynak"IGEN" esetén a kijelző el van nyomva:
firewall_quiet = "NEM"
Események naplózásának engedélyezése / letiltása:
firewall_logging = "NEM"
Tűzfal konfigurációs típusa:
firewall_type = "ISMERETLEN"
alapértelmezés szerint a FreeBSD az /etc/rc.firewall fájl szabályait használja.
Számos kész sablon van benne:
- nyisd ki- a tűzfal lehetővé teszi az összes csomag áthaladását.
- ügyfél- Csak ennek a számítógépnek a védelme javasolt. Ez azt jelenti, hogy a tűzfal szabványos ügyfélszámítógépként van konfigurálva. Engedélyez minden kimenő kapcsolatot, és letilt minden bejövő kapcsolatot, kivéve a 25-ös porton lévő kapcsolatokat.
- egyszerű- egyszerű átjárók stb. beállítására szolgál. Vagyis a legegyszerűbb tűzfal, amely megvédi a belső hálózatot a külső behatolástól. Rugalmasabb szabályrendszert fogunk felállítani, ezért ezt a sablont nem fogjuk használni.
- zárva- Engedélyezett a forgalom a lo0 helyi interfészen. A forgalom többi részét az alapértelmezett szabály adja át. Általános szabály, hogy ez minden hozzáférés tilalma, kivéve a lo0 belső interfészt (leegyszerűsítve csak a "magához" való hozzáférés engedélyezett)
- ISMERETLEN- tiltsa le a tűzfalszabályok betöltését az alapértelmezett konfigurációs szkriptből. A tűzfal semmilyen módon nem konfigurálható. Az, hogy átadja-e a forgalmat, a rendszermag konfigurációjától függ. Alapértelmezés szerint használt.
Ugyanez a változó a "filename" - "filename" - értékben használható a tűzfal saját konfigurációs fájljának beállítására.
Például:
firewall_type = "/ etc / rc.firewall.newconfig"
betölti a beállításokat a létrehozott /etc/rc.firewall.newconfig fájlból.
"Firewall_flags =" "" - további argumentumok átadására szolgál, ha a firewall_type fájlnév értékkel használja.
Feladatunk egy olyan rendszer létrehozása, amely megfelel az alábbi kritériumoknak:
- Könnyű adminisztráció.
- Menet közbeni módosítás, a felhasználók számára láthatatlan. Ezért az olyan műveletek, mint a kapcsolatok megszakítása és még inkább az újraindítás nem kívánatosak számunkra.
- Garantált, hogy rendszerünk a legtöbb gépen működik.
Példaszkriptünkben a helyi hálózaton lévő összes számítógépet két feltételes csoportra osztjuk: az egyik kiváltságos csoport azok, akik hozzáférést kapnak az internethez a leggyakoribb szolgáltatások használatával, mint például:
- HTTP- 80-as port;
- HTTPS- 443-as port;
- FTP- 20-as, 21-es és 1025-65535-ös portok;
- SMTP protokoll a levéltovábbításhoz- 25-ös port;
- POP3 protokoll üzenetek fogadására- 110-es port.
Van egy másik csoport, a számítógépek, amelyekről csak egy külső vállalati szerverhez férhetnek hozzá 83.xxx.xxx.2 IP-címmel (csak SMTP és POP3 protokollok).
Biztosítanunk kell, hogy a kiváltságos csoportot, ahogy mondják, „menet közben” lehessen megváltoztatni, lehetőleg törés nélkül. létrejött kapcsolatokat... Ehhez meghívjuk a szkriptünkből az rc.firewall.local.inet további szkriptet. Elegendő ezt a kiegészítő szkriptet szerkeszteni és újraindítani anélkül, hogy az összes többi tűzfalbeállítást befolyásolná.
Ezenkívül gondoskodnunk kell olyan helyzetekről, amikor a hálózati paraméterek megváltoznak, például a szolgáltató átjárójának IP-címe. Ehhez helyi változókat fogunk használni a szkriptben. Például, ha módosítja az alapértelmezett átjárót, csak módosítania kell az intgateway változó értékét, és újra kell indítania az rc.firewall.run parancsfájlt.
Íme a minta szkriptünk:
# vi rc.firewall.run
#! / bin / sh
extip = "83.xxx.xxx.xxx"
intip = "192.168.9.2"
intnet = "192.168.9.0/24"
mailserver = "83.xxx.xxx.2"
intgateway = "83.xxx.xxx.1"
/ sbin / ipfw -f flush &
/ sbin / ipfw 180 hozzáadása natd ip átirányítása $-ról (intnet) bármely kimenetre xmit fxp0
/ sbin / ipfw 190 hozzáadása natd ip átirányítása bármelyikről $-ba (extip)
# ICMP
/ sbin / ipfw add 500 icmp engedélyezése bármelyikről bármelyikre
# SSH
/ sbin / ipfw 10000 hozzáadása tcp engedélyezése bármelytől tetszőleges 22
/ sbin / ipfw 10010 hozzáadása tcp engedélyezése bármely 22-től bármely
# DNS
/ sbin / ipfw add 11000 tcp engedélyezése bármelyikről tetszőlegesre 53
/ sbin / ipfw 11010 hozzáadása tcp engedélyezése bármely 53-tól bármely
/ sbin / ipfw add 11020 udp engedélyezése bármelytől tetszőleges 53-ig
/ sbin / ipfw add 11030 udp engedélyezése bármely 53-ról bármelyikre
# Web FTP
/ sbin / ipfw add 12000 tcp engedélyezése tőlem bármely 20,21,80,443
/ sbin / ipfw add 12010 tcp engedélyezése bármely 20,21,80,443-ból nekem
/ sbin / ipfw add 12020 udp engedélyezése tőlem bármely 20,21
/ sbin / ipfw add 12030 udp engedélyezése bármely 20,21-ből nekem
# Parancsfájl a jogosultsági csoporthoz
/ bin / sh /etc/rc.firewall.local.inet
# A LAN másik számítógépének megtagadása
/ sbin / ipfw 12960 deny tcp hozzáadása $ (intnet) bármely 20,21,80,443-hoz
/ sbin / ipfw add 12970 deny tcp bármely 20,21,80,443-tól $-hoz (intnet)
/ sbin / ipfw add hozzá az 12980 deny udp értéket $-tól (intnet) bármely 20,21-hez
/ sbin / ipfw add 12990 deny udp bármely 20.21-től $-ig (intnet)
/ sbin / ipfw add 13000 tcp engedélyezése $-tól (intnet) $-ig (mailszerver) 25 110
/ sbin / ipfw add 13010 tcp engedélyezése $-tól (mailszerver) 25 110-től $-ig (intnet)
/ sbin / ipfw add 55010 tcp engedélyezése bármelyikről bármely 1024-65534
/ sbin / ipfw 55020 hozzáadása engedélyezi a tcp-t bármely 1024-65534-től bármely
/ sbin / ipfw hozzáadása 55030 tcp engedélyezése bármely 1024-65534-től bármely
/ sbin / ipfw add 55040 tcp engedélyezése bármelyikről bármely 1024-65534
/ sbin / ipfw add 55050 udp engedélyezése tetszőleges 1024-65534
/ sbin / ipfw add hozzá az 55060-at
/ sbin / ipfw hozzáadása 55070
/ sbin / ipfw add 55080 udp engedélyezése bármely 1024-65534
# Mindent tagadni
/ sbin / ipfw add 65534 deny ip from any to any
Hozza létre és szerkessze az rc.firewall.local.inet parancsfájlt, hogy egy kiemelt címcsoporttal működjön:
# vi / etc / rc.firewall.local.inet
#! / bin / sh
intnet = "192.168.9.0/24"
privgroup = (31.32)
/ sbin / ipfw törlés 12310
/ sbin / ipfw 12320 törlése
/ sbin / ipfw törlés 12330
/ sbin / ipfw törlés 12340
/ sbin / ipfw add hozzá az 12310-et engedélyezi a tcp-t $ (intnet) $-tól (privgroup) bármely 20,21,80,443,1025-65535 számhoz
/ sbin / ipfw add 12320 tcp engedélyezése bármely 20,21,80,443,1025-65535-től $ (intnet) $-ig (privgroup)
/ sbin / ipfw add 12330 udp engedélyezése $ (intnet) $-tól (privgroup) bármely 20,21,1025-65535 számhoz
/ sbin / ipfw add 12340 udp engedélyezése tetszőleges 20,21,1025-65535-ből $ (intnet) $-ba (privgroup)
A privilegizált csoport összetételének módosításához szükséges szkriptben szerkesztenie kell a privgroup változót a benne lévő gazdagép szám hozzáadásával/eltávolításával a helyi alhálózaton.
Például két 192.168.9.33 és 192.168.9.45 IP-című számítógép hozzáadásához a következőt kell írnia: „privgroup = (31-33.45)”.
Kicsit csúnya olyan szabályokat használni a rendszer indításakor, mint a „/ sbin / ipfw delete NNNNN”, amikor még nem volt ilyen szabály. Ha nem létező szabályt próbál törölni, a rendszer a következő üzenetet jeleníti meg a konzolon:
ipfw: szabály 13031: setsockopt (IP_FW_DEL): Érvénytelen argumentum |
Ebben az esetben a rendszer továbbra is normálisan működik.
Ha mindent szigorúan csinál, akkor két szkriptet kell létrehoznia: az egyiket az indításkor futtatja, a másodikat pedig menet közbeni módosítások végrehajtása során. Ekkor azonban el kell végeznie a megfelelő módosításokat mindkét szkripten.
Mivel a fő cél egy könnyen adminisztrálható rendszer kialakítása, ez a probléma esetünkben elhanyagolható.
Most azonban a megfelelő módosítások elvégzése után egyszerűen újraindíthatjuk a szkriptet a kiváltságos csoporthoz.
# / bin / sh rc.firewall.local.inet
Változtathatunk és újraindíthatjuk az rc.firewall.run szkriptet is, bár ezt a tervezésből adódóan sokkal ritkábban kell megtennünk, mint a privilegizált csoportszkript esetében.
# / bin / sh rc.firewall.run
Mivel saját szkriptet írtunk a meglévő szabályok érvénytelenítésére és egy alternatív tűzfalkonfiguráció elindítására, át kell gondolnunk, hogyan indítsuk el.
A FreeBSD-nek csodálatos indítási mechanizmusa van egyedi programok: rc.local fájl. Alapértelmezés szerint hiányzik a rendszerből.
Mivel már alkotunk ez a fájl, adja hozzá a parancsot a natd démon elindításához, amely a NAT támogatásáért felelős.
A natd démon az rc.conf fájlból indul el. (Ismét ez a fájl, valóban kulcsszerepet játszik az egész FreeBSD rendszer egészében!)
A fájl rc.conf fájlból való futtatásának mechanizmusa a következő változókon keresztül történik:
# - magának a natd fájlnak az elérési útja
natd_program = "/ sbin / natd"
# NAT engedélyezése (ha firewall_enable == IGEN)
natd_enable = "IGEN"
# Használható kezelőfelület vagy ipadcím
natd_interface = ""
# Opcionális natd indítási jelzők
natd_flags = ""
De ebben az esetben a natd démon hívását fogjuk használni az rc.local-on keresztül. Parancs:
# vi /etc/rc.local
automatikusan létrehozza az /etc/rc.local fájlt és megnyitja szerkesztésre.
Adja hozzá a következő sorokat:
# Natd start parancs
/ sbin / natd -n rl0
# ahol "-n rl0" annak az interfésznek a neve, amelyen a NAT elindul
# És futtassa a szkriptünket a tűzfalszabályok beállításához:
/ bin / sh /etc/rc.firewall.run
Újraindítjuk és ellenőrizzük a szükséges internetes erőforrásokhoz való hozzáférést egy számítógépről a helyi hálózatról.
- Evie Németh, Garth Snyder, Scott Seabass, Trent R. Hein. UNIX. Menedzsment rendszergazda... BHV, Péter, 2004
- Alexey Fedorchuk, Alexey Torn. FreeBSD. Telepítés, konfigurálás, használat. BHV, 2003
- Philip Torchinsky. Gyakorlati útmutató a UNIX rendszergazdának. "Szimbólum", 2003
Wi-fi router DHCP-vel és DNS szerverekkel FreeBSD 8.2
Amit szeretnénk kapni:
- hogy a Wi-Fi kliensek ugyanazon az alhálózaton legyenek a vezetékesekkel.
- hogy a vezetékes és vezeték nélküli kliensek automatikusan megkapják a címeket DHCP-n keresztül
- hogy legyen gyorsítótárazó DNS-e
- természetesen azt szeretnénk, hogy mindenki internetezzen
- RDP hozzáféréssel rendelkezni a belső szerverhez
Általában a Dlink DIR-300 routerhez hasonló funkcionalitást szeretnénk kapni
Amink van:
Celeron 700, 256 MB RAM, 80 GB IDE csavar és egy furcsa alaplap, amely csak kikapcsolt ACPI mellett működik
hálózati kártyák:
LAN - rl0 (10 \ 100 valamiféle realtek a szekrény mögött a munkahelyen) [e-mail védett]:1 :8 :0 : osztály = 0x020000 kártya = 0x813910ec chip = 0x813910ec rev = 0x10 hdr = 0x00 gyártó = "Realtek Semiconductor" eszköz = Realtek RTL8139 család PCI FastEthernet NIC RTL- 8139 / 8139C / 8139D osztály = hálózati alosztály = ethernet WAN - stge0 (10 \ 100 \ 1000 asus adapter) [e-mail védett]:1 :5 :0 : osztály = 0x020000kártya = 0x81801043chip = 0x102313f0 rev = 0x41 hdr = 0x00 szállító = "Sundance Technology Inc" eszköz = "IC Plus IP1000 család Gigabites Ethernet-adapter" osztály = hálózati alosztály = Ethernet WLAN-tól (WLAN - Wi-Fi-cheap) [e-mail védett]:1 :10 :0 : osztály = 0x028000kártya = 0x3a711186chip = 0x03021814 rev = 0x00 hdr = 0x00 szállító = "Ralink Technology, Corp." eszköz = "vezeték nélküli a / b (RT2525 2 .4 GHz-es adó-vevő + RT2560 MAC / BBP) "osztály = hálózat |
Az internetszolgáltató által biztosított fehér IP-cím:
IP 9.9.9.9
maszk 255.255.255.0
átjáró 9.9.9.1
DNS1 9.9.9.254
DNS1 9.9.9.253
a beállítások eltérnek a valódiaktól, de ez nem változtat a lényegen
LAN tartomány: 192.168.0.0 255.255.255.0 maszkkal
FreeBSD 8.2 operációs rendszer telepítve:
# uname -a FreeBSD GATE 8 .2 - A FreeBSD kiadása 8 .2 -KIADÁS # 0: Szo Apr 9, 20:13:28 OMSST 2011 [e-mail védett]: / usr / src / sys / i386 / fordítás / GATE i386 |
az /etc/rc.conf tartalma:
9 .9 .9 .1 9 .9 .9 .9 hálózati maszk 255 .255 .255 .0 "ifconfig_rl0 =" inet 192 .168 .0 .1 hálózati maszk 255 .255 .255 .0 " |
az /etc/resolv.conf (DNS-kiszolgáló) tartalma:
névszerver 9 .9 .9 .254 névszerver 9 .9 .9 .253 |
Elkezdjük a felkészülést:
Minden felesleges illesztőprogramot eltávolítunk a kernelből (jó, vagy ne távolítsuk el, mert ez bárki számára kényelmes), miközben az összes illesztőprogramot meghagyjuk vezeték nélküli eszközök... Ha tudod melyik illesztőprogram illik a kártyádhoz, akkor hagyd el, és a többit ki lehet venni.Nem tudtam, hogy nekem melyik jön be, ezért mindent otthagytam. Újraépítjük a kernelt a következő opciókkal:
eszköz if_bridge # Modul a híd működéséhez eszköz wlan # 802.11 támogatás (Wi-Fi) # nem tudom mi az, automatikusan betöltődik eszköz wlan_amrr # AMRR átviteli sebesség-szabályozó algoritmusok eszköz wlan_xauth # Engedélyezési támogatási modul a hozzáférési pont módhoz eszköz wlan_wep # WEP biztonsági algoritmus támogató modul eszköz wlan_tkip # TKIP titkosítást támogató modul eszköz wlan_ccmp # CCMP titkosítást támogató modul készülék pf # Tűzfalként a csomagszűrőt használom # soralgoritmus támogatás (forgalmi prioritás) opciók ALTQ opciók ALTQ_CBQ # Osztálybázisok sorakozó (CBQ) opciók ALTQ_RED # Véletlenszerű korai észlelés (PIROS) opciók ALTQ_RIO # PIROS Be/Ki opciók ALTQ_HFSC # Hierarchikus csomagütemező (HFSC) opciók ALTQ_PRIQ # Priority Queuing (PRIQ) # mivel egymagos processzorom van, nem kell sok mag támogatása #options ALTQ_NOPCC # SMP buildhez szükséges |
felépíteni és telepíteni a kernelt:
# cd / usr / src # make buildkernel KERNCONF = GATE && \ make installkernel KERNCONF = GATE |
Indítsa újra, és nézze meg, mi történt:
8843
|
A Wi-Fi-kártya ral0-ként lett azonosítva. Már jó. Újraépítheti a kernelt, és eltávolíthatja a szükségtelen vezeték nélküli illesztőprogramokat.
Szerkessze az /etc/hostapd.conf fájlt ebbe az állapotba:
Az /etc/rc.conf szerkesztése:
keymap = "ru.koi8-r" hostname = "GATE" gateway_enable = "IGEN" defaultrouter = " 9 .9 .9 .1 "sshd_enable =" IGEN "ifconfig_stge0 =" inet 9 .9 .9 .9 hálózati maszk 255 .255 .255 .0 " # konfigurálja a vezeték nélküli kártyát hozzáférési pontként wlans_ral0 = "wlan0" create_args_wlan0 = "wlanmode hostap" ifconfig_wlan0 = "médiaopt hostap" # távolítsa el az IP-címet az rl0 interfészről # ifconfig_rl0 = "inet 192.168.0.1 hálózati maszk 255.255.255.0" # hozzon létre hidat a vezetékes és a vezeték nélküli LAN között # és akaszd rá a helyi hálózati átjáró IP-címét cloned_interfaces = "bridge0" ifconfig_bridge0 = "inet 192 .168 .0 .1 hálózati maszk 255 .255 .255 .0 \ addm wlan0 addm rl0 up "ifconfig_rl0 =" fel " # hozzáférési pont funkció engedélyezése hostapd_enable = "IGEN" |
Újraindítjuk. Nézzük meg mi történt:
# ifconfig stge0: flags = 8843
|
Minden rendben van, a Wi-fi és a vezetékes kártyák híd köti össze és ezen a hídon lóg egy IP cím
Kezdjük a PF konfigurálását. A PF lehetővé teszi a forgalom priorizálásának engedélyezését. Rövid leírás Nézz ide:
http://www.freebsd.org/doc/ru/books/handbook/firewalls-pf.html
hozzon létre egy /usr/local/etc/pf.conf fájlt, és állítsa ebbe az állapotba:
# Itt definiálom azokat a változókat, amelyekkel kényelmesebb számomra a script megírása. WAN = "stge0" LAN = "bridge0" LAN_POOL = " 192 .168 .0 .0 /24 "WANIP = 9 .9 .9 .9 "SZERVER = 192 .168 .0 .3 "ADMIN =" 192 .168 .0 .2 "RDP_PORT =" 3389 "EXTRDP_PORT =" 33389 " # forgalom ezekre a portokra és onnan le lesz tiltva a külső interfészen DROP_PORTS = "(135: 139 ,445}" # Mi a teendő, ha egy csomag blokkolási szabályt talál (blokk) # set block-policy drop – dobja el a csomagot, és ne csináljon semmit # set block-policy reject - dobja el a csomagot, és küldjön hibaüzenetet # az azt küldő gazdagépnek. set block-policy drop # Ne ellenőrizze a forgalmat a lo0-ra ugrás beállítása lo0-ra # Ne ellenőrizze a forgalmat a bridge0 felületen (nincs belső korlátozásunk)állítsa be a kihagyást a $ LAN-on # Csomagok „Normalizálása”. Ennek az opciónak a leírása véleményem szerint elegendő # homályosak, de hasznosak lehetnek bizonyos típusú hálózati támadások ellen. bozót mindenben # ~ 5000 kbps a sebességem, de itt meg kell adni a sebességet altq $ WAN priq sávszélesség 5000 Kb sorban (priv, egyéb) # 2 sorom van # Magasabb prioritású forgalomhoz (RDP a szerverről) queue priv qlimit 25 kiemelten fontos 14 priq (piros) # Mindenki másnak sor más qlimit 30 kiemelten fontos 10 priq (alapértelmezett) # A sorok méreteit, mondhatni, a mennyezetről veszik: (Nem is # koncentrálj rájuk, kérlek. Próbálja meg saját maga megkeresni a sor méretét # engedélyezze a NAT-ot a LAN hálózat külső interfészén nat a $ WAN-on $ LAN_POOL-tól bármely -> ($ WAN) # A port továbbítása a szerverre A szabványos porttól eltérő továbbítás # a szabványos portokat pásztázó brute force majmok elleni védelem érdekében rdr a $ WAN proto tcp-n bármelyikről $ WANIP \ port $ EXTRDP_PORT -> $ SERVER port $ RDP_PORT # Vágja le a címünkre érkező ping kéréseket Gyors blokkolás a $ WAN proto icmp-n bármelyikről $ WANIP icmp-típusra 8 # A külső felületen ne legyen forgalom a NETBIOS-ból gyorsan blokkolja a $ WAN protot (tcp udp) bármely $ DROP_PORTS portra # engedélyezze a hamisítás elleni védelmet a WAN interfészen # Idézve: http://openbsd.corebsd.or.id/faq/pf/ru/filter.html: # A címek hamisak, ha a támadó meghamisítja az eredetit # IP-címek csomagokban, vagy átkerülnek a valódi címeik shelljébe, # vagy ábrázoljon egy másik csomópontot a hálózaton. Miután a felhasználót meghamisították # képesek lesznek hálózati támadást indítani anélkül, hogy felfednék a valódi forrást # támadás, vagy megpróbál hozzáférni hálózati szolgáltatások, melyik # meghatározott IP-címekre korlátozva. antispoof gyors $ WAN-ért # Minden kifejezetten jogosulatlan forgalom tiltása blokkolja az összeset # ### Bejövő forgalom # Kiváltságos forgalom gyors átadás $ WAN proto tcp bármelyről $ WANIP portra $ EXTRDP_PORT queue priv # Normál forgalom gyors átadás $ WAN-on bármelyikről $ WANIP állapotsor megtartása egyéb # Valójában a bejövő forgalomnál a PF-ben nem működik a prioritás, hanem az I. szabályok # még mindig írt. # ### Kimenő forgalom # Kiváltságos forgalom gyorsan elmúlik a $ WAN proto tcp a $ WANIP \ portról $ EXTRDP_PORT bármely megtartási állapot várólistára priv # A normál forgalom gyorsan elmúlik a $ WAN-on $ WANIP-ről bármely megtartási állapot sorba, egyéb |
pf_enable = "IGEN" pf_rules = "/ usr / local / etc / pf.conf" |
és indítsa újra a pf-t:
# /etc/rc.d/pf újraindítás |
A szabályok létrehozásának helyességét a parancsokkal ellenőrizzük:
pfctl -sn Meglévő NAT-szabályok
pfctl -sr Meglévő szabályok adások
pfctl -ss Kiépített kapcsolatok
pfctl -si Különféle számlálók
pfctl -sa A fentiek mindegyike egyszerre
pfctl -sq -vvv A sorok állapotát mutatja
Portok frissítése portsnap segítségével:
# portsnap fetch A portsnap.FreeBSD.org tükrök keresése ... 5 tükrök találtak. Pillanatkép címke lekérése a portsnap5.FreeBSD.org webhelyről ... kész. Pillanatkép metaadatainak lekérése... kész. Frissítés: szerda jún 15 14 :21 :31 MSD 2011 Cs júl 21 11 :37 :27 MSD 2011 ... Elragadó 3 metaadat javítások .. kész. Metaadat-javítások alkalmazása... kész. Elragadó 3 metaadat fájlok ... kész. Elragadó 9656 foltok..... 10 .... <Часть вывода удалена> ...........9650 ... Kész. Patchek felhelyezése... kész. Elragadó 1282 új portok vagy fájlok ... kész. # portsnap kivonat /usr/ports/.cvsignore / usr / ports / CHANGES .................<Часть вывода удалена>................. / usr / ports / x11 / yelp / / usr / ports / x11 / zenity / Új INDEX fájlok készítése ... kész. |
A djbdns csomagból származó dnscache-t használjuk gyorsítótárazó DNS-kiszolgálóként, mivel kevesebb memóriát fogyaszt, és biztonságosabbnak tekinthető, mint a FreeBSD-hez tartozó BIND DNS-kiszolgáló.
djbdns telepítése:
# cd / usr / ports / dns / djbdns && a telepítés tiszta |
Gyűjtjük és telepítjük az alábbi opciókkal:
DUMPCACHE állandó gyorsítótár a dnscache-hez IPV6 IPv6 támogatás Felix von Leitnertől IGNOREIP ignoreip2 javítás, Russell Nelson JUMBO jumbo javítás, Claudiu Costin [X] MAN kézikönyv oldalai, Gerritt Pape PERSISTENT_MMAP állandó mm rekord javítás, Michael Lennert [ SXRV patch vásárlás] SRV Lennert Michael SRV Michael |
A djbdns vele együtt kihúzza a daemontools portot is. A daemontools démonok indítására és munkájuk figyelésére készült. Vagyis ha bármelyik démon az irányítása alatt "összeomlik", akkor a daemontools újraindítja.
Hozzon létre egy dnsusers csoportot, amely magában foglalja a felhasználókat, amelyek alatt maga a dnscache és a dnslog (a djbdns naplózója) futni fog:
hozzon létre egy felhasználót a dnsloghoz:
# pw useradd dnslog -s / sbin / nologin -d / dev / null -G dnsusers |
hozzon létre egy mappát, amelynek tartalmával a daemontools működik:
daemontools futtatása:
mivel a dnscache konfiguráció a / usr / local / etc / djbdns mappában található, és a daemontools a / var / service mappával működik, létrehozzuk a hivatkozást:
# ln -s / usr / local / etc / dnscache / var / service / dnscache |
A / usr / local / etc / dnscache / env mappa fejlettebb dnscache konfigurációval rendelkező fájlokat tartalmaz, de ebben az esetben az alapértékekkel rendben vagyunk.
A szerver normál működéséhez be kell állítani a felfelé irányuló szerverek címét. Minden zónához van egy fájl, amelynek neve megegyezik a zóna nevével, a / usr / local / etc / dnscache / root / servers könyvtárban. Minden fájl tartalmazza a zónáért felelős szerverek IP-címét. Mivel minden kérést átirányítunk a szolgáltató DNS-kiszolgálóira, a nevüket egy „@” nevű fájlba írjuk (amely a gyökérzónáért felelős).
Indítsa újra a dnscache-t:
Telepítse a DHCP szervert (ezekkel az opciókkal építettem):
# cd / usr / portok / net / isc-dhcp41-szerver && a telepítés tiszta Az isc-dhcp41-server beállításai 4 .1 .e_1, 2 DHCP_IPV6 IPv6 támogatásának engedélyezése [X] DHCP_PARANOIA Chroot támogatás engedélyezése DHCP_LDAP Kísérleti LDAP háttértámogatás DHCP_LDAP_SSL Támogatás LDAP kapcsolat SSL / TLS-en keresztül |
A DHCP-kiszolgáló konfigurációját (/usr/local/etc/dhcpd.conf) ebbe az állapotba hozzuk:
helyi cím 192 .168 .0 .1 ; alapértelmezett bérleti idő 600 ; max-bérleti idő 7200 ; irányadó; ddns-update-style interim; log-facility local7; alhálózat 192 .168 .0 .0 hálózati maszk 255 .255 .255 .0 (hatótávolság 192 .168 .0 .10 192 .168 .0 .250 ; opciós útválasztók 192 .168 .0 .1 ; # Ha emelt SAMBA-t, akkor megpróbálhatja adni az ügyfeleknek # a WINS szerver értéke is. # opció netbios-name-servers 192.168.0.1; # DNS szerverünket már felemeltük, ezért megadjuk a címét opció domain-name-servers 192 .168 .0 .1 ; } # meghatározott MAC-címeket meghatározott IP-címekhez "köt". host admin (hardver ethernet 03 :03 :03 :03 :03 :03 ; fix cím 192 .168 .0 .2 ; ) hosztszerver (hardveres ethernet 04 :04 :04 :04 :04 :04 ; fix cím 192 .168 .0 .3 ; } |
Adja hozzá a következő sorokat az /etc/rc.conf fájlhoz:
és indítsa el a DHCP szervert:
Minden rendben. A legegyszerűbb dir-300 funkcionalitása megvalósult.
Ebben a cikkben a hálózati interfészeket tekintjük át FreeBSD 11.1, mutassuk meg a hálózati beállításokat a konfigurációs fájlon keresztül / etc / rc.conf, nevezetesen a cél statikus beállításokat és azok végrehajtását DHCP.Írjuk fel a címeket DNS-szerverek, beállítása otthont adés fontolja meg az indikációt ideiglenes hálózati beállítások.
Hálózati interfészek megtekintése.
Először is tisztázzuk: A hálózati kártyának két állapota van FEL(benne) és LE(nem használt).
Első lépésként nézzük meg a hálózati interfészeinket, mi a paranccsal fogjuk megnézni ifconfig(1. ábra) A parancskimenet az összes interfészt mutatja FELés LE.
Ifconfig
ifconfig -a ugyanazt fogja mutatni.
Ifconfig -a
Itt van néhány eltérés ifconfig v Ubuntu szerver .(v Ubuntu szerver "ifconfig" csak az interfészeket mutatja FEL,"ifconfig -a" megmutatja az összes interfészt és FELés LE)
1. ábra - Az ifconfig parancs beírásának eredménye.
És mit látunk:
- em0- a hálózati kártyánkat, IP-címmel 192.168.3.11 .
- em1- a második hálózati kártya nincs konfigurálva.
- íme- helyi hurok, alapértelmezés szerint mindenkinél jelen van.
Csak az interfészek megtekintéséhez FEL, a parancs használatos ifconfig -u(2. ábra):
Ifconfig -u
és csak az interfészek megtekintéséhez LE, a parancs használatos ifconfig -d(3. ábra):
Ifconfig -d
2. ábra - Az ifconfig -u parancs beírásának eredménye.
3. ábra - Az ifconfig -d parancs beírásának eredménye.
A jövőben mutatok példákat a beállításokra a felületen. "em0".
Az interfész engedélyezéséhez használja a parancsot ifconfig"NÉV-INTERFÉSZ" fel.
Ifconfig em0 fel
Az interfész kikapcsolásához használja a parancsot ifconfig "NÉV-INTERFÉSZ" le.
Ifconfig em0 le
"Játszadozni" interfésszel, hacsak nem csatlakozik sshés hagyja olyan állapotban FEL.
A hálózat beállítása a konfigurációs fájlon keresztül.
Statikus vagy dinamikus IP-cím konfigurálásához szerkesztenünk kell a hálózati interfész konfigurációs fájlját - / etc / rc.conf-val szerkesztjük szöveg szerkesztővi(4. ábra) Azonnal elmondom, hogy be tudjam szerkeszteni vi meg kell nyomni egy betűt "én" gombot, majd a dokumentum mentéséhez és bezárásához nyomja meg a gombot "Kilépés" bemutatni ": wq!"és nyomja meg "Belép".
4. ábra - vi /etc/rc.conf.Hálózati beállítások beszerzése DHCP-n keresztül.
A beállítások fogadásának DHCP-n keresztüli hozzárendeléséhez be kell írnia (vagy módosítania kell a meglévő) sort a / etc / rc.conf(5. ábra)
ifconfig_NÉV-INTERFÉSZ= "DHCP"
Ifconfig_em0 = "DHCP"
5. ábra - Fogadás hálózati beállítások DHCP-n keresztül.
Újrakezd hálózati szolgáltatás netif(6. ábra)
/etc/rc.d/netif restart 6. ábra - A FreeBSD hálózati szolgáltatás újraindítása.
Megnézzük az aktív hálózati interfészeket, látjuk, DHCP-n keresztül kapott, az interfész IP címét em0- 192.168.3.6 (7. ábra)
Ifconfig -u
Ping 8.8.8.8
7. ábra - Aktív interfészek és hálózati hozzáférés ellenőrzése.
Jönnek a pingek. Minden tökéletesen!
A hálózati beállítások kézi megadása.
Statikus cím hozzárendeléséhez Freebsd fájlozni kell / etc / rc.confírjon be két sort (8. ábra)
ifconfig_NÉV-INTERFÉSZ= "inet IP-CÍM-FREEBSD hálózati maszk MASZK HÁLÓZAT "
defaultrouter = " GATEWAY IP CÍM "
Ifconfig_em0 = "inet 192.168.3.11 hálózati maszk 255.255.255.0" defaultrouter = "192.168.3.1"
8. ábra - A hálózati interfész statikus beállításai.
Újraindítjuk a hálózati szolgáltatást.
/etc/rc.d/netif újraindítás
Aktív interfészek ellenőrzése
Ifconfig -u
A Google Eights pingelésével ellenőrizzük az internet-hozzáférést.
Ping 8.8.8.8
DNS beállítás.
IP-címek DNS szerverek fájlban tárolva / etc / resolv.conf(9. ábra)
Nyitunk resolv.conf a szerkesztőben vi.
Vi /etc/resolv.conf
Belépünk IP cím DNS szerver. (Annyi címet adhat meg, amennyit csak akar.)
Névszerver 192.168.3.1 névszerver 8.8.8.8 névszerver 8.8.4.4
Ha nincs fájlja resolv.conf majd hozza létre a könyvtárban / stb
Érintse meg az /etc/resolv.conf fájlt
9. ábra – A resolv.conf fájl tartalma.
Az / etc / hosts fájl.
Az / etc / fájl otthont ad táblázatokat tartalmaz a DNS-nevek IP-címekre való leképezéséhez. Először is, a szerver hozzáfér a fájlhoz otthont ad, majd a DNS-kiszolgálóra.
Magam számára megjegyeztem, hasznos hozzáfűzni otthont ad ezt rögzíteni freebsd(A helyi hálózat IP-címe a szerver neve). Most már minden konfigurációs fájlban megadhatjuk DNS név, és nem az IP-címet, és ha szükséges, a legrövidebb időn belül módosítsa az IP-címét javítással otthont adés az interfész beállításai a / etc / mappában rc.conf.
Ez csak egy példa, hogy ezt tedd. nem szükséges.
Kezdjük a szerkesztést (10. ábra):
Vi / etc / hosts
Belépek:
192.168.3.11 freebsd.itdeer.loc 10. ábra – A hosts fájl tartalma.
A nevek pingelésével ellenőrizni fogom otthont ad(11. ábra)
Ping localhost ping freebsd.itdeer.loc
11. ábra - Nevek pingelése gazdagépektől.
Ideiglenes IP-cím hozzárendelése.
Őszintén szólva nem tudom, mire lehet hasznos a hálózati beállítások ideiglenes hozzárendelése. Hacsak nem tegyük fel, hogy van valamilyen kiszolgálója, amelyet csak a helyi hálózathoz terveztek, és hirtelen úgy döntött, hogy gyorsan frissíti a szoftvert az interneten keresztül ezen a kiszolgálón, hogy ne menjen át az átjáróhoz, ne terjessze az internetet a kívánt IP-címre. cím stb. Pár paranccsal meg lehet oldani.
Például tudjuk, hogy a 192.168.3.109 Internet hozzáférés biztosan van, ezt az IP-címet rendeljük hozzá a felületünkhöz, meg kell adni a hálózati maszkot is (12. ábra):
Ifconfig em0 192.168.3.109 hálózati maszk 255.255.255.0
vagy egy parancs egy rövid hálózati maszk bejegyzéssel.
Ifconfig em0 192.168.3.109/24
12. ábra - Ideiglenes beállítások megadása az em0 hálózati interfészhez.
Előfordulhat, hogy az Internet nem jelenik meg, mert nincs megadva alapértelmezett átjáró. Regisztráljuk és megpingáljuk a google nyolcast. (13. ábra)
Útvonal hozzáadása alapértelmezett 192.168.3.1 ping 8.8.8.8
13. ábra - Adja meg az alapértelmezett átjárót. A ping ellenőrzése.
Az, hogy megfelelően regisztráltuk-e az alapértelmezett átjárónkat, az útválasztási táblázatban látható. A parancs segítségével jelenik meg "netstat -rn" Az alapértelmezett átjárót zászló jelzi UG(14. ábra)
Netstat -rn
14. ábra - Az útválasztási táblázat kimenete.
Ha valahol elírta a helyesírást, vagy más átjárót adott meg, akkor megteheti távolítsa el az alapértelmezett átjárót.
Alapértelmezett útvonal
Ezzel befejeződik az ideiglenes konfigurálás, ne feledje, hogy a kiszolgáló vagy a szolgáltatások külön újraindítása után hálózatépítés, minden ideiglenes beállítás eltűnik.
Adjon hozzá egy útvonalat a 192.168.0.0/16 (Maszk 255.255.0.0) hálózathoz a 192.168.3.1/24 alapértelmezett átjárón keresztül
Útvonal hozzáadása 192.168.0.0/16 192.168.3.1
Lehetőség egy útvonal hozzáadására teljes maszkkal.
Útvonal hozzáadása -net 192.168.0.0 -hálózati maszk 255.255.0.0 192.168.3.1
Nevezze át az em0 felületet wan0-ra.
A kényelem kedvéért egyes adminisztrátorok átnevezik a felületeket, hogy azonnal láthassák, mire való a felület. Tegyük fel, hogy van egy átjárónk két hálózati interfésszel em0(internet) és em1(helyi hálózat), és az ilyen nevekkel való munkavégzés kényelmetlen, mivel a sok interfész megzavarhatja. Sokkal kényelmesebb az interfészekkel dolgozni wan0és lan1.
Mutatunk egy példát egy interfész átnevezésére. em0 v wan0 az / etc / fájlban rc.conf(15. ábra)
Ifconfig_em0 = "inet 192.168.3.11 hálózati maszk 255.255.255.0"
Cserélje ki két sorral:
Ifconfig_ em0 _name = " wan0"ifconfig_ wan0= "inet 192.168.3.11 netmaszk 255.255.255.0"
15. ábra - Az interfészek átnevezése az /etc/rc.conf fájlban.
Ne felejtse el újraindítani a hálózati szolgáltatást:
/etc/rc.d/netif újraindítás
Ellenőrizze, írja be a parancsot ifconfig -u... Látjuk a miénket wan0 a jobboldallal IP-cím. (16. ábra)
Ifconfig -u
16. ábra - Az interfész új nevének ellenőrzése. ifconfig -u.
Az útválasztó olyan eszköz, amely hozzáférést biztosít a helyi hálózathoz csatlakoztatott számítógépekhez az internethez. A FreeBSD segítségével hasonló útválasztót készíthet, és ez meglehetősen egyszerűen megtörténik, fontolja meg egy 20 ... 30 munkaállomásból álló kis helyi hálózathoz való útválasztó építésének lehetőségét.
Kiinduló adatok - egy PC két hálózati kártyával, telepített FreeBSD-vel (jelenleg FreeBSD 8.4 STABLE), a szolgáltatónk által megadott külső ip-cím, a szolgáltató átjárójának ip-címe és a DNS-szerver ip-címe.
Ha útválasztóvá szeretné alakítani, csak egy sort adjon hozzá az rc.conf konfigurációs fájlhoz:
# echo gateway_enable = ”IGEN”> /etc/rc.conf
Ez lehetővé teszi az ip-csomagok átjutását egyik hálózati interfészről a másikra. Az ifconfig paranccsal információt találunk a hálózati interfészekről, és meghatározzuk, hogy melyik lesz „külső” (a szolgáltató ip-címét rendeljük hozzá), és melyik lesz „belső” (nem foglalt ip-t rendelünk hozzá). a belső helyi hálózat címe). Lássuk, mit kapunk:
Meghatározzuk az „em0”-t külső interfészként (a hozzárendelt ip 192.168.5.39), az „em1”-et az rc.conf fájl belső szerkesztéseként (hozzuk hozzá pl. ip 192.168.0.240), ugyanabban a fájlban azt szolgáltatónk átjárójának regisztrálásához szükséges
# echo defaultrouter = ”xxx.xxx.xxx.xxx”> /etc/rc.conf
Ahol xxx.xxx.xxx.xxx a szolgáltató átjárójának IP-címe.
Ennek eredményeként az rc.conf fájl következő formáját kaptam
Ezután regisztrálnia kell a szolgáltató DNS-szerverének ip-címét, hogy nevükön hivatkozhassunk az oldalra. Tegyünk egy bejegyzést konfigurációs fájl resolv.conf
# echo névszerver xxx.xxx.xxx.xxx> /etc/resolv.conf
Ahol xxx.xxx.xxx.xxx a DNS-kiszolgáló IP-címe.
Ha több DNS-szerver van, célszerű mindegyiket felsorolni, mindegyiket új sorral.
Esetünkben ezek a 192.168.5.200 és 192.168.5.201 szerverek IP-címei. Cím 8.8.8.8 DNS szerver nagyszerű Google, végső megoldásként használhatja.
Újraindítás...
# leállítás –r most
Ez az, az útválasztó kezdeti konfigurációja készen áll (konfigurálhatja a helyi hálózat PC-jét). Ezután megfontoljuk egy tűzfal beállítását, a hálózati címfordítás (NAT) engedélyezését és mindenféle útválasztási sémát.
Megvizsgáljuk a munkaállomások beállítását Windows operációs rendszer alatt az internethez (hogyan és hol kell regisztrálni a számítógép, az útválasztó és a DNS IP-címét). Pályázatként, hátha valakinek hirtelen szüksége lesz rá.
Megnézzük a router konfigurációjának folytatását (2. rész).