anoche puse a andar un trac para kreissy. una de las cosas que dejé colgando fue que el trac quedó abierto como... bueno, apelen a su imaginación para terminar esa frase. esa misma noche humitos dejó su impronta, cosa que no me molesta, pero marca que esto no puede quedar así. so, a poner auth.
trac delega todo el sistema de autenticación en apache, así que es lo mismo que poner a andar tal cosa. apache tiene muy buena doc9n[1] al respecto. el desafío es hacerlo andar desde un .htpasswd.
pero, no se puede poner un bloque en un .htpasswd, lo cual imposibilita la empresa. y esto, ahora recuerdo, es lo que lo hizo imposible antes. así que no queda otra que recurrir a la configuración global de apache y dejarnos de joder.
al final el archivo /etc/apache2/sites-available/trac-kreissy quedó:
<Location /~mdione/projects/kreissy>
SetHandler mod_python
PythonHandler trac.web.modpython_frontend
PythonOption TracEnv /home/mdione/src/projects/kreissy/trac
PythonOption TracUriRoot /~mdione/projects/kreissy
</Location>
# auth
<Location /~mdione/projects/kreissy/login>
AuthType Basic
AuthName "kReiSSy-trac"
AuthUserFile /home/mdione/src/projects/kreissy/trac/htpasswd
Require valid-user
</Location>
luego agregamos el sitio como enabled y reiniciamos apache:
$ sudo a2ensite trac-kreissy
Site trac-kreissy installed; run /etc/init.d/apache2 reload to enable.
$ sudo /etc/init.d/apache2 reload
c'est tout! luego configuro el trac con trac-admin y listo.
sysadmin trac apache
[1] documentación.