Isporuka i odravanje Web lokacija Vanosti isporuke q
Isporuka i održavanje Web lokacija
Važnosti isporuke q Korisnik ne može da vidi sve komponente koje utiču na brzinu isporuke lokacije Drugi korisnici Drugi klijentski procesi Saobraćaj koji potiče od drugih korisnika Weba Klijentska strana Količina poslatih podataka (tekst, slike, itd. ) Mreža Korisnik Web vidi kao celinu, a ne kao pojedinačne komponente Brzina lokalnog sistema Brzina lokalnog čitača Propusna moć korisnikove veze sa Internetom Prekidi mrežne komunikacije Latentnost zbog velike fizičke udaljenosti Efekti protokola TCP/IP i HTTP Serverska strana Brzina servera: • Brzina procesora • Brzina diskova Opterećenje servera 2
Protokoli i dizajn Web strana q Protokol – skup pravila koja definišu komunikacione funkcije. q Osnovna namena komunikacionih funkcija – obezbede učesnicima u komunikaciji da šalju, primaju i interpretiraju informacije koje žele da razmene. q Protokol definiše format i redosled poruka koje se razmenjuju između dva ili više učesnika u komunikaciji, kao i akcije koje se vrše na osnovu poslatih i primljenih poruka. q Skup protokola – familija protokola koji rade zajedno i omogućavaju komunikaciju između aplikacija, tj. programa. 3
TCP/IP Protokoli TCP/IP (Transmission Control Protocol and Internet Protocol) protokol stek – naziv za skup protokola koji se koriste za povezivanje računarskih mreža (TCP i IP su samo dva protokola iz tog skupa, najpoznatiji i najčešće korišćeni iz celog skupa) 4
Specifičnosti TCP/IP protokola q Autonomnost – povezivanje različitih mreža ne sme uticati na interno funkcionisanje pojedinih lokalnih mreža q Pouzdanost usluge – u slučaju greške ili gubitka neke od poruka vrši se njihovo ponovno slanje – retransmisija q Decentralizovana kontrola – ne postoji globalna kontrola nad međusobnim povezivanjem mreža q Ruteri bez memorije – ruteri ne beleže informacije o porukama koje prosleđuju 5
Protokoli i dizajn Web strana q HTTP (Hypertext Transfer Protocol) dobro razumeju skoro svi čitači koji se danas koriste na Webu - iako on nije ni najsofisticiraniji ni najbrži mrežni protokol, q Jednostavnost metoda zahtev/odgovor uzrok je mnogih problema naročito ako se kombinuje sa drugim protokolima, na primer sa protokolom TCP q Prvo što treba uzeti u obzir – činjenica da protokol HTTP odvojeno zahteva svaki objekat koji je dodat na Web stranu q PREDLOG: Postaviti na stranu mali broj objekata kako bi se smanjio broj HTTP zahteva 6
Protokoli i dizajn Web strana q TCP koristi razne tehnike, poput sporog starta (eng. slow start) i povlačenja (eng. backoff) pomoću kojih izbegava zagušenje mreže q Svojstvo sporog starta pri preuzimanju velikih datoteka – prenos se polako povećava dok ne dostigne najveću vrednost q Zbog male veličine objekata, brzina prenosa ne dostigne najveću vrednost – objekti Weba se ne prenose najvećom mogućom brzinom – jedna slika od 100 KB učita se pre nego nekoliko slika ukupne veličine 80 KB q PREDLOG: Složiti tipove podataka, broj objekata i veličinu objekata kako bi se prenosili što je moguće brže. 7
Web serveri q Web server – računar na kome se izvršava program koji opslužuje zahteve čitača Weba q Web server se sastoji od hardvera i softvera q Uloga Web servera sa svog diska što brže čita mnoge (najčešće male) datoteke koje čine Web stranu i preko mreže ih šalje brojnim korisnicima koji ih zahtevaju v izvršava programe koje pojedini korisnici pokrenu i brzo vraća njihove rezultate – nalaže upotrebu određenog hardvera v q Hardver za Web server treba opremiti najbržim diskovima, velikom količinom memorije i brzim mrežnim priključcima 8
Hardverski delovi Web servera Komponenta Napomena Procesor U stvarnosti Web serveri nisu previše zahtevni. Kada je potrebno obraditi mnoge zahteve, korisnije je raspolagati većim brojem procesora nego jednim brzim procesorom. Memorija Web serveru će možda biti potrebno mnogo memorije kako bi mogao da izvršava brojne procese CGI programa koje su korisnici pokrenuli. Magistrala Podaci će stalno biti prenošeni sa diska u memoriju, a potom na mrežni priključak. Stoga je potrebno izbegavati ograničavanje protoka podataka sporom magistralom. Hard disk S obzirom na to da je primarni zadatak Web servera isporuka podataka korisniku, neophodan je brz disk koji se dobro održava. Mrežni priključak Kada datoteke budu pročitane sa diska, server će ih preko mreže proslediti korisniku. Ne treba ograničavati mogućnosti servera sporim mrežnim priključkom. Serverima koji opslužuju zahtevne lokacije možda će biti potrebno nekoliko mrežnih priključaka. Ostalo Ostale hardverske komponente Web servera ne utiču mnogo na brzinu isporuke lokacije. Neki dodatni uređaji, na primer uređaji za izradu rezervnih kopija, potrebni su za održavanje servera. 9
Operativni sistemi za Web servere q Prilikom odabira operativnog sistema potrebno je uzeti u obzir: Namenu servera v Troškove održavanja na duži period v Performanse i razvojne mogućnosti operativnog sistema v Ukupne troškove v 10
Softver za Web server q Danas postoje desetine Web servera, komercijalnih i besplatnih, koji mogu da se koriste na raznim platformama q Umesto odluke između svih – podrobno razmotriti samo one koji se najčešće koriste q Na osnovu ispitivanja i analiza dostupnih Web servera na Internetu, nastala je lista servera koji se najčešće koriste, prikazana u nastavku q Tačne procene o udelu pojedinih servera na mreži predmet su rasprave u stručnoj javnosti 11
Softver za Web server Apache Microsoft IIS - Microsoft Internet Information Server IPlanet server (bivši Netscape) Web. Site Web. Star Domino 12
Lokacija Web servera q Mogućnosti postavljanja servera: v Prostorije vlasnika lokacije v Prostorije dobavljača Internet usluga v Prostorije kompanije koja “ugošćava” Web servere q Mrežno rastojanje između servera i korisnika potrebno je minimizovati q Ako su kontrola i bezbednost veoma važni, Web lokaciju treba smestiti na sopstveni server 13
Izmeštanje Web servera q Što je Web lokacija važnija za informatičku infrastrukturu kompanije, to ona mora da bude kvalitetnija i dostupnija Na primer, kompanija koja se isključivo bavi prodajom preko mreže uopšte ne može dopustiti da njena lokacija bude nedostupna v Web lokacija za prodaju je kompanijama koje se bave prodajom preko Interneta važna koliko i standardne telefonske linije ili napajanje el. energijom v 14
Izmeštanje Web servera q Mnoga su preduzeća shvatila da je obučavanje radnika koji bi pouzdano i efikasno održavali lokaciju i obezbeđivali potrebno okruženje, hardvera i softvera preskupo – brigu o Web serveru prepuste specijalizovanim kompanijama q Server se na različite načine može izmestiti iz kompanijskog okruženja, ali su za sve njih bitna dva faktora v Da li će lokacija deliti jedan Web server sa nekom drugom lokacijom v Da li je računar na kojem se lokacija nalazi vlasništvo lokacije ili kompanije koja se bavi iznajmljivanjem usluga servera i održavanjem lokacija 15
Smeštanje lokacije na deljeni server Dva osnovna oblika deljenog ugošćavanja lokacije: 1. prostor na Webu koji je deo drugog servisa i koji je iznajmljen da bi se u njega postavila lokacija ili prostor koji je dat na upotrebu u zamenu za mogućnost postavljanja reklama na lokaciji 2. dobavljač Internet usluga korisniku dodeli direktorijum od nekoliko megabajta na nekom od svojih servera i eventualno pristup zajedničkim alatkama – jednostavnim skriptovima, brojačima poseta ili oglasnoj tabli. URL adresa ovako ugošćene lokacije ima oblik S http: //www. dobavljač. net/~korisnik ili S http: //www. dobavljač. net/korisnik/ 16
Smeštanje lokacije na deljeni server q Usluga ugošćavanja najčešće ne pruža mogućnost prilagođavanja. Na primer, nije moguće dobiti adresu tipa vlasničkidomen. com, saobraćaj prema lokaciji može biti ograničen ili nije dozvoljena upotreba alatki koje su možda potrebne q Prednost ovakvog aranažmana – besplatan ili je njegova cena uračunata u cenu koju vlasnik lokacije plaća za pristup Internetu preko tog dobavljača q Postoje mnoge kompanije koje će pružiti uslugu ugošćavanja u zamenu za lične podatke koji će biti upotrebljeni u marketinške svrhe ili ako im se dozvoli prikazivanje reklame na lokaciji q Deljeno ugošćavanje prikladno je za lične prezentacije i lokacije za zabavu, ali većini će biti potrebne drugačije usluge ugošćavanja lokacije 17
Smeštanje lokacije na deljeni server q Deljeno ugošćavanja sa zasebnim imenom domena (na primer www. vlasnikovdomen. com) koji se često naziva virtueni Web server najčešće nije besplatno q Takvim se aranžmanom dobija i vlastiti direktorijum za CGI programe, statistički izveštaji o pristupanju lokaciji i druge pogodnosti q Cene virtulenog servera na deljenom sistemu mogu znatno da se razlikuju v q Ako se zahteva složena usluga ugošćavanja lokacije, na primer upotrebe pristupa sistemu za upravljanje sadržajem ili sistemu za prodaju preko Interneta, troškovi mogu da budu izuzetno visoki Osnovna mana deljenog ugošćavanja Web lokacije jeste činjenica da će lokacija zajedno sa drugim lokacijama deliti resurse i propusnu moć Web servera odgovor servera na zahteve za podacima može bit usporen v bezbednost podataka nije zagarantovana v 18
Postavljanje lokacije na zaseban server q Zbog loše bezbednosti podataka i otežanog upravljanja lokacijom deljenog ugošćavanja – odluka o postavljanju lokacije na zaseban server q Zasebni serveri imaju mnoge prednosti: v q Mogu se opremiti raznim alatkama i programima koji neće uticati na rad druge lokacije Njihova najveća mana je cena v Postavljanje lokacije na zaseban server može da bude mnogo skuplje od odgovarajuće usluge na deljenom serveru 19
Postavljanje lokacije na zaseban server q Postoje dva načina za ugošćavanje na zasebnom serveru: 1. Specijalizovana kompanija je vlasnik servera i ona je zadužena za njegovo održavanje - potpuno ugošćavanje (eng. fully managed) ili ugošćavanje na zasebnom serveru (eng. dedicated hosting) 2. Korisnik je vlasnik servera (i hardvera i softvera) – odgovoran je za njegovo održavanje – smeštanje servera (eng. co-location) q Ako je izbor smeštanje servera – kompanija koja pruža usluge će obezbediti odgovarajući prostor, napajanje el. energijom, priključak na mrežu, određenu propusnu moć i vrlo ograničeno održavanje servera – ponovno pokretanje ako se blokira ili izradu rezervnih kopija q Usluga smeštanja je najčešće jeftinija od potpunog ugošćavanja 20
Postavljanje lokacije na zaseban server q Mesečni računi za ugošćavanje servera kod najpoznatijih i najkvalitetnijih kompanija, na primer Exodus (www. exodus. com) i Above. Net (www. above. net) mogu da iznose i nekoliko hiljada dolara, u zavisnosti od opreme, propusne moći i dodatnih usluga (kao što su nadgledanje bezbednosti ili održavanje nekoliko kopija lokacije na različitim mestima koja se koriste) q Ako je posao zasnovan na brzoj i robusnoj isporuci Web strana, kvalitetno ugošćavanje je i te kako značajno q Troškovi se isplate – ukoliko se razmotre troškovi održavanja prostorije pune servera koji su povezani sa različitim dobavljačima Internet usluga i koje 24 sata devno, 7 dana u nedelji nadgledaju vrhunski stručnjaci za računare i računarske mreže 21
Upravljanje Web serverima q Kada je server uspešno instaliran i kada počne da isporučuje sadržaj posetiocima lokacije – potrebno ga je svakodnevno održavati. Neprekidno pratiti: v Dostupnost v Performanse v Bezbednost q Sofisticirani programi za nadzor servera šalju zahteve za celim stranama, a ponekad i ključnim elementima - da li se strane u potpunosti formiraju q Ako kompanija kod koje je ugošćen server ne pruža takve usluge – mogu se korisiti specijalizovani programi za nadziranje lokacije – npr. Web. Trends Enterprise Edition (www. webtrends. com) – sadrži module za nadzor servera i alarme q Za potpunu proveru pouzdanosti i dostupnosti lokacije – proveru dostupnosti potrebno je uraditi sa nekolio mesta na mreži 22
Upravljanje sadržajem Pravilo imenovanja datoteka: Izbegavati upotrebu podvlake u imenima datoteka – dve reči spojiti u jednu v Kao nastavak imena datoteke izabrati. html ili. htm, potom je dosledno koristiti v Mogu se uvesti ograničenja u dužini imena datoteka ili šeme za imenovanje datoteka: v S Na primer, neke datoteke mogu sadržati datume, recimo saopštenja za javnost – imena datoteka pr 021299. htm i pr 010500. htm mogu da ukažu na saopštenja za javnost od 02. 1999. i 01. 05. 2000. 23
Uobičajena imena direktorijuma Ime direktorijuma Sadržaj /cgi-bin Tradicionalna lokacija za smeštanje CGI programa koji se koriste na Web lokaciji /scripts Sadrži skriptove koji se koriste na lokaciji. Tu spadaju Java. Script skritpovi, CGI skriptovi, Cold. Fusion, ASP skriptovi. Neki autori prave zasebne direktorijume za različite tipove skriptova, na primer /js za Java. Script /styles ili /css Trebalo bi da sadrži sve spoljašnje kaskadne stilove koji su upotrebljeni na lokaciji /images Sadrži sve slike upotrebljene na lokaciji, uključujući GIF, JPEG i PNG datoteke /video Sadrži video materijal, uglavnom nestrujeće video zapise. /audio Sadrži audio materijal, uglavnom nestrujeće zvučne zapise. /pdfs Sadrži dokumentaciju u formatu pdf. /download ili /binaries Centralna lokacija za smeštanje programa i drugih binarnih datoteka koje je moguće preuzeti sa lokacije. 24
Upravljanje sadržajem – arhitektura tri lokacije Korisnici Produkcijski server isporučuje sadržaj korisnicima Produkcijski “živi” server Autori lokacije Kada su potpuno razvijena, nova svojstva se primenjuju na pomoćnom serveru Razvojni server Velike sturkturne i tehnološke izmene testiraju se na ovom izolovanom serveru Sinhronizovanje sadržaja Pomoćni server sadrži verziju lokacije sa izmenama koje će kasnije biti sinhronizovane sa produkcijskim serverom Autori sadržaja 25
Upravljanje sadržajem q Pravila za upravljanje Web sadržajem: v Nikada ne treba raditi direktno na aktivnoj lokaciji – arhitektura tri lokacije v Redovno proveravati hiperveze na lokaciji v Redovno proveravati detalje na Web stranama – pravopis, pravne napomene i fontove v Obezbediti adresu urednik@domen. com na koju će korisnici moći da šalju predloge, postavljaju pitanja i obaveštavaju o uočenim greškama 26
Analiza posećenosti – brojači poseta q Mnoge lokacije za nadzor posećenosti koriste jednostavne brojače na stranicama q Osim što broje posete lokaciji – ne mogu se upotrebljavati ni za kakvu drugu svrhu q Neki korisnici na osnovu brojača odlučuju da li će detaljnije pregledati lokaciju q Ako brojač ukazuje da je lokaciju posetilo nekoliko korisnika – posetilac će pomisliti da na lokaciji nema ništa zanimljivo i napustiće lokaciju q Brojač je pod punom kontrolom administratora – može biti uvećan broj poseta q Većina profesionalnih i ozbiljnih lokacija ne sadrži brojače – korisnici misle da su lokacije sa brojačima amaterske q PREDLOG: Ne postavljati na lokaciju vidljiv brojač poseta. 27
Analiza posećenosti – dnevnici servera q Dnevnici Web servera sadrže detaljne informacije o tome šta su korisnici tražili na lokaciji q Analizirajući zapise iz dnevnika može se videti koju stranu je korisnik pročitao, a koju nije – odluka koje će se strane staviti bliže matičnoj strani lokacije, a koje dublje u hijerarhiju q Sa dnevnikom servera nije teško raditi – ali zahteva malo planiranja q Dnevnik se mora analizirati veoma pažljivo – postoje specijalizovane organizacije, na primer Hit. Box (www. hitbox. com) q Dnevnici su vrlo slični 28
Analiza posećenosti – dnevnici servera q Za analizu posećenosti Web server vodi dnevnike: Dnevnik pristupa v Dnevnik grešaka v Dnevnik reference u koji se zapisuju informacije o tome sa koje je lokacije određeni korisnik došao v v q Dnevnik agenata – pamti informacije o agentima (najčešće čitačima Weba) koji su upotebljeni za pristupanje lokaciji Često se informacije o referencama i upotrebljenim agentima upisuju u dnevnik pristupa lokaciji 29
Struktura popularnog formata dnevnika q Host identd authenticated-user [Time of request] “request made” result-code bytes-transferred Izvod iz tipičnog dnevnika: ] 206. 251. 142. 45 – [22/Feb/2007: 16: 29: 09 – 0800] “GET /badfile. htm. HTTP/1. 0” 404 222 sj. ix. netcom. com - - [22/Feb/2007: 16: 29: 12 - 0800] “GET /HTTP/1. ‚ 1” 200 7947 sj. ix. netcom. com - - [22/Feb/2007: 16: 29: 13 - 0800] “GET /images/about. gif HTTP/1. 1” 200 506 sj. ix. netcom. com - - [22/Feb/2007: 16: 29: 14 - 0800] “GET /images/staff. gif HTTP/1. 1” 200 580 sj. ix. netcom. com - - [22/Feb/2007: 16: 29: 14 - 0800] “GET /images/products. gif HTTP/1. 1” 200 620 pheoenix. goodnet. com – lsw[22/Feb/2007: 16: 40: 50 - 0800] “GET /images/whatsnewtop. gif HTTP/1. 1” 200 874 30
Polja dnevnika pristupa Polje Opis Primer Host Adresa klijenta koji zahteva objekat. Ovo polje ponekad sadrži samo IP adresu jer ime domena ne može biti razlučeno. 192. 102. 249. 5 Ovo polje sadrži korisničko ime poslato za identifikaciju korisnika. Ukoliko nije zadato, u dnevniku će stajati crtica. - Authenticated user Pc 1. lažnidomen. com bigboss Time of request Ovo polje sadrži datum, kada je objekat zahtevan. On je najčešće u formatu DD/Mon/YYYY: hh: mm: ss-GMT GMT-razlika u odnosu na griničko vreme. [22/feb/ 2007: 13: 52: 54 -08000 Request made Ovo polje sadrži aktuelni HTTP zahtev koji je klijent prosledio. “GET/products/books. html. HTTP/1. 0” Result code Ovo polje sadrži numerički statusni HTTP kôd koji server vraća i koji ukazuje na uspeh ili neuspeh izvršavanja zahteva. 200 U ovom polju zapisan je broj bajtova koji su poslati klijentu. 2358 Bytes transferred 404 31
Analiza posećenosti q U dnevnik se zapisuju zahtevi za svim objektima lokacije – oni vrlo brzo postaju veoma veliki q Datoteke sa dnevnicima treba podeliti na manje celine (po danima, nedeljama ili mesecima) kako bi mogle efikasno da se analiziraju q Postoje mnogi programi – automatizacija analiziranja dnevnika na primer Web. Trends Log Analyzer (www. webtrends. com) 32
Automatizacija analiziranja dnevnika q Jednostavniji programi za analizu samo će pročitati datoteke sa dnevnikom i sačiniti izveštaj q Lokacije sa više od nekoliko hiljada poseta mesečno – za analiziranje dnevnika koristiti programe koji koriste baze podataka da pomoću njih naprave arhivu dnevnika za duži period q Arhiva postaje veoma velika Odluka o tome koliko podataka je zaista potrebno čuvati v Ukoliko lokaciju posećuje veliki broj posetilaca - jedan računar nameni samo za obradu i analizu dnevnika v 33
Analiza upotrebe lokacije q Poslednja svrha snimanja dnevnika – njihova obrada i izrada izveštaja o upotrebljavanju lokacije q Programi za staatističku analizu generišu izveštaje koji ilustruju različite aspekte upotrebe lokacije q Pažljivo analizirati dnevnike servera i dobijene podatke upotrebiti da se poboljša lokaciju ili proceniti njenu efikasnost q Ekonomska efikasnost lokacije – analiza dnevnika iz dužeg vremenskog perioda v Lokacija za prodaju preko Interneta – analizirati troškove poseta i prodaja – isporuka lokacije nije besplatna – dobro poznavati torškove svake posete lokaciji 34
Primer izveštaja o upotrebi lokacije 35
Uobičajeni poslovi pri analizi dnevnih servera Pregled tačaka ulaza Pregled tačaka izlaza Pronalaženje staza kojima se korisnici najčešće kreću Određivanje tačnog trajanja prosečne posete lokaciji Otkrivanje korisnika i domena sa kojih korisnici najčešće posećuju lokaciju Utvrđivanje da li su uobičajene jednokratne ili višekratne posete Uočavanje dnevne šeme poseta Uočavanje šema vezanih za geografiju i jezike Uočavanje čitača koji se najčešće koriste Uočavanje lokacije sa referencama Otkrivanje ključnih reči na pretraživačima Interneta Pregled dnevnika grešaka, otkrivanje greške 404 36
Problem sadržaja lokacije q Odluka o tome koji sadržaj je prihvatljiv za postavljanje na Internet q Filtriranje lokacija – tehnologija koja se najčešće koristi poseban program za filtriranje proverava ocenu sadržaja lokacije pre nego što dozvoli da ona bude učitana ako je zahtevani sadržaj prihvatljiv biće prikazan korisniku u suprotnom v sadržaj neće biti prikazan v q Sa aspekta isporuke lokacije – ključni problem vezan za prihvatljivost sadržaja je adekvatno obeležavanje neprikladnog sadržaja i izbegavanje situacija u kojima je prihvatljiv sadržaj označen kao neprihvatljiv i filtriran 37
Problem sadržaja lokacije q Konzorcijum W 3 C predložio je platformu za izbor sadržaja na Internetu, PICS (http: //www. w 3. org/pub/WWW/PICS/) kao rešenje za filtriranje sadržaja na Webu v Ocenjena lokacija sadržaće određeni element <meta> u zaglavlju HTML dokumenta – taj elemenat sadržaće ocenu prihvatljivosti lokacije v Sadržaj lokacije ocenjuje služba za ocenjivanje sadržaja – grupa, organizacija ili kompanija v U službe za ocenjivanje sadržaja spadaju i nezavisne, neprofitne grupe, poput organizacije Recreational Software Advisory Council (RSAC) koja već ocenjuje prihvatljivost kompjuterskih igara v Ocena mora biti zasnovana na dobro definisanom skupu pravila koji opisuje S kriterijum za ocenjivanje, S skalu vrednosti za svaki aspekt ocenjivanja i S opis kriterijuma koji je upotrebljen za donošenje ocene 38
Problem sadržaja lokacije q Dodeljivanje ocene prikladnosti dokumentu ili lokaciji – u zaglavlje HTML datoteke dodaje se oznaka <meta> q Ona mora da sadrži: v URL adresu organizacije koja je dodelila ocenu v Informacije o sistemu ocenjivanja (verzija, podnosilac i datum donošenja) v Samu ocenu q Da bi se generisala RSAC i PICS ocena, potrebno je samo popuniti obrazac i odgovoriti na nekoliko pitanja o sadržaju loakacije q Nakon što se popuni i priloži upitnik, organizacija podnosiocu zahteva šalje Web stranu ili elektronsku poruku sa sadržajem oznake <meta> koji treba dodati u zaglavlje HTML dokumenta 39
Primer PICS ocene u obliku oznake <meta> <metahttp-equiv=“PICS-Label” Content=‘ (PICS-1. 1” http: //www. rsac. org/ratingsv 01. html l gen true comment “RSACi North America Server” for http: //www. democompany. com on “ 2000. 01. 31 T 03: 52 -0800” r (n 0 s 0 v 0 l 0))’> q Po sistemu ocenjivanja RSACi informacije se ocenjuju od 0 do 4, q Ocena 0 daje se bezazlenim sadržajima, dok ocenu 4 zaslužuju najekstremniji slučajevi q Dok filtrira lokaciju, program za filtriranje čita ocenu i na ossnovu nje odlučuje da li će sadržaj biti prikazan ili ne 40
Problem sadržaja lokacije q Tehnologije filtriranja postaju sve popularnije – Internet Explorer sadrži ugrađen filtar koji radi sa platformom PICS 41
Zaključak q Brza isporuka lokacije veoma je važna – korisnikov opšti utisak o lokaciji zavisi od toga koliko ona brzo reaguje q Kada se lokacija optimizuje – uzeti u obzir sve aspekte isporuke – protokole, servere i mreže q Pri projektovanju Web servera, najpre proceniti potrebe lokacije – na osnovu njih izabrati: hardver, operativni sistem i Web server q Ozbiljno razmotriti i mogućnosti smeštanja lokacije na server – najbolje rešenje je neki vid ugošćavanja q Nakon završetka lokacije – pažljivo nadgledanje – održavanje lokacije ne odnosi se samo na održavanje hardvera i softvera servera, već i na sadržaj lokacije 42
Bezbednost Web aplikacija
Bezbednosne mere u komunikaciji q Računarska konkurencija, osnažila je, s jedne strane, poslovnu konkurenciju, ali isto tako s druge strane doprinela razvoju kriminala koji novim, moćnim sredstvima nastoji da izvrši razne pronevere i gubitke sredstava. q Iz tih razloga bezbednosne mere u komunikaciji putem računarske tehnologije dobijaju na značaju kako u poslovnom tako i u privatnom sektoru. 44
Osnovni ciljevi mera bezbednosti q Osnovni ciljevi mera bezbednosti u sistemima su: v Poverljivost – obezbeđuje nedostupnost informacija neovlašćenim licima. v Integritet – obezbeđuje konzistentnost podataka, sprečavajući neovlašćeno generisanje, promenu i uništenje podataka. v Dostupnost – obezbeđuje da ovlašćeni korisnici uvek mogu da koriste servise i da pristupe informacijama. v Upotreba sistema isključivo od strane ovlašćenih korisnika – obezbeđuje da se resursi sistema ne mogu koristiti od strane neovlašćenih osoba niti na neovlašćen način. 45
Opasnosti od hakera Nakon što je lokacija postavljena i pokrenuta, hakeri mogu da je napadnu na različite načine: v Presretanjem, pregledanjem i menjanjem HTTP poruka koje server razmenjuje sa čitačima korisnika v Pristupanjem datotekama koje se nalaze na serveru i koje mogu da sadrže osetljive informacije kao što su podaci o kreditnim karticama korisnika v Pokretanjem hiljade zahteva serveru koji troši resurse lokacije i posetiocima sprečavaju pristup lokaciji v Inficiranjem računarskim virusom datoteka, diskova ili elektronskih poruka koje dolaze na lokaciju v Zaustavljanjem skriptova zasnovanih na CGI-u da ne bi pristupili serveru 46
Presretanje mrežnih poruka q Kada programi šalju informacije udaljenim računarima preko Interneta, poruke ne putuju direktno od računara koji ih šalje do primaoca poruke q Poruka prolazi kroz veliki broj lokacija na mreži q Zadavanjem komande tracert (trace route – praćenje putanje) – dobija se spisak lokacija kroz koje poruka putuje do udaljene lokacije q Sledeći listing ilustruje putanju kojom je putovala poruka od autorovog računara do lokacije yahoo. com 47
Spisak lokacija kroz koje poruka putuje do udaljene lokacije 48
Poruka putuje kroz mnogo lokacija dok se kreće preko Mreže 49
Presretanje mrežnih poruka q Haker kroz čiji sistem poruka prolazi tokom putovanja može da pročita i izmeni sadržaj poruke u bilo kom trenutku tokom putovanja poruke q Pretpostavimo da poruka sadrži informacije o kreditnim karticama q Dok poruka prolazi kroz hakerov sistem, on može da čita i snima podatke o kreditnim karticama 50
Korišćenje programa Comm. View za pregledanje HTTP poruka q Kada korisnik pošalje sadržaj obrasca “iza scene” čitač šalje podatke iz obrasca serveru korišćenjem protokola HTTP q HTTP prosleđuje poruke kao običan tekst. Što znači da haker veoma lako može da pregleda sadržaj poruke q Korišćenjem programa Comm. View može se pregledati sadržaj velikog broja tipova poruka koje uđu u sistem q Haker može da koristi program sličan Comm. View da bi nadgledao poruke koje dolaze na njegov računar 51
Korišćenje programa Comm. View za pregledanje HTTP poruka 52
Hakeri preuzimaju osetljive informacije iz poruka koje presreću Internet Pošiljalac Primalac Haker Koristi program koji skenira poruke koje dolaze na njegov računar: U potrazi za podacima u obliku broja kreditne kartice i sličnim informacijama 53
Hakeri preuzimaju osetljive informacije iz poruka koje presreću q Pored toga što presreće poruke, haker može i da im menja sadržaj q Pretpostavimo da haker presretne poruku koja sadrži narudžbinu za kupovinu q On može promeniti količinu robe i adresu prispeća, tako da će roba stići njemu umesto stvarnom poručiocu q Zaštita poruka sa lokacije od ovakvih opasnosti, može se realizovati šifrovanjem i bezbednim Web stranicama 54
Hakeri preuzimaju osetljive informacije iz poruka koje presreću Pošiljalac Primalac Originalni paket Hakerov paket Haker 55
Kako hakeri “provaljuju” sistem q Mnogi sistemi omogućavaju korisnicima da se preko Interneta prijave na mrežu sa udaljenih mesta q Kompanija može, na primer, omogućiti svojim trgovačkim putnicima da se prijave na mrežu kompanije, tako da mogu pregledati, formirati ili ažurirati informacije u narudžbini ili pristupiti elektronskoj pošti q Sistem može omogućiti programerima, Web dizajnerima i drugim korisnicima da se povežu sa udaljenih mesta kako bi poslali ili preuzeli datoteke q Kada je sistem osposobljen za daljinski pristup, hakeri mogu da zloupotrebe programe i usluge za daljinski pristup da bi provalili u mrežu 56
Kako hakeri “provaljuju” sistem Ovlašćeni korisnik Mreža Daljinski pristup Haker 57
Kako hakeri “provaljuju” u sistem q Da bi provalio u mrežu koja koristi daljinski pristup, haker obično mora da zada važeće korisničko ime i lozinku q Haker pristupa važećim korisničkim imenima i lozinkama pomoću velikog broja tehnika: Koristi program za razbijanje lozinke koji napada datoteku lozinki sistema v Cilja na opšte podrazumevane naloge za koje mrežni administratori nisu promenili lozinke v Pita korisnika s važećim nalogom koje mu je korisničko ime i lozinka v 58
Softver za razbijanje lozinke q Godinama ranije, hakeri su koristili posebne programe pod nazivom razbijači lozinke koji su uzastopno unosili kombinacije korisničkog imena i lozinke q Korišćenjem razbijača lozinke, haker je za minut mogao da isproba hiljade različitih kombinacija korisničko ime/lozinka q Danas operativni sistemi blokiraju nalog ako korisnik ne unese ispravan par korisničko ime/lozinka u zadatom broju pokušaja q Većina operativnih sistema smešta informacije o korisničkim nalozima u datoteku v Da bi sprečili neovlašćene korisnike da pregledaju informacije o lozinkama ta datoteka je obično šifrovana – međutim na Webu postoje programi koji dešifruju lozinke – najbolje će se zaštiti datoteke kad se zaštite nalozi administratora 59
Zaštita podrazumevanih naloga q Kada se prvi put instalira operativni sistem ili velika aplikacija, softver obično obezbeđuje nekoliko podrazumevanih naloga koji se mogu koristiti da bi se obavila instalacija, proverili parametri sistema i slično q Mnogi korisnici ne isključuju ove podrazumevane naloge nakon instaliranja aplikacije q Mnogi hakeri provaljuju u sistem preko Interneta korišćenjem podrazumevanih naloga koji nisu isključeni q Obavezno promeniti lozinke za sve podrazumevane naloge i, još efikasnije, onemogućiti korišćenje nepotrebnih podrazumevanih naloga q Bezbednost lokacije, često se može poboljšati vremenskim ograničavanjem mnogih korisničkih naloga na pristup samo tokom radnih sati 60
Kako hakeri onemogućavaju pristup sistemu q Kada haker ne može da provali u sistem on može da spreči druge, izvođenjem sabotaža koje troše resurse sistema, ili delimično (usporava lokaciju) ili potpuno (sprečava pristup posetiocima) q Pre nekoliko godina, hakeri su oborili server za elektronsku poštu Bele kuće bombardovanjem elektronske adrese desetinama hiljada velikih elektronskih poruka – iako sami hakeri nisu mogli da provale na lokaciju Bele kuće onemogućili su druge da koriste usluge lokacije q Sledeća HTML datoteka koristi oznaku <meta> da bi usmerila čitač da preuzima veliku grafičku datoteku sa lokacije www. Some. Victim. com svakih 30 sekundi <html> <meta http-equiv=“Refresh” content=“ 30” /> <img src=http: //www. Some. Victim. com/Large. Image. File. jpg /> </html> 61
Kako hakeri onemogućavaju pristup sistemu q Onemogućavanjem keširanja, HTML datoteka primorava Web server da šalje sadržaj zahtevane Web stranice svakih 30 sekundi q Dok server odgovara na ovaj zahtev, on ne može da usluži druge q Haker može, na primer, otvoriti 10 ili više prozora čitača u kojima učitava stranicu q Što je veći broj prozora u kojima haker otvara ovu jednostavnu datoteku, sve više se smanjuje mogućnost servera da usluži druge q Da bi se zaštitila lokacija od ovakve vrste napada može se koristiti barijera (firewall) koja prati ponavljajuće HTTP zahteve ili slične ponovljene zahteve q Pored toga može se pregledati datoteka evidencije lokacije 62
Kako hakeri napadaju CGI skriptove q Godinama su hakeri ciljali CGI skriptove da bi provalili na Web lokacije q Zato što skript programi koji se izvršavaju na Web serveru mogu da pristupe podacima smeštenim na disku servera q Zavisno od obrade koju obavljaju skriptovi, haker može da (zlo)upotrebi skript tako što ga izvrši koristeći vrednosti koje mu dodeljuje izvan procesa slanja obrasca q Ako haker može da pristupi hard disku Web servera, može da zameni skript datoteku vlastitom q Zavisno od obrade koju obavlja hakerov novi skript, moglo bi da prođe dosta vremena dok administratori lokacije ne otkriju promenu 63
Napadi preopterećenjem bafera q Preopterećenje bafera se pojavljuje kada korisnik (koji ne mora da bude haker) pošalje više podataka nego što skript može da smesti v Na primer, korisnik u polje za unos teksta unese više karaktera nego što je predviđeno q Problem sa greškama preopterećenja bafera leži u tome što neki skript jezici izazivaju kvar skript procesora q Zavisno od operativnog sistema koji se izvršava na serveru, takve greške mogu hakeru omogućiti pristup serveru i datotekama koje sadrži q Da bi zloupotrebio grešku preopterećenja bafera, haker prvo izaziva kvar skript procesora – kada pristupi serveru, haker može da kopira ili briše datoteke ili pokreće druge programe koji se nalaze na serveru 64
Kako hakeri napadaju CGI skriptove q Tokom godina, programeri operativnih sistema, programeri skript procesora i programeri koji prave Web skriptove, postali su svesni rizika od greške preopterećenja bafera q Mnoge novije aplikacije ne kvare se nakon greške preopterećenja bafera tako da haker ne može da preuzme kontrolu nad serverom q Na Web lokaciji CERT-a na http: //www. cert. org postoji pregled aplikacija koje su ranjive preopterećenjem bafera, kao i slabosti drugog softvera, poput PHP, Active. X, ASP i sl. 65
Kako barijere (firewall) štite lokaciju q Da bi zaštitili mrežu od napada hakera, mnogi administratori mreže stavljaju barijeru između Interneta i mreže q Barijera filtrira mrežne poruke koje dolaze sa Interneta u mrežu – mrežne poruke su podaci koje programi kao što su čitači Weba i programi za ćaskanje šalju sa jednog računara na drugi q Barijera može da bude posebna hardverska kutija ili računar na kojem je pokrenut odgovarajući softver q Barijera dozvoljava samo HTTP porukama poslatim sa udaljenog čitača da uđu u mrežu, a sprečava poruke iz aplikacija kao što su programi za ćaskanje ili programi za prenos datoteka (kao što je FTP) da uđu u mrežu 66
Korišćenje firewall-a za zaštitu (tipska šema) firewall ruter LAN Internet DMZ – De Militarizovana Zona Po pravilu, firewall se realizuje kao uređaj sa dva ili više ethernet interfejsa. U zavisnosti od načina realizacije firewall može da bude: v Softverski – softver koji se instalira na računar opšte namene v Hardverski – namenski razvijen računar sa odgovarajućim softverom v Integrisan sa ruterom 67
DMZ q U DMZ se smeštaju serveri koji treba da budu vidljivi i sa Interneta i iz lokalne mreže q U slučaju postojanja DMZ-a, firewall najčešće ne dozvoljava direktnu komunikaciju LAN <-> Internet već isključivo kroz DMZ q U slučaju kompromitovanja nekog od servera u DMZ-u to ne znači da je automatski cela mreža kompromitovana 68
- Slides: 68