Διαφορά μεταξύ των αναθεωρήσεων του «Proxy (Internet Sharing) tutorial»

Από PWMN
Μετάβαση στην πλοήγηση Πήδηση στην αναζήτηση
(AOpCYjEOTnZkNzDZkcH)
(Έσβησα τα σπαμ)
 
(Μία ενδιάμεση έκδοση από ένα χρήστη δεν εμφανίζεται)
Γραμμή 1: Γραμμή 1:
comment2
+
== Γενικά για τον Proxy ==
http://iasjaghs.com/6/recipe-for-orange-roughy-fish.html recipe for peanut butter biscuits
+
 
http://sadsggh.com/8/american-history-x-not-welcome.html american history x bebo
+
== Ρύθμιση Proxy ==
http://dartaus.com/6/amruta-khanvilkar-wallpaper.html american wallpaper store
+
=== Proxy στους Browsers ===
http://yaslaksh.com/3/cheapest-wireless-internet-plans.html san onofre powerplant
+
==== Ρύθμιση Proxy σε Firefox ====
http://taretyeps.com/7/mn-plumbing-code-book.html mn phone book white pages
+
Στα Preferences του Firefox, επιλέγουμε Advanced>Network
http://palsjjds.com/2/madonna-hairy-armpit.html designer leather dining chairs
+
 
http://dartaus.com/8/name-by-the-goo-goo-dolls.html name cards for table
+
[[Εικόνα:Firefox_proxy_1.png]]
http://eawtyew.com/5/post-office-norcross-ga.html post office online uk
+
 
http://qasdgad.com/10/final-fantasy-tactics-wallpapers.html final mix wallpaper
+
Επιλέγουμε Settings
http://qasdgad.com/10/centennial-high-school-map.html cemap courses in london
+
 
http://uaskajhs.com/1/the-book-wakeskate.html the book that changed my life
+
[[Εικόνα:Firefox_proxy_2.png]]
http://eawtyew.com/11/american-conquest-computer-game.html american consulate in chengdu
+
 
http://qasdgad.com/7/new-mobile-phone-technology.html york new york telephone
+
*Στη θέση του 10.140.1.1 βάζουμε την ip ή το dns name του proxy server και όπου 8080 την port του.
http://wasgsjlt.com/2/industry-in-america.html child labor america
+
*Στη θέση No proxy for συμπληρώνουμε 10.0.0.0/8 και .pwmn (τα χωρίζουμε με ",")
http://iasjaghs.com/1/week-11-fantasy-football.html black cike week
+
 
http://qasdgad.com/8/wooden-picture-frame-designs.html another picture to burn music video
+
==== Ρύθμιση Proxy σε Internet Explorer ====
http://eawtyew.com/3/mecklenburg-schools-summer.html credit suisse summer analyst
+
 
http://dartaus.com/5/jobs-at-folsom-lake.html jobs at franklin pierce
+
=== Proxy στο IRC ===
http://iasjaghs.com/8/pregnancy-34-weeks.html pregnancy week 17
+
 
http://wasgsjlt.com/8/family-planning-ppt.html nafco plank flooring
+
=== Proxy στο MSN ===
http://palsjjds.com/5/neurocysticercosis-life-cycle.html india sanctuary wildlife
+
 
http://wasgsjlt.com/1/wallpapers-hello-kitty.html new desktop wallpaper
+
=== Proxy σε Torrents ===
http://wasgsjlt.com/10/job-description-for-supervisors.html job evaluation types
+
 
http://iasjaghs.com/9/larkfield-road-11731.html lawai road poipu beach kauai
+
== Proxy Servers ==
http://palsjjds.com/2/timex-ironman-triathlon-gps-speed-distance-watch.html timex ironman triathlon digital watch with heart
+
 
http://sadsggh.com/5/pictures-of-birthday-stuff.html pictures of blood in stool
+
=== Windows Proxy Servers ===
http://uaskajhs.com/4/oro-valley-magazine.html walther ppks magazines
+
=== Mikrotik Proxy Server ===
http://palsjjds.com/2/female-reproductive-system-picture.html bourne ultimatum pictures
+
IP>Web Proxy
http://eawtyew.com/9/used-scuba-diving-equipment.html used snowmobile mn
+
 
http://uaskajhs.com/8/dv9700t-notebook-review.html dv6500t cto notebook
+
[[Εικόνα:WebProxy.png]]
http://dartaus.com/8/geographical-map-of-world.html geographical map of asia
+
 
http://yaslaksh.com/3/politique-culturelle-international.html what is a culturegram
+
Add Access 10.0.0.0/8 (ολο το wireless network)
http://sadsggh.com/5/stampede-nickname-generator.html jonas and significance of name
+
 
http://qasdgad.com/9/americanus-ancylostoma-duodenale.html americans with disabilities act accessibility
+
[[Εικόνα:Settings.png]]
http://qasdgad.com/11/gangarams-books-online.html the forgotten garden book
+
 
http://taretyeps.com/3/red-carpet-hair-styles.html combi transition high chair
+
Port: Η πορτα του proxy server - συνηθως βαζουμε την 8080
http://uaskajhs.com/6/stylish-haircut-ideas.html information on german shorthaired
+
 
http://yaslaksh.com/7/marlon-brando-streetcar-named.html married how to change name
+
Maximum Cache Size: Οσο μεγαλυτερο τοσο πιο γρηγορο browsing προς τους χρηστες του proxy και λιγοτερο internet traffic για τον server. Αν εχετε σκληρο δισκο βαλτε το να ειναι αρκετα GB.
http://wasgsjlt.com/8/pickler-prom-dress-picture.html pickler prom dress picture
+
 
http://palsjjds.com/2/storm-door-weatherstripping.html teaching kids about weather
+
 
http://uaskajhs.com/4/what-is-white-culture.html modern greek culture and
+
==== '''Limits''' ====
http://taretyeps.com/5/celebrity-last-names.html oregon business name registry
+
 
http://eawtyew.com/11/w-foothill-upland-ca-91786.html pension plan participants
+
'''(σημείωση: καθ' όλο στο setup τα πακέτα ξεκινάνε από τον proxy και καταλήγουν στους clients, άρα source ip - port - interface είναι ο proxy και dest ip - port - interface - target είναι οι clients)'''
http://palsjjds.com/9/dremelj-heavy-weather.html american weather network
+
 
http://eawtyew.com/11/samsung-a560-phone.html samsung windows phone
+
Αρχικά λέμε στον mikrotik proxy να ακούει μόνο σε ένα interface ούτως ώστε να βάλουμε limits μετά στο συγκεκριμένο (εξ' ορισμού ο mikrotik proxy ακούει σε όλα τα διαθέσιμα Ιnterfaces). Θεωρώ ότι ο proxy θέλω να τρέχει μόνο στο interface AcessPoint, ip 10.140.3.1,
http://palsjjds.com/3/don-t-talk-watch-lyrics.html enicar watch history
+
port 8080.
http://qasdgad.com/6/34th-street-office-to-let.html 3516 47th office for
+
 
http://dartaus.com/4/picture-of-vlad-the.html picture of your world
+
Ip -> Firewall -> καρτέλα Filter Rules -> πατάμε add (τον κόκκινο σταυρό)
http://wasgsjlt.com/4/briana-banks-american-nymphette.html america one payment systems
+
 
http://yaslaksh.com/3/society-of-american-archivists-annual.html liberals are ruining america
+
Aλλάζω τα πεδία όπως φαίνεται παρακάτω (σημείωση: αν ο proxy δεν τρέχει στο mikrotik αλλά σε μηχάνημα πίσω από αυτό, απλά παραλείπουμε αυτό το βήμα και προχωράμε στο μαρκάρισμα πακέτων)
http://eawtyew.com/2/still-birth-pictures.html clostridium perfringens picture
+
 
http://yaslaksh.com/10/indian-dessert-recipes.html indian snack recipes
+
[[Εικόνα:Drop_connections1.JPG]]
http://taretyeps.com/2/bulova-watches-serial.html buick engine serial
+
 
http://eawtyew.com/11/handheld-book-scanner.html scrapbook stickers of
+
 
http://wasgsjlt.com/2/owings-mills-maryland-map.html belkin port mapping
+
Στη συνέχεια , στην καρτέλα Action επιλέγω Drop
http://sadsggh.com/5/tulip-city-rod-and-gun.html m 3 submachine gun
+
 
http://yaslaksh.com/4/dairy-farmers-phone.html mary had a little lamb telephone
+
[[Εικόνα:Drop_connections2.JPG]]
http://sadsggh.com/8/crystaldecisions-reportappserver-commlayer-version-102-36000-culture.html crystaldecisions reportappserver commlayer version 10.5 3700.0 culture
+
 
http://uaskajhs.com/11/best-used-convertibles.html michigan used car lemon law
+
 
http://qasdgad.com/11/richland-high-school-year-book.html richland community college bookstore
+
Στη συνέχεια, μαρκάρουμε τα proxy πακέτα. Ip -> Firewall -> Mangle -> Καρτέλα General
http://wasgsjlt.com/10/print-key-pro-serial.html garavito serial killer
+
 
 +
('''σημείωση:''' αν ο proxy βρίσκεται σε μηχάνημα πίσω από το mikrotik και απλά θέλω να προσθέσω limits, τότε στο chain επιλέγω forward και αλλάζω το source address - port ώστε να δείχνουν στον proxy στο άλλο μηχάνημα)
 +
 
 +
[[Εικόνα:Mangle1.JPG]]
 +
 
 +
 
 +
Στην καρτέλα Action επιλέγω Mark Packet και από κάτω επιλέγουμε ένα όνομα
 +
 
 +
[[Εικόνα:Mangle2.JPG]]
 +
 
 +
 
 +
===== Limit ανά proxy client =====
 +
 
 +
(Αν απλά θέλουμε να βάλουμε συνολικό limit στον proxy και να αφήσουμε τους clients να "φαγωθούν" για το ποιος θα κατεβάζει περισσότερο, προχωράμε στο επόμενο βήμα, αλλιώς σ' αυτό το βήμα όλοι οι clients θα έχουν τα ίδια limits στον proxy)
 +
 
 +
Αρχικά σετάρουμε ένα pcq (per connection queue) για τον proxy.
 +
 
 +
Queues -> Queue Types -> Add -> Καρτέλα General
 +
 
 +
Επιλέγουμε όνομα και kind -> pcq
 +
 
 +
[[Εικόνα:Queue1.JPG]]
 +
 
 +
 
 +
Καρτέλα Settings -> Στο rate επιλέγουμε limit ανά client (είτε download είτε upload, θα διευκρινιστεί μετά αυτό). Εδώ έχω επιλέξει limit 80Kbit (10KByte).
 +
 
 +
Eπιλέγουμε Src.Address και Src.Port.  -> Πατάμε ΟΚ
 +
 
 +
[[Εικόνα:Queue2.JPG]]
 +
 
 +
 
 +
Στη συνέχεια, Queues -> Queue Tree -> Add -> Καρτέλα General
 +
 
 +
Βάζουμε όνομα, επιλέγουμε Parent -> Global-out (αν το pcq που μόλις φτιάξαμε αναφέρεται σε upload , τότε επιλέγουμε global-in )
 +
 
 +
Packet Mark -> το όνομα που είχαμε δηλώσει προηγουμένως, ομοίως σε Queue Type
 +
 
 +
(προκειμένου να βάλουμε limit ανά client και σε upload, επαναλαμβάνουμε την διαδικασία με τα queues φτιάχνοντας 2 διαφορετικά queue types, επιλέγοντας αντίστοιχα Parent (global out για download και global-in για upload) και Queue Types στο Queue Tree).
 +
 
 +
[[Εικόνα:Queue3.JPG]]
 +
 
 +
 
 +
===== Συνολικό Limit στον proxy =====
 +
 
 +
Queues -> Simple Queues -> Add -> Καρτέλα General
 +
 
 +
Bάζουμε όνομα, Target download (συνολικό download limit από όλους τους clients), Target Upload (συνολικό upload limit από όλους τους clients)
 +
 
 +
[[Εικόνα:Queue4.JPG]]
 +
 
 +
 
 +
Kαρτέλα Advanced -> Στο Packet Mark βάζουμε το όνομα με το οποίο έχουμε μαρκάρει τα proxy πακέτα σε προηγούμενο βήμα.
 +
 
 +
[[Εικόνα:Queue5.JPG]]
 +
 
 +
=== Linux Proxy Servers ===
 +
==== Squid ====
 +
http://www.squid-cache.org
 +
 
 +
O Squid είναι ένας HTTP/1.0 proxy με πολλές δυνατότηετες όπως caching, access control, authorization και logging.  
 +
 
 +
H δυνατότητα του squid να κάνει caching τις σελίδες που γίνονται access, ελαχιστοποιεί το απαιτούμενο προς το internet bandwidth και δίνει συχνά την εντύπωση ταχύτατης σύνδεσης στο internet.
 +
 
 +
Οι περισσότερες ρυθμίσεις του squid βρίσκονται στο squid.conf (συνήθως στο /etc/squid/squid.conf).
 +
 
 +
===== Squid: Βασικές Ρυθμίσεις =====
 +
Στο squid.conf:
 +
 
 +
http_port 3128
 +
cache_mem 400 MB
 +
 
 +
*ΠΡΟΣΟΧΗ: Squid -z για τη δημιουργία των αρχείων της cache
 +
 
 +
===== Squid: Access Control Lists =====
 +
Έτσι επιτρέπουμε την πρόσβαση στον proxy του 10.140.1.2.
 +
 
 +
Στο squid.conf:
 +
acl UserName src 10.140.1.2/255.225.255.255
 +
http_access allow UserName
 +
icp_access allow UserName
 +
 
 +
===== Squid: Bandwidth Control (Pools) =====
 +
Τα pools είναι ο μηχανισμός του squid για περιορισμό του bandwidth. Οι περιορισμοί αυτοί μπορούν να γίνουν ανά subnet, user κλπ. και να ακολουθήσουν διάφορες πολιτικές περιορισμού. Μία από τις πιο ενδιαφέρουσες είναι η level 2 pool στην οποία μπορούμε να περιορίσουμε το bandwidth που μοιράζονται όλοι οι χρήστες καθώς και το maximum bandwidth του καθενός.
 +
 
 +
 
 +
 
 +
Οι κανονισμοί λειτουργούν ως εξής:
 +
 
 +
Ο κανονας ορίζεται σαν bw_limit/Pool_Size. Το δεύτερο είναι το μέγεθος της pool (εδώ 3000000bytes δηλαδή ~3MB) το οποίο επιτρέπεται να αδειάσει χωρίς περιορισμούς στην ταχύτητα. Αυτό επιτρέπει ταχύτατη πρόσβαση σε ιστοσελίδες μιας και οι ιστοσελίδες είναι συνήθως λιγότερες του 1MB. Όταν αδειάσει το pool (των 3ΜΒ εδώ) τότε ενεργοποιείται ο περιορισμός bw_limit (εδώ είναι 20000bytes/sec δηλαδή ~20kbytes/sec).
 +
 
 +
====== Το pool level 1 επιτρέπει έλεγχο του bandwidth συνολικά. ======
 +
Στο squid.conf:
 +
all src 0.0.0.0/0.0.0.0
 +
delay_pools 1
 +
delay_class 1 1
 +
delay_parameters 1 20000/3000000
 +
delay_access 1 allow all
 +
 
 +
Συνολικά FULL SPEED μέχρι τα 3000000 bytes και στη συνέχεια 20000 bytes/sec
 +
 
 +
====== Το pool level 2 επιτρέπει εκτός από συνολικό έλεγχο, και έλεγχο ανά χρήστη ======
 +
Εδώ περιλαμβάνεται ο κανόνας της level 1 pool (20000/3000000) αλλά και ο level 2 (13000/2000000)
 +
 
 +
Η δεύτερη παράμετρος (20000/3000000) στο delay_parameters δηλώνει τον κανονισμό για όλους τους users ενώ η τρίτη (13000/2000000) αφορά τους μεμονομένους χρήστες.
 +
 
 +
Στο squid.conf:
 +
acl all src 0.0.0.0/0.0.0.0
 +
delay_pools 1
 +
delay_class 1 2
 +
delay_parameters 1 20000/3000000 13000/2000000
 +
delay_access 1 allow all
 +
 
 +
Συνολικά FULL SPEED μέχρι τα 3000000 bytes και στη συνέχεια 20000 bytes/sec για όλους τους χρήστες και
 +
FULL SPEED μέχρι τα 2000000 bytes και 13000 bytes/sec ανά χρήστη
 +
 
 +
 
 +
====== Ένα working squid.conf ======
 +
 
 +
http_port 8080
 +
hierarchy_stoplist cgi-bin ?
 +
acl QUERY urlpath_regex cgi-bin \?
 +
no_cache deny QUERY
 +
#
 +
#CACHE SIZE
 +
#-----------------
 +
cache_mem 400 MB
 +
#
 +
auth_param basic children 5
 +
auth_param basic realm Squid proxy-caching web server
 +
auth_param basic credentialsttl 2 hours
 +
auth_param basic casesensitive off
 +
#Suggested default:
 +
refresh_pattern ^ftp: 1440 20% 10080
 +
refresh_pattern ^gopher: 1440 0% 1440
 +
refresh_pattern . 0 20% 4320
 +
#
 +
# ACCESS CONTROLS
 +
# -----------------------------------------------------------------------------
 +
#Recommended minimum configuration:
 +
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/8
 +
acl SSL_ports port 443 563
 +
acl Safe_ports port 6667 # irc
 +
acl Safe_ports port 81 # http-81
 +
acl Safe_ports port 800 # http-800
 +
acl Safe_ports port 80 # http
 +
acl Safe_ports port 21 # ftp
 +
acl Safe_ports port 443 563 # https, snews
 +
acl Safe_ports port 70 # gopher
 +
acl Safe_ports port 210 # wais
 +
acl Safe_ports port 1025-65535 # unregistered ports
 +
acl Safe_ports port 280 # http-mgmt
 +
acl Safe_ports port 488 # gss-http
 +
acl Safe_ports port 591 # filemaker
 +
acl Safe_ports port 777 # multiling http
 +
acl CONNECT method CONNECT
 +
#
 +
# INSERT YOUR OWN RULE(S) HERE TO ALLOW ACCESS FROM YOUR CLIENTS
 +
#----------------------------------------------------------------------------------------------------------------------
 +
acl all src 0.0.0.0/0.0.0.0
 +
delay_pools 1
 +
delay_class 1 2
 +
delay_parameters 1 45500/3000000 33000/2000000
 +
delay_access 1 allow all
 +
#
 +
#USERS
 +
#---------
 +
acl proxy_username src 10.140.1.1/255.255.255.255
 +
http_access allow proxy_username
 +
icp_access allow proxy_username
 +
#
 +
#END USERS
 +
http_access deny all
 +
http_reply_access allow all
 +
icp_access allow all
 +
#
 +
#  HOSTNAME
 +
#---------------------
 +
visible_hostname myhostname.something
 +
coredump_dir /var/lib/squid/cache
 +
 
 +
Σημείωση:
 +
*Επιτρέπει μόνο τον user proxy_username με ip 10.140.1.1
 +
*To hostname είναι στο visible_hostname και είναι το myhostaname.something. Αυτό το αλλάζετε ανάλογα με το hostname σας
 +
[[Category: Δικτυακά]]
 +
[[Category: Ενημερωτικά Κείμενα ]]

Τελευταία αναθεώρηση της 16:35, 4 Οκτωβρίου 2020

Γενικά για τον Proxy[επεξεργασία]

Ρύθμιση Proxy[επεξεργασία]

Proxy στους Browsers[επεξεργασία]

Ρύθμιση Proxy σε Firefox[επεξεργασία]

Στα Preferences του Firefox, επιλέγουμε Advanced>Network

Firefox proxy 1.png

Επιλέγουμε Settings

Firefox proxy 2.png

  • Στη θέση του 10.140.1.1 βάζουμε την ip ή το dns name του proxy server και όπου 8080 την port του.
  • Στη θέση No proxy for συμπληρώνουμε 10.0.0.0/8 και .pwmn (τα χωρίζουμε με ",")

Ρύθμιση Proxy σε Internet Explorer[επεξεργασία]

Proxy στο IRC[επεξεργασία]

Proxy στο MSN[επεξεργασία]

Proxy σε Torrents[επεξεργασία]

Proxy Servers[επεξεργασία]

Windows Proxy Servers[επεξεργασία]

Mikrotik Proxy Server[επεξεργασία]

IP>Web Proxy

WebProxy.png

Add Access 10.0.0.0/8 (ολο το wireless network)

Settings.png

Port: Η πορτα του proxy server - συνηθως βαζουμε την 8080

Maximum Cache Size: Οσο μεγαλυτερο τοσο πιο γρηγορο browsing προς τους χρηστες του proxy και λιγοτερο internet traffic για τον server. Αν εχετε σκληρο δισκο βαλτε το να ειναι αρκετα GB.


Limits[επεξεργασία]

(σημείωση: καθ' όλο στο setup τα πακέτα ξεκινάνε από τον proxy και καταλήγουν στους clients, άρα source ip - port - interface είναι ο proxy και dest ip - port - interface - target είναι οι clients)

Αρχικά λέμε στον mikrotik proxy να ακούει μόνο σε ένα interface ούτως ώστε να βάλουμε limits μετά στο συγκεκριμένο (εξ' ορισμού ο mikrotik proxy ακούει σε όλα τα διαθέσιμα Ιnterfaces). Θεωρώ ότι ο proxy θέλω να τρέχει μόνο στο interface AcessPoint, ip 10.140.3.1, port 8080.

Ip -> Firewall -> καρτέλα Filter Rules -> πατάμε add (τον κόκκινο σταυρό)

Aλλάζω τα πεδία όπως φαίνεται παρακάτω (σημείωση: αν ο proxy δεν τρέχει στο mikrotik αλλά σε μηχάνημα πίσω από αυτό, απλά παραλείπουμε αυτό το βήμα και προχωράμε στο μαρκάρισμα πακέτων)

Drop connections1.JPG


Στη συνέχεια , στην καρτέλα Action επιλέγω Drop

Drop connections2.JPG


Στη συνέχεια, μαρκάρουμε τα proxy πακέτα. Ip -> Firewall -> Mangle -> Καρτέλα General

(σημείωση: αν ο proxy βρίσκεται σε μηχάνημα πίσω από το mikrotik και απλά θέλω να προσθέσω limits, τότε στο chain επιλέγω forward και αλλάζω το source address - port ώστε να δείχνουν στον proxy στο άλλο μηχάνημα)

Mangle1.JPG


Στην καρτέλα Action επιλέγω Mark Packet και από κάτω επιλέγουμε ένα όνομα

Mangle2.JPG


Limit ανά proxy client[επεξεργασία]

(Αν απλά θέλουμε να βάλουμε συνολικό limit στον proxy και να αφήσουμε τους clients να "φαγωθούν" για το ποιος θα κατεβάζει περισσότερο, προχωράμε στο επόμενο βήμα, αλλιώς σ' αυτό το βήμα όλοι οι clients θα έχουν τα ίδια limits στον proxy)

Αρχικά σετάρουμε ένα pcq (per connection queue) για τον proxy.

Queues -> Queue Types -> Add -> Καρτέλα General

Επιλέγουμε όνομα και kind -> pcq

Queue1.JPG


Καρτέλα Settings -> Στο rate επιλέγουμε limit ανά client (είτε download είτε upload, θα διευκρινιστεί μετά αυτό). Εδώ έχω επιλέξει limit 80Kbit (10KByte).

Eπιλέγουμε Src.Address και Src.Port. -> Πατάμε ΟΚ

Queue2.JPG


Στη συνέχεια, Queues -> Queue Tree -> Add -> Καρτέλα General

Βάζουμε όνομα, επιλέγουμε Parent -> Global-out (αν το pcq που μόλις φτιάξαμε αναφέρεται σε upload , τότε επιλέγουμε global-in )

Packet Mark -> το όνομα που είχαμε δηλώσει προηγουμένως, ομοίως σε Queue Type

(προκειμένου να βάλουμε limit ανά client και σε upload, επαναλαμβάνουμε την διαδικασία με τα queues φτιάχνοντας 2 διαφορετικά queue types, επιλέγοντας αντίστοιχα Parent (global out για download και global-in για upload) και Queue Types στο Queue Tree).

Queue3.JPG


Συνολικό Limit στον proxy[επεξεργασία]

Queues -> Simple Queues -> Add -> Καρτέλα General

Bάζουμε όνομα, Target download (συνολικό download limit από όλους τους clients), Target Upload (συνολικό upload limit από όλους τους clients)

Queue4.JPG


Kαρτέλα Advanced -> Στο Packet Mark βάζουμε το όνομα με το οποίο έχουμε μαρκάρει τα proxy πακέτα σε προηγούμενο βήμα.

Queue5.JPG

Linux Proxy Servers[επεξεργασία]

Squid[επεξεργασία]

http://www.squid-cache.org

O Squid είναι ένας HTTP/1.0 proxy με πολλές δυνατότηετες όπως caching, access control, authorization και logging.

H δυνατότητα του squid να κάνει caching τις σελίδες που γίνονται access, ελαχιστοποιεί το απαιτούμενο προς το internet bandwidth και δίνει συχνά την εντύπωση ταχύτατης σύνδεσης στο internet.

Οι περισσότερες ρυθμίσεις του squid βρίσκονται στο squid.conf (συνήθως στο /etc/squid/squid.conf).

Squid: Βασικές Ρυθμίσεις[επεξεργασία]

Στο squid.conf:

http_port 3128
cache_mem 400 MB
  • ΠΡΟΣΟΧΗ: Squid -z για τη δημιουργία των αρχείων της cache
Squid: Access Control Lists[επεξεργασία]

Έτσι επιτρέπουμε την πρόσβαση στον proxy του 10.140.1.2.

Στο squid.conf:

acl UserName src 10.140.1.2/255.225.255.255
http_access allow UserName
icp_access allow UserName
Squid: Bandwidth Control (Pools)[επεξεργασία]

Τα pools είναι ο μηχανισμός του squid για περιορισμό του bandwidth. Οι περιορισμοί αυτοί μπορούν να γίνουν ανά subnet, user κλπ. και να ακολουθήσουν διάφορες πολιτικές περιορισμού. Μία από τις πιο ενδιαφέρουσες είναι η level 2 pool στην οποία μπορούμε να περιορίσουμε το bandwidth που μοιράζονται όλοι οι χρήστες καθώς και το maximum bandwidth του καθενός.


Οι κανονισμοί λειτουργούν ως εξής:

Ο κανονας ορίζεται σαν bw_limit/Pool_Size. Το δεύτερο είναι το μέγεθος της pool (εδώ 3000000bytes δηλαδή ~3MB) το οποίο επιτρέπεται να αδειάσει χωρίς περιορισμούς στην ταχύτητα. Αυτό επιτρέπει ταχύτατη πρόσβαση σε ιστοσελίδες μιας και οι ιστοσελίδες είναι συνήθως λιγότερες του 1MB. Όταν αδειάσει το pool (των 3ΜΒ εδώ) τότε ενεργοποιείται ο περιορισμός bw_limit (εδώ είναι 20000bytes/sec δηλαδή ~20kbytes/sec).

Το pool level 1 επιτρέπει έλεγχο του bandwidth συνολικά.[επεξεργασία]

Στο squid.conf:

all src 0.0.0.0/0.0.0.0
delay_pools 1
delay_class 1 1
delay_parameters 1 20000/3000000
delay_access 1 allow all

Συνολικά FULL SPEED μέχρι τα 3000000 bytes και στη συνέχεια 20000 bytes/sec

Το pool level 2 επιτρέπει εκτός από συνολικό έλεγχο, και έλεγχο ανά χρήστη[επεξεργασία]

Εδώ περιλαμβάνεται ο κανόνας της level 1 pool (20000/3000000) αλλά και ο level 2 (13000/2000000)

Η δεύτερη παράμετρος (20000/3000000) στο delay_parameters δηλώνει τον κανονισμό για όλους τους users ενώ η τρίτη (13000/2000000) αφορά τους μεμονομένους χρήστες.

Στο squid.conf:

acl all src 0.0.0.0/0.0.0.0
delay_pools 1
delay_class 1 2
delay_parameters 1 20000/3000000 13000/2000000
delay_access 1 allow all

Συνολικά FULL SPEED μέχρι τα 3000000 bytes και στη συνέχεια 20000 bytes/sec για όλους τους χρήστες και FULL SPEED μέχρι τα 2000000 bytes και 13000 bytes/sec ανά χρήστη


Ένα working squid.conf[επεξεργασία]
http_port 8080
hierarchy_stoplist cgi-bin ?
acl QUERY urlpath_regex cgi-bin \?
no_cache deny QUERY
#
#CACHE SIZE
#-----------------
cache_mem 400 MB
#
auth_param basic children 5
auth_param basic realm Squid proxy-caching web server
auth_param basic credentialsttl 2 hours
auth_param basic casesensitive off
#Suggested default:
refresh_pattern ^ftp:		1440	20%	10080
refresh_pattern ^gopher:	1440	0%	1440
refresh_pattern .		0	20%	4320
#
# ACCESS CONTROLS
# -----------------------------------------------------------------------------
#Recommended minimum configuration:
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/8
acl SSL_ports port 443 563
acl Safe_ports port 6667		# irc
acl Safe_ports port 81		# http-81
acl Safe_ports port 800		# http-800
acl Safe_ports port 80		# http
acl Safe_ports port 21		# ftp
acl Safe_ports port 443 563	# https, snews
acl Safe_ports port 70		# gopher
acl Safe_ports port 210		# wais
acl Safe_ports port 1025-65535	# unregistered ports
acl Safe_ports port 280		# http-mgmt
acl Safe_ports port 488		# gss-http
acl Safe_ports port 591		# filemaker
acl Safe_ports port 777		# multiling http
acl CONNECT method CONNECT
#
# INSERT YOUR OWN RULE(S) HERE TO ALLOW ACCESS FROM YOUR CLIENTS
#----------------------------------------------------------------------------------------------------------------------
acl all src 0.0.0.0/0.0.0.0
delay_pools 1
delay_class 1 2
delay_parameters 1 45500/3000000 33000/2000000
delay_access 1 allow all
#
#USERS
#---------
acl proxy_username src 10.140.1.1/255.255.255.255
http_access allow proxy_username
icp_access allow proxy_username
#
#END USERS
http_access deny all
http_reply_access allow all
icp_access allow all
#
#  HOSTNAME
#---------------------
visible_hostname myhostname.something
coredump_dir /var/lib/squid/cache

Σημείωση:

  • Επιτρέπει μόνο τον user proxy_username με ip 10.140.1.1
  • To hostname είναι στο visible_hostname και είναι το myhostaname.something. Αυτό το αλλάζετε ανάλογα με το hostname σας