[résolu] Proxy authentifiant

Forum dédié à la distribution du même nom et que vous pourrez télécharger sur http://www.contribs.org. La nouvelle version de cette distribution se nomme SME Server

Modérateur: modos Ixus

[résolu] Proxy authentifiant

Messagepar old7 » 12 Avr 2006 19:51

Bonjour à tous,
Informaticiens, ingénieurs réseaux et ingénieurs sécurité confirmés, moi qui ne le suis pas, j'aimerais construire une table d'inspiration Louis XV avec mes quelques notions de menuiserie et les outils dont je dispose. J'en appel à votre expérience et vos tours de mains pour m'aider dans ce projet. De grâce ne détrounez pas votre regard de cet appel à votre grand savoir et ne le considérez pas comme une "vampirisation", point de concurrence à craindre.

Les outils, pardon, ma config est la suivante :
SME 7rc1 (FW+server) - clients sous LinuX, Mac, Win

actuellement, seul le fw + proxy transparent sont configurés sur la SME.
Il n'y aura pas d'accès du WAN vers le Lan. (SME sera serveur uniquement pour le LAN)

J'aimerais que la connection vers le WAN ne se fasse plus via un proxy transparent mais au travers d'un proxy authentifiant pour restreindre l'accès vers l'extérieur aux seules personnes authorisées.

Existe-t-il une solution intégrée ou addons à SME7 pour mettre en place un proxy authentifiant ?

J'ai cherché dans le forum et ailleurs mais je n'ai pas trouvé de solution applicable à SME7 telle quel...
... je ne suis pas allergique aux fichiers de config. ... ni au interfaces graphiques ; peu m'importe, seul le résultat compte.

Si ma question est trop basique et qu'un peu de recherche/documentation supplémentaire m'apporterait la réponse, je vous remercie de me le présiser et de ne pas me laisser sans réponse ....

Cordialement,
Old7.
Dernière édition par old7 le 16 Avr 2006 16:23, édité 1 fois au total.
old7
Second Maître
Second Maître
 
Messages: 44
Inscrit le: 26 Fév 2006 19:17
Localisation: BE

Messagepar androme » 13 Avr 2006 10:10

Tu devrais aller jeter un coup d'oeil là : http://www.squidguard.org/
IPCOP 1.4.11 + guardian + urlfilter + advproxy | red + orange + green
PIII 550 | 384 Mo | 4,3 Go 2.5"

Serveur Debian Sarge XEN
XP 1800+ | 512Mo | 2*40 Go
2 serveurs virtuels
Avatar de l’utilisateur
androme
Lieutenant de vaisseau
Lieutenant de vaisseau
 
Messages: 194
Inscrit le: 27 Fév 2006 18:20
Localisation: Arles city

Messagepar old7 » 13 Avr 2006 19:44

androme a écrit:Tu devrais aller jeter un coup d'oeil là : http://www.squidguard.org/


Ok, merci.

Et ça signifie alors qu'il n'existe pas de solution directement préfigurée ou préparée pour SME7 ... et qu'il faut en passer par la configuration de base de Suidguard ou de Dansguardian pour authentifier les utilisateurs ... Bon, encore quelques heures de documentations pour le faire proprement.

As-tu une méthode d'authentification à me conseiller pour que les mots de passe ne voyagent ou ne soyent pas stockés en clair ou c'est à moi à choisir celle qui me convient le mieux ?

En tout cas, merci pour ta réponse à la première question.

Cordialement,
Old7.
old7
Second Maître
Second Maître
 
Messages: 44
Inscrit le: 26 Fév 2006 19:17
Localisation: BE

Messagepar androme » 14 Avr 2006 08:50

Dsl je ne sais pas concernant les mots de passe.
IPCOP 1.4.11 + guardian + urlfilter + advproxy | red + orange + green
PIII 550 | 384 Mo | 4,3 Go 2.5"

Serveur Debian Sarge XEN
XP 1800+ | 512Mo | 2*40 Go
2 serveurs virtuels
Avatar de l’utilisateur
androme
Lieutenant de vaisseau
Lieutenant de vaisseau
 
Messages: 194
Inscrit le: 27 Fév 2006 18:20
Localisation: Arles city

Messagepar MasterSleepy » 14 Avr 2006 09:03

Salut,

dans la contribs concernant dansguardian il y a quelque script concernant l'authentification via squid.
Le problème est que je ne les ai pas testé, je vais donner les scripts si tu les essayes donne nous un feedback .

Création du répertoire de template
Code: Tout sélectionner
mkdir -p /etc/e-smith/templates-custom/etc/squid/squid.conf
cd /etc/e-smith/templates-custom/etc/squid/squid.conf


fichier 15AuthProgramNCSA contient
Code: Tout sélectionner
{
return "" unless ( ($squid{RequireAuth} || "no") eq "ncsa");

$OUT .= "
auth_param basic program /usr/lib/squid/ncsa_auth /etc/proxyusers
auth_param basic children 5
auth_param basic realm squid proxy server
auth_param basic credentialsttl 2 hours
auth_param basic casesensitive off
";}

fichier 15AuthProgramPamAuth contient
Code: Tout sélectionner
{
return "" unless ( ($squid{RequireAuth} || "no") eq "ncsa");

$OUT .= "
auth_param basic program /usr/lib/squid/ncsa_auth /etc/proxyusers
auth_param basic children 5
auth_param basic realm squid proxy server
auth_param basic credentialsttl 2 hours
auth_param basic casesensitive off
";}[root@sme7 squid.conf]# cat 15AuthProgramPamAuth
{
return "" unless ( ($squid{RequireAuth} || "no") eq "pam");

$OUT .= "
auth_param basic program /usr/lib/squid/pam_auth
auth_param basic children 5
auth_param basic realm  squid proxy server
auth_param basic credentialsttl 2 hours
auth_param basic casesensitive off
";}

fichier 20ACL05ProxyAuth contient
Code: Tout sélectionner
{
return "" unless ( ($squid{RequireAuth} || "no") eq "pam");

$OUT .= "
auth_param basic program /usr/lib/squid/pam_auth
auth_param basic children 5
auth_param basic realm  squid proxy server
auth_param basic credentialsttl 2 hours
auth_param basic casesensitive off
";}[root@sme7 squid.conf]# cat 20ACL05ProxyAuth
{
    return "acl requireauth proxy_auth REQUIRED"
      if (defined $squid{RequireAuth} && $squid{RequireAuth} =~ /(ncsa|pam)/);
}

fichier 39http_access00pwdprotect contient
Code: Tout sélectionner
{
    return "http_access allow requireauth"
      if (defined $squid{RequireAuth} && $squid{RequireAuth} =~ /(ncsa|pam)/);
}

Viens maintenant le paramètrage
Code: Tout sélectionner
db configuration setprop squid RequireAuth pam

ou
Code: Tout sélectionner
db configuration setprop squid RequireAuth ncsa

et faire un expand du template de squid et le relancer
Code: Tout sélectionner
expand-template /etc/squid/squid.conf
service squid restart

En gros cela devrait fonctionner comme ça.

A+
"Microsoft fera quelque chose qui ne plantera jamais quand ils commenceront à fabriquer des clous "
http://www.vanhees.cc
Avatar de l’utilisateur
MasterSleepy
Amiral
Amiral
 
Messages: 2625
Inscrit le: 24 Juil 2002 00:00
Localisation: Belgique

Messagepar guytou » 14 Avr 2006 16:18

Salut MasterSleepy

J'ai commencé les tests avec ton code.

Il me semble qu'il y a un petit pb dans les fichiers :
15AuthProgramPamAuth
et
20ACL05ProxyAuth :

il a un [root@sme7 squid.conf]# cat 20ACL05ProxyAuth et [root@sme7 squid.conf]# cat 15AuthProgramPamAuth qui me semble un peu sarbi . :wink: :wink:

Ensuite il me semble qu'il faudrait creer un fichier proxyusers dans /etc pui le remplir
avec la commande htpasswd -b /etc/proxyusers nom password.

Bon j'en suis la . J'ai bien une demande d'authentification lorsque je veux surfer mais apres ca je passe en acces refusé.

A suivre . :wink: :wink:
Et pourtant elle tourne . (galilée)
Avatar de l’utilisateur
guytou
Contre-Amiral
Contre-Amiral
 
Messages: 438
Inscrit le: 02 Oct 2002 00:00
Localisation: haute-savoie

Messagepar old7 » 15 Avr 2006 23:06

Bonjour MasterSleepy,

j'ai utilisé
Code: Tout sélectionner
db configuration setprop squid RequireAuth ncsa
expand-template /etc/squid/squid.conf
service squid restart

créé le fichier /etc/proxyusers
populé avec :
Code: Tout sélectionner
htpasswd -b /etc/proxyusers nom mdp

lors de la connection au web, SME demande de s'authentifier et ne donne pas accès au WAN.

J'ai testé
Code: Tout sélectionner
/usr/lib/squid/ncsa_auth /etc/proxyusers
et les utilisateurs créés ont des password valides.

dans /etc/squid/squid.conf il y a bien :
Code: Tout sélectionner
auth_param basic program /usr/lib/squid/ncsa_auth /etc/proxyusers
auth_param basic children 5
auth_param basic realm squid proxy server
auth_param basic credentialsttl 2 hours
auth_param basic casesensitive off
acl all src 0.0.0.0/0.0.0.0
acl manager proto cache_object
acl requireauth proxy_auth REQUIRED
http_access allow requireauth


Du côté log:
cat /var/log/squid/access.log : l'utilisateur 'test' est bien tracé,
Code: Tout sélectionner
TCP_MISS/503 1513 GET http://livepage.apple.com/ test NONE/- text/html
mais il y a "TCP_MISS" et le proxy ne va pas chercher la page sur le web "NONE". Pourquoi ?

Que faut-il encore vérifier ?

???
old7
Second Maître
Second Maître
 
Messages: 44
Inscrit le: 26 Fév 2006 19:17
Localisation: BE

Messagepar daoud » 16 Avr 2006 01:13

désolé mais moi aussi cela m'intéréssait il fut un temps ! mais une question ? : avec le rpm dmc-mitel-proxypass-0.0.1-2.noarch cela ne correspond t-il pas à ta demande ?

voici a quoi cela ressemble d'interface :


http://img113.imageshack.us/my.php?image=17xl2.jpg

http://img108.imageshack.us/my.php?image=20ju1.jpg

http://img122.imageshack.us/my.php?image=32pa1.jpg


, je n'ai pas testé car rien compris :wink:
____________________________________
Avatar de l’utilisateur
daoud
Vice-Amiral
Vice-Amiral
 
Messages: 628
Inscrit le: 19 Déc 2004 10:16
Localisation: paris

Messagepar old7 » 16 Avr 2006 15:42

old7 a écrit:Bonjour MasterSleepy,

...

Du côté log:
cat /var/log/squid/access.log : l'utilisateur 'test' est bien tracé,
Code: Tout sélectionner
TCP_MISS/503 1513 GET http://livepage.apple.com/ test NONE/- text/html
mais il y a "TCP_MISS" et le proxy ne va pas chercher la page sur le web "NONE". Pourquoi ?
Que faut-il encore vérifier ?
???


Je me réponds à moi-même car, hum , :oops: , bon ....
SME n'était pas bien configuré (shame on me).
Voilà, j'ai corrigé l'erreur et maintenant c'est OK : il faut s'authentifier pour surfer.

Merci MasterSleepy.
old7
Second Maître
Second Maître
 
Messages: 44
Inscrit le: 26 Fév 2006 19:17
Localisation: BE

Messagepar old7 » 16 Avr 2006 15:49

daoud a écrit:désolé mais moi aussi cela m'intéréssait il fut un temps ! mais une question ? : avec le rpm dmc-mitel-proxypass-0.0.1-2.noarch cela ne correspond t-il pas à ta demande ?

voici a quoi cela ressemble d'interface :


http://img113.imageshack.us/my.php?image=17xl2.jpg

http://img108.imageshack.us/my.php?image=20ju1.jpg

http://img122.imageshack.us/my.php?image=32pa1.jpg


, je n'ai pas testé car rien compris :wink:


J'ai fait un google 'dmc-mitel-proxypass' et voilà ce que j'ai trouvé :
Code: Tout sélectionner
ProxyPass to an Internal Host for E-Smith/SME (v5.6 and less... not tested on 6.x)

Developer:   Darrell May
Contributor: Abe Loveless (abe_AT_lovelesscentral.org)

Brief Description:
This package can be used to allow external access to web content on
internal web servers through your E-Smith/SME Gateway.  There are 2 ways to do this.

1. You can choose a sub-directory of your e-smith web server and direct that
subdirectory to an internal host.  For example: You can take the following url
(http://YOUR.ESMITH.ADDRESS/frontpage/) and use ProxyPass to forward the "frontpage"
directory to your Win32 server with Frontpage Server Extensions installed.  All other
content would be displayed from the E-Smith web server, like normal.
   NOTES:
   1. Don't ProxyPass the server root("/")... you won't be able to get back to
      the server-manager
   2. Remember to add the trailing slash when you create the directory name

2. You can create a Virtual Domain on the E-Smith server and forward all content
for that virtual domain to an internal server. (See below for details.)


Il semble que proxypass va dans ce sens : WAN > LAN ...

Donc, ça ne répond pas à ma demande. Merci quand même daoud.

[edit]
Je place le msg en 'résolu' car je suis l'heureux maître d'une SME7rc1 qui authentifie ses utilisateurs.

Je peux donc m'attaquer au meuble suivant ;)

Merci à tous.
[/edit]
old7
Second Maître
Second Maître
 
Messages: 44
Inscrit le: 26 Fév 2006 19:17
Localisation: BE

Messagepar MasterSleepy » 18 Avr 2006 08:13

Salut à tous,

@guytou
Effectivement j'ai copier coller un trop vite il me semble :wink:
Bon je corrige ça et je mets tout dans une doc.

@Daoud
Proxy pass est utilisé pour atteindre un site distant depuis ca sme.
Ce principe est mis en place par la sme même pour arriver à l'interface d'administration ;-)
http://forums.fr.ixus.net/viewtopic.php?t=32921&highlight=
Dans se post on peux voir l'utilité de se genre de procédure.

@old7
Merci pour le retour.
As-tu essayé l'authentification pam
Code: Tout sélectionner
db configuration setprop squid RequireAuth pam

qui elle devrait aller lire les fichiers passwd et shadow, donc les utilisateurs créés par la sme?

Merci,
A+
"Microsoft fera quelque chose qui ne plantera jamais quand ils commenceront à fabriquer des clous "
http://www.vanhees.cc
Avatar de l’utilisateur
MasterSleepy
Amiral
Amiral
 
Messages: 2625
Inscrit le: 24 Juil 2002 00:00
Localisation: Belgique

Messagepar old7 » 19 Avr 2006 15:15

MasterSleepy a écrit:Salut à tous,


@old7
As-tu essayé l'authentification pam
Code: Tout sélectionner
db configuration setprop squid RequireAuth pam

qui elle devrait aller lire les fichiers passwd et shadow, donc les utilisateurs créés par la sme?


... pas encore ...
Code: Tout sélectionner
db configuration setprop squid RequireAuth pam
expand-template /etc/squid/squid.conf
service squid restart

...

Ca fonctionne tout aussi bien qu'avec ncsa ;-)

J'ai fait le test avec un utilisateur déjà existant dans SME > ok, ras.
J'ai créé un nouvel utilisateur SME > ok, ras.

Le gros avantage de l'authentification pam, c'est que l'utilisateur peut mettre à jour son password via SME et son identification proxy est modifiée en même temps.
Avec ncsa ce n'est pas le cas, car ce sont deux identifiants différents (et stockés à des endroits différents..).

Pour info, sur dungog.net, il existe smeserver-dansguardian-1.2-4.noarch.rpm qui contient toute une série de template dont les 4 que tu indique.

Génial, tu en as fait un HowTo ... très bonne initiative ;-).

Je rajouterais peut-être, à l'intention de ceux qui ne sont pas trop habitués à la ligne de commande, qu pour sortir du test d'authentification /usr/lib/squid/ncsa_auth /etc/proxyusers de faire un ctrl+c pour quitter le test.


Un grand merci, sans ton aide, je n'y serais pas arrivé aussi vite.

Cordialement.
old7
Second Maître
Second Maître
 
Messages: 44
Inscrit le: 26 Fév 2006 19:17
Localisation: BE


Retour vers E-Smith / SME Server

Qui est en ligne ?

Utilisateur(s) parcourant actuellement ce forum : Aucun utilisateur inscrit et 1 invité