Çevrildiði diller: Castellano Deutsch English Français Italiano Nederlands Türkce |
![]() Atif Ghaffar tarafýndan Yazar hakkýnda:
Ýsviçre'de web sorumlusu ve unix yöneticisi olarak çalýþýyorum .
Tutkularým arasýnda Linux, unix, Perl, Apache ve GPL yazýlýmlarý var.
Benim hakkýmda daha çok bilgi Ýçerik: |
Özet:
Ben, evde ip maskelemesini ve firewall'unu kullanarak Linux'le yüklenen küçük LAN(yerel network alaný) kullanýyorum. Network'ümdeki bütün makinelerin internet üzerindeki bütün bilgileri kabul etmesine raðmen,sadece bu makine internetten ip maskelemesini uygun görüyor. En son Apache makalemde, ip adreslerinin nasýl dönüþtürüleceðini gösterdim.Bu makalemde firewall'deki veya güvenlik anlaþmalarýndaki kurallarý deðiþtirmeden internet üzerinde firewall'un arkasýnda web sunucusunun nasýl oluþturulacaðýný göstereceðim. Ayrýca, bu makalede bu hedefi baþarabilmek için Apache's ProxyPass bildiriminin nasýl kullanýlacaðýný göreceðiz. Bu makalenin hedef kitlesi Sistem Yöneticileri veya evde ,iþ yerinde orta büyüklükte LAN için küçüðünü üreten kiþilerdir.
Benim LAN'ýmda uzun bir süredir,router(maskeleme ve firewall'ü yapan makine)
web sunucusu,mail sunucusu,ftp sunucusu,dns sunucusu olarak da görev
alýyordu.
Bir gün,firewall'ün arkasýndaki makineden web içeriðini sunma ihtiyacý
duydum.
Ayrýca bazý dökümanlarý (video sunucusu,görüntü akýþý(streaming images)
sunucularý) network'un arkasýndaki SGI IRIX kutusundan sunmak istedim.
Bu makinenin internete tüm giriþleri vardý,fakat internet kullanýcýlarý
makineye baðlanamýyorlardý.
IRIX makinesini network üzerine koymaya hiç niyetim yoktu ,ama insanlarýn web
sunucusuna baðlanabilmeleri için bu gerekiyordu.
Ayný probleme, iþte benzer network ve Firewall'le karþý koyuyordum.
Her seferinde birileri internetten gösteri amaçlý uygun web sunucusu geliþmelerini
istedi,firewall'deki kurallarýn deðiþmeye ihtiyacý vardý ve siz makineye
network'ün güvenlik anlaþmasýný ve dýþ ip adreslerini vermek zorundaydýnýz.
Birçok çözümü düþündükten sonra, Apache ve onun ProxyPass bildirimiyle bir
tane denedim.
ProxyPass, Apache sunucunuzla modül olarak derlenmek ve yüklenmek için
mod_proxy'ye ihtiyaç duyar.
Þimdi ProxyPass'in Apache manuellerinden alýnmýþ ifadeleri
Bu bildirim uzak sunucularýn yerel sunucunun alanýna girmesine izin verir; yerel sunucu göreneksel anlamda proxy olarak görev almaz;fakat uzak sunucularýn aynasý gibi gözükür. <path> yerel asýl path'in ismi; url> uzak sunucular için bölümsel URL .
Farzedin ki yerel sunucunun adresi var http://wibble.org/; ve
ProxyPass /mirror/foo/ http://foo.com/yerel isteðe sebep olacak <http://wibble.org/mirror/foo/bar>için <http://foo.com/bar> de proxy isteðine dönüþüm.
Ýç vidyo sunucusunu dýþ web sunucusuna dönüþrürme(mapping).
Ýç network: hometranet.home 192.168.1.0/255.255.255.0
( internet, intranet, extranet mevzularýnda ,ben ev network'ünde
hometranet kullanýyorum.)
Dýþ network: developer.ch 193.192.254.50
Vidyo sunucularý (iç) cam.hometranet.home da çalýþýr
vidyo görüntülerinin url'den sunumuyla
http://cam.hometranet.home:5555/cams/sony/stream
ve
hala burada http://cam.hometranet.home:5555/cams/sony/image kameradan
görüntülenir
Burayý ziyaret ettiðim zaman
http://mozilla.developer.ch/stream urls'den bütün sonuçlarý görmek
istedim
ve
http://mozilla.developer.ch/image
Bu, kolayca httpd.conf or srm.conf'a sýradakileri ekleyerek Apache'den
ProxyPasskomutunu kulanarak yaðýlabilir.
ProxyPass /video http://cam.hometranet.home:5555/cams/sony/stream
ProxyPass /video http://cam.hometranet.home:5555/cams/sony/stream
Þimdi, web sunucusunu tekrar baþlattýktan sonra (mod_proxy uygun olsaydý),
http://mozilla.developer.ch/image ? web sunucusundan cevaplar.
Siteyi ziyaret eden kullanýcýlar için onun þeffaflýðý ve hemen hemen*
güvenliksizliði, bu metodu kullanarak tatlýya baðlandý.
*hemen hemen 'i kulanmamýn nedeni internette tam güvenlik diye
birþey yoktur. :)
Proxypass asýl makineden farklý bir makineye dönüþüm için kullanýlabilinir.
Örneðin:
docs.sun.developer.ch , solsparc.hometranet.home 'a dönþür
NameVirtualHost 193.192.254.50 <VirtualHost 193.192.254.50> ServerName sun.docs.developer.ch ProxyPass / http://solsparc.hometranet.home/ TransferLog /net/www/logs/sun.docs.access ErrorLog /net/www/logs/sun.docs.errror </VirtualServer>Ana makinelere onlarýn ip adreslerini kullanarak da gönderi yapabilirsin
<VirtualHost 193.192.254.50> ServerName sun.docs.developer.ch ProxyPass / http://192.168.1.7/ TransferLog /net/www/logs/sun.docs.access ErrorLog /net/www/logs/sun.docs.errror </VirtualServer>
Ana web sunucunuz kullanýcýlarýnýzýn lehinde iç web sunucularýna istek
yapýyorsa,hiçbir esas makineye baðlanamazsýn,onun yerine bütün istekleri
kaynak makinede girmek zorundsýn.
Yukarki olayda solsparc.hometranet.home 'a girmek yerine kayýtlarý esas
makine olan sun.docs.developer.ch 'de girerim.
sun.docs.developer.ch 'de girmenin sonuçlarý(sahte sonuçlar)
197.0.22.3 - - [05/Nov/1999:22:09:04 +0100] "GET /index.html HTTP/1.0" 304 - 187.0.45.67 - - [05/Nov/1999:22:09:04 +0100] "GET /navi.html HTTP/1.0" 304 - 177.0.5.45 - - [05/Nov/1999:22:09:04 +0100] "GET /entrees.html HTTP/1.0" 304 - 227.0.9.67 - - [05/Nov/1999:22:09:15 +0100] "GET /complets.html HTTP/1.0" 304 - 137.0.7.23 - - [05/Nov/1999:22:09:19 +0100] "GET /menu_poisson.html HTTP/1.0" 200 841 193.192.245.73 - - [05/Nov/1999:22:09:25 +0100] "GET /volailles.html HTTP/1.0" 304 - 192.167.0.1 - - [05/Nov/1999:22:09:44 +0100] "GET /agneau.html HTTP/1.0" 304 -solsparc.hometranet.home 'da girmenin sonuçlarý
192.168.1.1 - - [05/Nov/1999:22:09:04 +0100] "GET /index.html HTTP/1.0" 304 - 192.168.1.1 - - [05/Nov/1999:22:09:04 +0100] "GET /navi.html HTTP/1.0" 304 - 192.168.1.1 - - [05/Nov/1999:22:09:04 +0100] "GET /entrees.html HTTP/1.0" 304 - 192.168.1.1 - - [05/Nov/1999:22:09:15 +0100] "GET /complets.html HTTP/1.0" 304 - 192.168.1.1 - - [05/Nov/1999:22:09:19 +0100] "GET /menu_poisson.html HTTP/1.0" 200 841 192.168.1.1 - - [05/Nov/1999:22:09:25 +0100] "GET /volailles.html HTTP/1.0" 304 - 192.168.1.1 - - [05/Nov/1999:22:09:44 +0100] "GET /agneau.html HTTP/1.0" 304 - 192.168.1.1 - - [05/Nov/1999:22:09:56 +0100] "GET /desserts_ind.html HTTP/1.0" 304 - 192.168.1.1 - - [05/Nov/1999:22:10:00 +0100] "GET /cocktails.html HTTP/1.0" 304 - 192.168.1.1 - - [05/Nov/1999:22:10:10 +0100] "GET /cgi-bin/commande.cgi HTTP/1.0" 200 2146Ayný baþvurular ayrýca ip numaralarý veya isimle belirtilen ACLs (access control list) için kullanýlýr.
<VirtualHost 193.192.254.50> ServerName sun.docs.developer.ch #this rule only allows users from good.host.com domain <Location /private> order deny,allow deny from all allow from good.host.com </Location> #This rule deny's the uncool Microsoft's monopoly helper browser. BrowserMatch MSIE uncool_browser <Location /coolpages> order allow,deny allow from all deny from env=uncool_browser </Location> #This rule only allows users that are in your passwd.httpd file <Location /coolpages> AuthName "only for registered users" AuthType Basic AuthUserFile "/etc/httpd/passwd.httpd" <Limit GET> require valid-user </Limit> </Location> ProxyPass / http://192.168.1.7/ TransferLog /net/www/logs/sun.docs.access ErrorLog /net/www/logs/sun.docs.errror </VirtualServer>
|
Websayfalarý
LinuxFocus'un Editörleri tarafýndan sürdürülüyor
© Atif Ghaffar LinuxFocus.org 2000 hatalarý veya Linuxfocus'a görüþlerinizi bildirmek için týklayýnýz |
2000-04-23, lfparser versiyon 1.5 'le oluþturulmuþtur.