Search icon CANCEL
Subscription
0
Cart icon
Your Cart (0 item)
Close icon
You have no products in your basket yet
Arrow left icon
Explore Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Conferences
Free Learning
Arrow right icon
Arrow up icon
GO TO TOP
Squid Proxy Server 3.1: Beginner's Guide

You're reading from   Squid Proxy Server 3.1: Beginner's Guide Reduce bandwidth use and deliver your most frequently requested web pages more quickly with Squid Proxy Server. This guide will introduce you to the fundamentals of the caching system and help you get the most from Squid.

Arrow left icon
Product type Paperback
Published in Feb 2011
Publisher Packt
ISBN-13 9781849513906
Length 332 pages
Edition 1st Edition
Languages
Concepts
Arrow right icon
Toc

Table of Contents (20) Chapters Close

Squid Proxy Server 3.1 Beginner's Guide
Credits
About the Author
About the Reviewers
www.PacktPub.com
Preface
1. Getting Started with Squid 2. Configuring Squid FREE CHAPTER 3. Running Squid 4. Getting Started with Squid's Powerful ACLs and Access Rules 5. Understanding Log Files and Log Formats 6. Managing Squid and Monitoring Traffic 7. Protecting your Squid Proxy Server with Authentication 8. Building a Hierarchy of Squid Caches 9. Squid in Reverse Proxy Mode 10. Squid in Intercept Mode 11. Writing URL Redirectors and Rewriters 12. Troubleshooting Squid Pop Quiz Answers Index

Time for action – writing a helper program


So, let's write a dummy Python script that can act as a Basic authentication helper:

#!/usr/bin/env python

import sys
 
def validate_credentials(username, password):
  """
  Returns True if the username and password are valid. 
  False otherwise
  """
  # Write your own function definition.
  # Use mysql, files, /etc/passwd or some service you want
  return False

if __name__ == '__main__':
  while True:
    # Read a line from stdin
    line = sys.stdin.readline()
    # Remove '\n' from line
    line = line.strip()

    # Check if string contains two entities
    parts = line.split(' ', 1)
    if len(parts) == 2:
        # Extract username and password from line
        username, password = parts
        # Check if username and password are valid
        if validate_credentials(username, password):
            sys.stdout.write('OK\n')
        else:
            sys.stdout.write('ERR Wrong username or password\n')
    else:
        # Unexpected input...
lock icon The rest of the chapter is locked
Register for a free Packt account to unlock a world of extra content!
A free Packt account unlocks extra newsletters, articles, discounted offers, and much more. Start advancing your knowledge today.
Unlock this book and the full library FREE for 7 days
Get unlimited access to 7000+ expert-authored eBooks and videos courses covering every tech area you can think of
Renews at $19.99/month. Cancel anytime
Banner background image