Squid στο 12.04

Ξεκίνησε από ChrsMel, 17 Σεπ 2012, 10:07:52 ΠΜ

« προηγούμενο - επόμενο »

apapakL

Μπορείς να ακολουθήσεις τις οδηγίες για το κλείδωμα των ρυθμίσεων proxy για τον firefox όπως αναφέρεται στο βήμα 5 αυτού του post. Έτσι όμως θα εφαρμοστούν οι ρυθμίσεις proxy μόνο για τον firefox και όχι για τον chrome (αν έχεις) αφού ο chrome παίρνει τις ρυθμίσεις proxy του συστήματος....

aspd

Μετά από τα παραπάνω οι clients δεν έχουν καθόλου internet στο mozilla. Λέει ότι ο διαμεσολαβητής δεν βρέθηκε.
Στις ρυθμίσεις του Mozilla τι πρέπει να βάλω; (δεν έχω αλλάξει τίποτα)
π.χ. χρήση ρυθμίσεων διαμεσολαβητή συστήματος;

apapakL

#47
Για στείλε

1. το περιεχόμενο του αρχείου /usr/lib/firefox/mozilla.cfg

cat /usr/lib/firefox/mozilla.cfg


2. το περιεχόμενο του αρχείου /usr/lib/firefox/defaults/pref/local-settings.js

cat /usr/lib/firefox/defaults/pref/local-settings.js


3. το περιεχόμενο του αρχείου /etc/hosts ενός fat client

cat /etc/hosts


4. Το αποτέλεσμα των εντολών από ένα fat client

ping server


και

ping <ip_tou_server>



aspd

Στέλνω τα αποτελέσματα των εντολών.
Δεν έχω internet ούτε στο server ούτε σε clients και στο server είναι κλειδωμένες οι ρυθμίσεις στο mozilla.

apapakL

Επειδή έχεις thin clients αντί για "server" βάλε "localhost" στις ρυθμίσεις του mozilla... To Squid τρέχει;

aspd

#50
το squid τρέχει.
Έβαλα localhost αντί για server στο mozilla.cfg

Σήμερα έχω συνδέσει σα fat και ένα laptop.

Στα thins έχω internet και κόβεται το facebook κτλ.

Δεν έχει internet ο server και ο fat

aspd

Μετά από επικοινωνία με τον apapakL τα προβλήματα λύθηκαν, το squid δουλεύει και έχω internet και στο server και σε thin και fat clients. Η βασική πηγή των προβλημάτων φάνηκε να είναι το όνομα του server που δεν ήταν server. Τελικά το αλλάξαμε σε server και μετά από κάποιες ρυθμίσεις και δημοσίευση του εικονικού δίσκου δουλεύουν όλα.
Ευχαριστώ πολύ.


yiannis

Υπάρχει τρόπος να αποκλείσω μέσω squid όλες τις σελίδες, εκτός από 2-3 που θα χρειάζομαι κάθε φορά στο μάθημα;
Κάτι σαν whitelist των ιστοσελίδων δηλαδή; Όπως έχω και για τους χρήστες;

apapakL

#53
Ένας τρόπος είναι:

Κώδικας: bash
sudo gedit /etc/squid3/whitelist_domains.acl


Βάζεις εκεί τα domains που θέλεις

πχ.
.wikipedia.org

Στη συνέχεια διαμορφώνεις το σχετικό block εντολών στο squid.conf κάπως έτσι
#SCH-SCRIPTS begin
        error_directory /usr/share/squid3/errors/el   
        acl schoolnet src 192.168.67.0/24 #όπου x, y τα αντίστοιχα νούμερα του υποδικτύου σου 
        acl banned_domains url_regex -i "/etc/squid3/banned_domains.acl"
        acl banned_users ident "/etc/squid3/banned_users.acl"
        acl whitelist_users ident "/etc/squid3/whitelist_users.acl"
	acl whitelist_domains url_regex -i "/etc/squid3/whitelist_domains.acl"   #νέα acl για whitelist domains
	deny_info ERR_SCH-SCRIPTS_BANNED_DOMAINS banned_domains
        deny_info ERR_SCH-SCRIPTS_BANNED_USERS banned_users
        http_access allow whitelist_users
	http_access deny !whitelist_domains  #οδηγία που κόβει τα πάντα εκτός από τα domains στην  acl για τα whitelist domains
	http_access deny banned_users        
        http_access deny banned_domains
        http_access allow localhost  
        http_access allow schoolnet
        http_access deny all
#SCH-SCRIPTS end


Για να επεξεργαστείς το squid.conf
sudo gedit /etc/squid3/squid.conf


Στη συνέχεια κάνε restart τον squid3

sudo service squid3 restart


Για να επανέλθεις στην προηγούμενη κατάσταση απλά άνοιξε το squid.conf σχολίασε τις δυο νέες γραμμές, αποθήκευσε και επανεκκίνησέ το squid.

yiannis

Απλό και εύκολο!
Ευχαριστώ, θα το δοκιμάσω αύριο κιόλας ;)

yiannis

#55
Το δοκίμασα, αλλά κόβει την πρόσβαση σε όλες τις σελίδες!
Δοκίμασα ακόμα και με
http_access allow whitelist_domains
αλλά και πάλι, κόβει την πρόσβαση παντού!
Κάνω κάτι λάθος;

apapakL

#56
Μήπως προηγείται η directive  http_access deny all? Έχει σημασία η σειρά των access lists (acs). Εφαρμόζεται η λογική "what comes first".

Αν θες να δούμε λίγο το squid.conf σου. Πόσταρε το αποτέλεσμα αυτής της εντολής:

Κώδικας: bash
cat /etc/squid3/squid.conf | egrep -v "^s*(#|$)"

yiannis

Όχι, δεν προηγείται. Είδα αναλυτικά μία-μία τις εντολές με το δικό σου conf και είναι οι ίδιες ακριβώς (εκτός φυσικά από την ΙΡ) και με την ίδια σειρά. Δεν έχω πρόσβαση αυτή τη στιγμή, αλλά αύριο θα τρέξω την εντολή και θα δώσω το αποτέλεσμα. Πάντως είμαι σίγουρος ότι η http_access deny all είναι τελευταία.

yiannis

Έτρεξα την εντολή και εμφανίζει τα παρακάτω:

administrator@server:~$ cat /etc/squid3/squid.conf | egrep -v "^s*(#|$)"
acl manager proto cache_object
acl localhost src 127.0.0.0/8 ::1
acl to_localhost dst 127.0.0.0/8 0.0.0.0/32 ::1
acl SSL_ports port 443
acl Safe_ports port 80      # http
acl Safe_ports port 21      # ftp
acl Safe_ports port 443      # https
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
http_access allow manager localhost
http_access deny manager
http_access deny !Safe_ports
http_access deny CONNECT !SSL_ports
        error_directory /usr/share/squid3/errors/el   
        acl schoolnet src 10.65.36.0/24 #όπου x, y τα αντίστοιχα νούμερα του υποδικτύου σου
        acl banned_domains url_regex -i "/etc/squid3/banned_domains.acl"
        acl banned_users ident "/etc/squid3/banned_users.acl"
        acl whitelist_users ident "/etc/squid3/whitelist_users.acl"
   #acl whitelist_domains url_regex -i "/etc/squid3/whitelist_domains.acl"   #νέα acl για whitelist domains
        deny_info ERR_SCH-SCRIPTS_BANNED_DOMAINS banned_domains
        deny_info ERR_SCH-SCRIPTS_BANNED_USERS banned_users
        http_access allow whitelist_users
   #http_access deny !whitelist_domains  # κόβει τα πάντα εκτός από τα domains στην acl whitelist_domains
        http_access deny banned_users       
        http_access deny banned_domains
        http_access allow localhost 
        http_access allow schoolnet
        http_access deny all
acl accountant src 10.65.36.0/24
acl fb dstdomain .freemail.gr
http_reply_access deny  fb accountant
http_access deny CONNECT fb accountant
http_port 3128
coredump_dir /var/spool/squid3
refresh_pattern ^ftp:      1440   20%   10080
refresh_pattern ^gopher:   1440   0%   1440
refresh_pattern -i (/cgi-bin/|\?) 0   0%   0
refresh_pattern (Release|Packages(.gz)*)$      0       20%     2880
refresh_pattern .      0   20%   4320
administrator@server:~$

Το μόνο που κάνω είναι να αφαιρώ τα 2 σχόλια στις γραμμές με το whitelist_domains. Μετά, τρέχω την εντολή "sudo service squid3 restart" και η πρόσβαση κόβεται σε όλες τις σελίδες!

apapakL

Τελικά υπήρχε συντακτικό λάθος σε ένα σημείο του squid.conf που απέτρεπε την επανεκκίνηση του squid. Με τη βοήθεια της εντολής

tail -f /var/log/syslog


εντοπίσαμε τη γραμμή και το διορθώσαμε...