Bueno en cuestión, la idea es simple y la implementación sencilla. El server proxy, usará como autenticador externo una aplicación que consultara un servidor imap. El autenticador de squid quedaría así.
auth_param basic program /usr/local/sbin/imap.py
auth_param basic children 5
auth_param basic realm Autenticacion de LEX-SA para la navegacion
auth_param basic credentialsttl 2 hours
auth_param basic casesensitive off
acl ncsa_users proxy_auth REQUIRED
El script imap.py lo pueden recoger en este link. De todas formas lo pegare aquí:
#!/usr/bin/env python
from imaplib import IMAP4
import sys
#IMAP server against which we authenticate
server="127.0.0.1"
port=143
while 1:
line=sys.stdin.readline()[:-1]
[user,password]=line.split(' ')
p=IMAP4(server,port)
try:
p.login(user,password)
except:
sys.stderr.write("ERR authenticating %s\n"%user)
sys.stdout.write("ERR\n")
sys.stdout.flush()
continue
sys.stderr.write("OK authenticated %s\n"%user)
sys.stdout.write("OK\n")
sys.stdout.flush()
si quicieras que solo un cierto y determinado grupo de usuario navegase, entonces
ResponderEliminar# el usuario username navega
acl usuario proxy_auth username
http_reply_access allow usuario
Me ha sido muy util.
ResponderEliminarGracias. Luis.
que bueno ;)
ResponderEliminar