April 25, 2009

Squish - A Download Manager For Squid

1. Download squish from
http://www.ledge.co.za/software/squint/squish/

2. Unzip squish into /install/

# tar -xvzf squish-x.x.x.tar.gz

3. cd into the folder

# cd squish-0.0.18

4. Install Squash

# make install

5. Then move yourself into the squish directory that squish was installed in

# cd /usr/local/squish/

6. Then run the squish install option on the squish.pl

# ./squish.pl --install

7. Download the GD Graphics Library rpm's from the website below

http://dag.wieers.com/packages/perl-GD/

8. And then install it

# rpm -ivh perl-GD-x.x.x..fc3.rf.i386.rpm

Now set the squid ACLs to the following.

# vi /etc/squid/squid.conf

squid.conf:

### added by squish (begin)
# acl's for squish - autodetected, sometimes
acl SQUISHLOC dst mc1.fedora.directory.server
acl SQUISHED1 proxy_auth -i "/etc/squid/squished"
acl password proxy_auth REQUIRED
#acl SQUISHED2 ident "/etc/squid/squished"
acl SQUISHED3 src "/etc/squid/squished"
# Error info that says you're squished
deny_info http://mc1.fedora.directory.server/squish/?squished& SQUISHED1
#deny_info http://mc1.fedora.directory.server/squish/?squished& SQUISHED2
deny_info http://mc1.fedora.directory.server/squish/?squished& SQUISHED3
# HTTP access controls for squish
http_access allow SQUISHLOC
http_access allow password !SQUISHED1
http_access deny SQUISHED1
#http_access deny SQUISHED2
http_access deny SQUISHED3
### added by squish (End)

9. Now set the redirect in the apache configuration file for the squish cgi program

#vi /etc/httpd/conf/httpd.conf

httpd.conf:
include /usr/local/squish/apache-squish.conf

10. Now edit the apache-squish.conf file

# vim /usr/local/squish/apache-squish.conf

apache-squish.conf:
Alias /squish "/usr/local/squish/"

Options +ExecCGI
AddHandler cgi-script .cgi
DirectoryIndex squish.cgi
AllowOverride None
Order allow,deny
Allow from all


10. Restart the apache and squid servers now

# service squid restart
# service httpd restart

11. Go to http://ip-address-of-squish-server/squish/squish.cgi to see what your usage is.

12. Edit the squish.conf file to change the download/hours limits

# vi /etc/squid/squish.conf
==================
squish.conf:
# This file contains data formatted as follows:
#
# Blank lines and hashed stuff is for comments
# user amount/period
# bandwidth: 999[kmG]b / period: day, week, month
# time: 999[smh] / period: day, week, month
#
# Whitelist entries - they can have as much as they like
192\.168\.99\.44 25h/day
192\.168\.97\.43 25h/day
# Poor guy:
root 1h/day 1Mb/day 2Mb/week
vinod 1h/day 1Mb/day 2Mb/week
# Catchall -- people and IP's not matched by the above rules
.* 4h/day 20Mb/day 20h/week 100Mb/week
===================
for more details pl follow
http://www.ledge.co.za/software/squint/squish/FAQ
http://www.ledge.co.za/software/squint/squish/

9 comments:

  1. The requested URL /squish/squish.cgi was not found on this server.

    ReplyDelete
  2. vi /etc/httpd/conf/httpd.conf

    in which line i have add this plz tellme it is very urgent

    httpd.conf:
    include /usr/local/squish/apache-squish.conf

    ReplyDelete
  3. Probably a bit late now, but for those reading this, nani's apache server might not be running, that would generate the /squish/squish.cgi error. It doesn't matter too much where the include /usr/local/squish/apache-squish.conf goes.

    ReplyDelete
  4. To get squish to work correctly you will also need the following:
    perl
    perl-gd
    gd

    some distros don't include perl-gd, I used a perl-GD rpm from the Internet - worked fine.

    ReplyDelete
  5. Pls help me this is not work with ubuntu.

    When i am running squish.cron.sh file it showing logs in squish.log filw that
    "Argument "192.168.5.61" isn't numeric in addition (+) at /usr/local/squish/squish.pl line 474, line 1."

    That squish.conf file limit is not coming in affect in squid ..

    Pls help me as soon as possible.

    ReplyDelete
  6. i am having forbidden 403 issue when i am trying to access localhost://squish/squish.cgi, what should i do, i already changed owner permission in /usr/local/squish folder but doesn't work for me

    ReplyDelete
  7. Is there any way to use squish without authentication, using IPs?

    ReplyDelete
  8. I just wanted to know once the users gets squished as per violating the policy of per week quota, when do they get access again (Saturday/Sunday) and at what time ?

    ReplyDelete
  9. Hi, Is there any step by step method. I am still not able access the console. It says


    Internal Server Error

    The server encountered an internal error or misconfiguration and was unable to complete your request.

    Please contact the server administrator, root@localhost and inform them of the time the error occurred, and anything you might have done that may have caused the error.

    More information about this error may be available in the server error log.

    Apache/2.2.15 (CentOS) Server at 192.168.2.1 Port 80

    Please help me out. I want fresh/new installation.

    ReplyDelete