Veebiliikluse juhtimine kalmaari vahemälu ja Cisco ruuteri abil Linuxis


Üks oluline ülesanne võrgus on juhtida ja hallata personali veebis surfamise liiklust. Selle probleemiga saab toime tulla palju lahendusi, üks parimaid lahendusi on kalmaari vahemälu kasutamine Linuxi masinas. Kalmaarid saavad kontrollida, piirata ja vahemällu salvestada veebiliikluse vooge ühest võrgust teise võrku, näiteks kohtvõrgust Internetti.

Kliendi veebipäringute ümbersuunamiseks kalmaarmasinasse on mõned viisid. Selles artiklis me näitame teile, kuidas suunata veebiliiklus CISCO ruuterilt kalmaari vahemälu masinasse, kasutades WCCP-protokolli.

Allolev pilt on põhistsenaariumi näide.

Nagu näete ülaltoodud pildil, lähevad kõik kliendi veebikaubandused kõigepealt Cisco ruuterisse (see on nende vaikelüüs), seejärel suunavad ruuter vaikimisi paketid kalmaari masinasse, nüüd saab kalmaar oma rolle mängida, peamised rollid on veebisisu vahemällu salvestamine, juurdepääsu piiramine domeenide, ajaintervallide, ip-aadresside, failide suuruse jne kohta.

Vaatame selle stsenaariumi konfiguratsiooni läbi kahes peamises etapis: kõigepealt peaksime installima ja konfigureerima kalmaarid ja Linuxi, seejärel konfigureerima ruuteri veebiliikluspakettide kalmaaridesse suunamiseks WCCP protokolli abil.

Selle stsenaariumi korral kasutan oma LINUX-serverina CENTOS 6.5 ja ruuterisüsteemina Cisco 2691.

Operating System: CENTOS 6.5
Application: Squid
Router: Cisco 2691

1. samm: kalmaari vahemälu installimine

Kalmaar on saadaval CENTOSe vaikehoidlas, installime selle kõigepealt armas yum-käsu abil, seejärel käivitame nende teenused ja lõpuks seadistame kalmaariteenuse automaatse käivitamise.

# yum -y install squid
# service squid start
# chkconfig squid on

2. samm: kalmaari vahemälu ettevalmistamine

Nüüd peame muutma sentos-operatsioonisüsteemi mõnda vaikekäitumist, peame lubama pakettide edastamise ja keelama vastupidise tee filtri (RPF), lubama pakettide edastamise, et sentos toimiks läbipaistva edastajana (nagu ruuter).

Lubage mul selgitada üksikasjalikumalt, kui kaubitsejad saavad sentides, on nende lähte- ja sihtkoha aadressid, näiteks kui klient sisestab oma brauserisse www.example.com, mille genereerib http-i päringupakett, ja sellel on kliendimasina lähte-IP-aadress (nt 192.168.1.20) ja example.com serveri sihtkoha IP-aadress (nagu 2.2.2.2).

Niisiis, kui sentide poolt vastuvõetud pakett tuvastatakse vale paketina, kuna sentide ip-aadress ei ole paketi sihtkoha aadress, siis turvakaalutel loobuvad sentid paketist, kuid me tahame, et kalmaarid toimiksid läbipaistvas režiimis. Me räägime sellest olukorrast sentidele, võimaldades pakettide edastamise jooki.

Järgmisena peaksime keelama pöördteede filtreerimise, et sentid saaksid vastu võtta pakette, millele kalmaarmasin ei pääse, või pakette, millel pole ip-aadressi kalmaarimasina samas alamvõrgus.

# nano /etc/sysctl.conf
net.ipv4.ip_forward = 1 #set to 1 for enable the packet forwarding feature
net.ipv4.conf.default.rp_filter = 0 # set to 0 for disable the reverse path filter behavior

Järgmiseks peame CENTOS-i masinasse looma GRE-liidese, milleks ?? Lubage mul rohkem selgitada, WCCP protokoll töötab GRE tunneli kaudu, see tähendab, et ruuteri ja Squidi vaheline keel on GRE, nii et sentidel peab olema GRE liides GRE pakettide eemaldamiseks.

Peaksime looma GRE-liidese konfiguratsioonifaili\"/ etc/sysconfig/network-script/ifcfg-gre0" teele.

Sisestage konfiguratsioonifaili ifcfg-gre0 koodide alla.

DEVICE=gre0
BOOTPROTO=static
IPADDR=10.0.0.2         #unused ip address in your network
NETMASK=255.255.255.252
ONBOOT=yes
IPV6INIT=no

Pärast GRE-liidese loomist peame võrguteenuse taaskäivitama.

# service network restart

3. samm: kalmaari vahemälu konfigureerimine

Me peame ütlema ruuterilt, et kalmaarid aktsepteerivad WCCP-pakette. Sisestage failide /etc/squid/squid.conf koodide alla.

http_port 3128 intercept                 # Define SQUID listening port
wccp2_router 192.168.1.254          #ip address of the router
wccp2_forwarding_method gre
wccp2_return_method gre
wccp2_service standard 0

Salvestage konfiguratsioonifail ja taaskäivitage kalmaariteenus.

# service squid restart

Kalmaarid kuulavad pakette 3128 pordis, kuid meie pakettide sihtkoha pordi number on 80, nii et sihtsadama 80 muutmiseks 3128-ks peame looma CENTOS-i integreeritud tulemüürile NAT-reegli (selle nimi on iptable).

# iptables -t nat -A PREROUTING -i gre0 -p tcp --dport 80 -j REDIRECT --to-port 3128
# iptables -t nat -A POSTROUTING -j MASQUERADE

4. samm: Cisco ruuteri konfiguratsioonid

Kõigepealt peaksime lubama WCCP cisco ruuteris.

R1(config)# ip wccp version 2
Then we must use an ACL for introducing SQUID cache machine to router
R1(config)# ip access-list standard SQUID-MACHINE
R1(config-std-nacl)# permit host 192.168.1.10

Järgmisena määratleme veel üks juurdepääsunimekiri kaheks erinevaks otstarbeks. Kõigepealt peaksime välja jätma SQUID-i liikluse WCCP-protokolli abil ümbersuunamisest (kui me ei satuks lõpmatusse tsüklisse!) Teiseks määratleme, millised LAN-liiklused soovime läbida WCCP ja SQUID.

R1(config)#ip access-list LAN-TRAFFICS
R1(config-ext-nacl)#deny ip host 192.168.1.10 any                            #Prevent SQUID to get in loop
R1(config-ext-nacl)#permit tcp 192.168.1.0 0.0.0.255 any equal www           #define LAN Traffics

Pärast juurdepääsu loendi loomist peame ruuteris konfigureerima WCCP protokolli.

R1(config)# ip wccp web-cache redirect-list LAN-TRAFFIC group-list SQUID-MACHINE

Kõik asjad on viimaseks sammuks valmis, me peame ruuterile ütlema, et millises liideses/liideseis peab see oma WCCP konfiguratsiooni abil liikluse suunama.

R1(config)#interface fastEthernet 0/0
R1((config-if)# ip wccp web-cache redirect in

Kokkuvõte

Aeg on kõik käsud ja tekstid paremaks mõistmiseks paaril real kokku võtta, vastavalt stsenaariumile suuname staabid veebis surfamise paketid (see on TCP-porti 80) ROUTER-ist (see on klientide vaikelüüs) kalmaari vahemälu suunas masin, kasutades WCCP-protokolli.

Kõik need protsessid toimusid vaikselt ja kliendi poolel pole täiendavat konfiguratsiooni. Nii et saame LAN-is veebikaubanduse juhtimist ja poliitika seadmist. Näiteks võime veebisurfile pääseda vaid piiratud aja jooksul, piirata maksimaalset allalaadimissuurust, määratleda oma kohandatud musta nimekirja ja lubatud loendi, luua täielikke aruandeid Interneti-tegevuse kasutamise kohta jne.

selle stsenaariumi üks huvitav fakt on see, kui kalmaarne masin läheb ruuteril alla ja tuvastab selle probleemi ning lõpetab pakettide ümbersuunamise, et saaksite oma võrgus nullist seisakut nautida.

Kui teil on selle artikli kohta küsimusi, jätke vastus allpool kommentaarikasti.