SlideShare ist ein Scribd-Unternehmen logo
1 von 14
Linux LPIC2 noelmace.com
Noël Macé
Formateur et Consultant indépendant expert Unix et FOSS
http://www.noelmace.com
Mise en place d'un serveur
mandataire (proxy)
Services web
Licence Creative Commons
Ce(tte) œuvre est mise à disposition selon les termes de la
Licence Creative Commons Attribution - Pas d’Utilisation Commerciale - Partage dans les Mêmes Conditions 3.0 France.
Linux LPIC2 noelmace.com
Plan
• Introduction
 Squid
• Configuration
 Paramètres généraux
• ACLs
 ACLs : Exemples
• Restriction d'accès
• Authentification utilisateur
 Authentification utilisateur pour Squid 2.4-
Linux LPIC2 noelmace.com
Introduction
• Serveur mandataire (proxy)
 intermédiaire entre deux réseaux (ex : local / internet)
• Avantages et fonctionnalités
 performances
• mémoire cache, compression
 sécurité
• anonymisation
• surveillance (journalisation)
 filtrage
• des publicités et contenus lourds (performance)
• des contenus indésirables
Linux LPIC2 noelmace.com
Squid
• Proxy libre de référence
 Licence GNU GPL
 créé en Juillet 1996
 Notamment utilisé par Wikimedia Fondation et Flickr
 version actuelle (au 13 Juillet 2013) : 3.3.8
• Support des protocoles HTTP, HTTPS, FTP et Gopher
• Nombreuses fonctionnalités
 mémoire cache
 contrôle étendu des accès
 cache DNS
 mandataire inverse
Linux LPIC2 noelmace.com
Configuration
• squid.conf
 /etc/squid (CentOS et Debian Squid 2) ou /etc/squid3 (Debian Squid 3)
 Ensemble de directive complexes
• ligne par ligne
 Fonctionnel à l'installation
• Exemple (Extrait) :
visible_hostname ubuntu
http_port 3128
...
acl allowedips src 192.168.1.1/255.255.255.0
...
forwarded_for off
...
visible_hostname ubuntu
http_port 3128
...
acl allowedips src 192.168.1.1/255.255.255.0
...
forwarded_for off
...
Linux LPIC2 noelmace.com
Paramètres généraux
• Définition du port d'écoute HTTP (3128 par défaut)
• Interface d'écoute HTTP (toutes par défaut)
 limiter aux réseaux locaux pour des raisons de sécurité
• Nom de la machine (obtenu via gethostname() par défaut)
http_port 3177http_port 3177
http_port 192.168.1.1:3177http_port 192.168.1.1:3177
http_port 3177http_port 3177
visible_hostname nom_machinevisible_hostname nom_machine
Linux LPIC2 noelmace.com
ACLs
• Syntaxe
 acltype :
• src : adresse IP de la source (ie. le client) (adresse/masque) ou d'une place d'adresses
(adresse_IP_debut-adresse_IP_fin)
• dst : adresse IP de la destination (ie. ordinateur cible)
• srcdomain : domaine du client
• dstdomain : domaine de destination.
• url_regex : chaîne contenu dans l'URL
- possibilité d'utiliser les jokers ou un fichier
- sensible à la casse
• urlpath_regex : chaîne comparée avec le chemin de l'URL
- possibilité d'utiliser les jokers
• proto : protocole.
acl aclname acltype string[string2]acl aclname acltype string[string2]
Linux LPIC2 noelmace.com
ACLs : Exemples
acl mon_domaine_dst dstdomain noelmace.comacl mon_domaine_dst dstdomain noelmace.com
acl url_interdit url_regex forbiddenacl url_interdit url_regex forbidden
acl url_interdites url_regex "/etc/squid/denied_url"acl url_interdites url_regex "/etc/squid/denied_url"
acl clients src 192.168.0.0/255.255.0.0acl clients src 192.168.0.0/255.255.0.0
Linux LPIC2 noelmace.com
Restriction d'accès
• A partir d'une acl pré-définie
 doit être placé après la définition de cette acl
• Syntaxe
• Exemples
 interdire l'accès au domaine noelmace.com
 interdire l'accès aux pages contenant le mot forbidden
 Restreindre l'accès au proxy aux seul réseau 192.168.0.0
http_access allow|deny [!]aclnamehttp_access allow|deny [!]aclname
http_access deny mon_domaine_dst
http_access allow all
http_access deny mon_domaine_dst
http_access allow all
http_access deny url_interdit
http_access allow all
http_access deny url_interdit
http_access allow all
http_access allow localhost
http_access allow clients
http_access deny all
http_access allow localhost
http_access allow clients
http_access deny all
Linux LPIC2 noelmace.com
Authentification utilisateur
• 4 types d'authentification HTTP possible
 Basic, NTLM (SMB LM, v1 and v2), Digest, et Negotiate.
• Nombreuses solutions disponibles
 APM, LDAP, NCSA auth, SMB …
• Avec NCSA auth
 à partir des mêmes outils (htpasswd) que pour Apache2 mod_auth_basic
 Exemple
• Documentation : http://wiki.squid-cache.org/Features/Authentication
•
auth_param basic program /usr/local/squid/bin/ncsa_auth /usr/local/squid/etc/passwd
acl auth_users proxy_auth REQUIRED
http_access allow auth_users
http_access deny all
auth_param basic program /usr/local/squid/bin/ncsa_auth /usr/local/squid/etc/passwd
acl auth_users proxy_auth REQUIRED
http_access allow auth_users
http_access deny all
Linux LPIC2 noelmace.com
Authentification utilisateur pour Squid 2.4-
• Avec NCSA auth
• Avec LDAP
• LDAP_USER : ou (organizational unit) contenant les clients
 exemple ou=people, ou= ac-limoges, ou=education, ou=gouv, c=fr
authenticate_program /usr/lib/ncsa_auth /etc/squid/passwd
acl auth_users proxy_auth REQUIRED
acl all src 0/0
http_access allow auth_users
http_access deny all
authenticate_program /usr/lib/ncsa_auth /etc/squid/passwd
acl auth_users proxy_auth REQUIRED
acl all src 0/0
http_access allow auth_users
http_access deny all
acl identification proxy_auth REQUIRED
http_access allow identification
authentificate_program /usr/lib/squid/squid_ldap_auth -b $LDAP_USER -u uid SERVEUR_LDAP
acl identification proxy_auth REQUIRED
http_access allow identification
authentificate_program /usr/lib/squid/squid_ldap_auth -b $LDAP_USER -u uid SERVEUR_LDAP
Linux LPIC2 noelmace.com
Test : configuration du client Debian
• Pour tester votre serveur, vous pouvez utilisez n'importe quel
client http (firefox, epiphany, etc …)
• La configuration peu se faire au niveau de l'OS client ou du
logiciel client web
 pour configurer firefox : Documentation officielle
 pour configurer le proxy sur votre client Debian
•$ gnome-network-preferences$ gnome-network-preferences
Linux LPIC2 noelmace.com
Ce qu’on a couvert
• Gestion et configuration du serveur mandataire Squid
• Restriction d'accès grâce aux ACLs
• Authentification utilisateur
Weight : 1
Description : Candidates should be able to install and configure a proxy
server, including access policies, authentication and resource usage.
208.3 Implementing a proxy server
Linux LPIC2 noelmace.com
Licence
Ce(tte) œuvre (y compris ses illustrations, sauf mention explicite) est mise à disposition selon les termes de la
Licence Creative Commons Attribution - Pas d’Utilisation Commerciale - Partage dans les Mêmes Conditions 3.0 France.
Pour voir une copie de cette licence, visitez http://creativecommons.org/licenses/by-nc-sa/3.0/fr/ ou écrivez à :
Creative Commons, 444 Castro Street, Suite 900, Mountain View, California, 94041, USA.
Vous êtes libre de :
 partager — reproduire, distribuer et communiquer cette œuvre
 remixer — adapter l’œuvre
Selon les conditions suivantes :
 Attribution — Vous devez clairement indiquer que ce document, ou tout document dérivé de celui, est (issu de) l’œuvre
originale de Noël Macé (noelmace.com) (sans suggérer qu'il vous approuve, vous ou votre utilisation de l’œuvre, à moins
d'en demander expressément la permission).
 Pas d’Utilisation Commerciale — Vous n’avez pas le droit d’utiliser cette œuvre à des fins commerciales (ie. l'intention
première ou l'objectif d'obtenir un avantage commercial ou une compensation financière privée). Pour obtenir ce droit, une
autorisation explicite de l'auteur est requise.
 Partage dans les Mêmes Conditions — Si vous modifiez, transformez ou adaptez cette œuvre, vous n’avez le droit de
distribuer votre création que sous une licence identique ou similaire à celle-ci.
Pour toute demande de collaboration, d'utilisation commerciale ou de publication de ce support ou d'un dérivé de celui-ci sous une
licence incompatible, contacter l'auteur via les contacts indiqués sur le site http://www.noelmace.com. Vous êtes par ailleurs
vivement encouragé (sans obligation légale) à communiquer avec celui-ci si vous réalisez une œuvre dérivée ou toute amélioration
de ce support.

Weitere ähnliche Inhalte

Was ist angesagt?

Cours - Supervision SysRes et Présentation de Nagios
Cours - Supervision SysRes et Présentation de NagiosCours - Supervision SysRes et Présentation de Nagios
Cours - Supervision SysRes et Présentation de NagiosErwan 'Labynocle' Ben Souiden
 
Alphorm.com Support de la formation Vmware Esxi 6.0
Alphorm.com Support de la formation Vmware Esxi 6.0Alphorm.com Support de la formation Vmware Esxi 6.0
Alphorm.com Support de la formation Vmware Esxi 6.0Alphorm
 
L’ Administration des Réseaux en Pratique
L’ Administration des Réseaux en PratiqueL’ Administration des Réseaux en Pratique
L’ Administration des Réseaux en PratiqueAmadou Dia
 
DHCP sous fedora
DHCP sous fedora DHCP sous fedora
DHCP sous fedora Souhaib El
 
Presentation de nagios mohamed bouhamed
Presentation de nagios mohamed bouhamedPresentation de nagios mohamed bouhamed
Presentation de nagios mohamed bouhamedTECOS
 
Etude et mise en place d’un VPN
Etude et mise en place d’un VPNEtude et mise en place d’un VPN
Etude et mise en place d’un VPNCharif Khrichfa
 
Alphorm.com formation-GNS3
Alphorm.com formation-GNS3Alphorm.com formation-GNS3
Alphorm.com formation-GNS3Alphorm
 
Agilité / DevOps / Continuous Integration / Continuous Delivery - Présentatio...
Agilité / DevOps / Continuous Integration / Continuous Delivery - Présentatio...Agilité / DevOps / Continuous Integration / Continuous Delivery - Présentatio...
Agilité / DevOps / Continuous Integration / Continuous Delivery - Présentatio...Michel-Marie Maudet
 
NAT64 and DNS64 in 30 minutes
NAT64 and DNS64 in 30 minutesNAT64 and DNS64 in 30 minutes
NAT64 and DNS64 in 30 minutesIvan Pepelnjak
 
Mise en place de la solution d’authentification Radius sous réseau LAN câblé
Mise en place de la solution d’authentification Radius sous réseau LAN câbléMise en place de la solution d’authentification Radius sous réseau LAN câblé
Mise en place de la solution d’authentification Radius sous réseau LAN câbléCharif Khrichfa
 
VPN - Virtual Private Network
VPN - Virtual Private NetworkVPN - Virtual Private Network
VPN - Virtual Private Networkjulienlfr
 
Methodes d'accès dans les réseaux locaux
Methodes d'accès dans les réseaux locauxMethodes d'accès dans les réseaux locaux
Methodes d'accès dans les réseaux locauxInes Kechiche
 
Admin reseaux sous linux cours 3
Admin reseaux sous linux   cours 3Admin reseaux sous linux   cours 3
Admin reseaux sous linux cours 3Stephen Salama
 
Alphorm.com Formation Docker (1/2) : Installation et Administration
Alphorm.com Formation Docker (1/2) : Installation et AdministrationAlphorm.com Formation Docker (1/2) : Installation et Administration
Alphorm.com Formation Docker (1/2) : Installation et AdministrationAlphorm
 

Was ist angesagt? (20)

Cours - Supervision SysRes et Présentation de Nagios
Cours - Supervision SysRes et Présentation de NagiosCours - Supervision SysRes et Présentation de Nagios
Cours - Supervision SysRes et Présentation de Nagios
 
Freeswitch
FreeswitchFreeswitch
Freeswitch
 
Alphorm.com Support de la formation Vmware Esxi 6.0
Alphorm.com Support de la formation Vmware Esxi 6.0Alphorm.com Support de la formation Vmware Esxi 6.0
Alphorm.com Support de la formation Vmware Esxi 6.0
 
Résumé vlsm et cidr
Résumé vlsm et cidrRésumé vlsm et cidr
Résumé vlsm et cidr
 
L’ Administration des Réseaux en Pratique
L’ Administration des Réseaux en PratiqueL’ Administration des Réseaux en Pratique
L’ Administration des Réseaux en Pratique
 
DHCP sous fedora
DHCP sous fedora DHCP sous fedora
DHCP sous fedora
 
Présentation VOIP
Présentation  VOIPPrésentation  VOIP
Présentation VOIP
 
Presentation de nagios mohamed bouhamed
Presentation de nagios mohamed bouhamedPresentation de nagios mohamed bouhamed
Presentation de nagios mohamed bouhamed
 
Deeb web
Deeb webDeeb web
Deeb web
 
Etude et mise en place d’un VPN
Etude et mise en place d’un VPNEtude et mise en place d’un VPN
Etude et mise en place d’un VPN
 
Vpn
VpnVpn
Vpn
 
Alphorm.com formation-GNS3
Alphorm.com formation-GNS3Alphorm.com formation-GNS3
Alphorm.com formation-GNS3
 
Agilité / DevOps / Continuous Integration / Continuous Delivery - Présentatio...
Agilité / DevOps / Continuous Integration / Continuous Delivery - Présentatio...Agilité / DevOps / Continuous Integration / Continuous Delivery - Présentatio...
Agilité / DevOps / Continuous Integration / Continuous Delivery - Présentatio...
 
NAT64 and DNS64 in 30 minutes
NAT64 and DNS64 in 30 minutesNAT64 and DNS64 in 30 minutes
NAT64 and DNS64 in 30 minutes
 
Mise en place de la solution d’authentification Radius sous réseau LAN câblé
Mise en place de la solution d’authentification Radius sous réseau LAN câbléMise en place de la solution d’authentification Radius sous réseau LAN câblé
Mise en place de la solution d’authentification Radius sous réseau LAN câblé
 
VPN - Virtual Private Network
VPN - Virtual Private NetworkVPN - Virtual Private Network
VPN - Virtual Private Network
 
cours DHCP IPv4 et IPv6
cours DHCP IPv4 et IPv6cours DHCP IPv4 et IPv6
cours DHCP IPv4 et IPv6
 
Methodes d'accès dans les réseaux locaux
Methodes d'accès dans les réseaux locauxMethodes d'accès dans les réseaux locaux
Methodes d'accès dans les réseaux locaux
 
Admin reseaux sous linux cours 3
Admin reseaux sous linux   cours 3Admin reseaux sous linux   cours 3
Admin reseaux sous linux cours 3
 
Alphorm.com Formation Docker (1/2) : Installation et Administration
Alphorm.com Formation Docker (1/2) : Installation et AdministrationAlphorm.com Formation Docker (1/2) : Installation et Administration
Alphorm.com Formation Docker (1/2) : Installation et Administration
 

Andere mochten auch

Mise en place d’un serveur proxy : Cas du CCProxy
Mise en place d’un serveur proxy : Cas du CCProxyMise en place d’un serveur proxy : Cas du CCProxy
Mise en place d’un serveur proxy : Cas du CCProxyJeff Hermann Ela Aba
 
Ce hv6 module 54 proxy server technologies
Ce hv6 module 54 proxy server technologiesCe hv6 module 54 proxy server technologies
Ce hv6 module 54 proxy server technologiesVi Tính Hoàng Nam
 
Projet administration-sécurité-réseaux
Projet administration-sécurité-réseauxProjet administration-sécurité-réseaux
Projet administration-sécurité-réseauxRabeb Boumaiza
 
Les attaques reseaux par zellagui Amine
Les attaques reseaux par zellagui AmineLes attaques reseaux par zellagui Amine
Les attaques reseaux par zellagui AmineZellagui Amine
 
06 03 route
06 03 route06 03 route
06 03 routeNoël
 
06 02 opérations de sauvegarde
06 02 opérations de sauvegarde06 02 opérations de sauvegarde
06 02 opérations de sauvegardeNoël
 
06 04 arp
06 04 arp06 04 arp
06 04 arpNoël
 
06 05 résolution de nom
06 05 résolution de nom06 05 résolution de nom
06 05 résolution de nomNoël
 
06 01 interfaces
06 01 interfaces06 01 interfaces
06 01 interfacesNoël
 
07 03 sécurisation d'un serveur dns
07 03 sécurisation d'un serveur dns07 03 sécurisation d'un serveur dns
07 03 sécurisation d'un serveur dnsNoël
 
08 03 sécurisation d'un serveur web avec ssl
08 03 sécurisation d'un serveur web avec ssl08 03 sécurisation d'un serveur web avec ssl
08 03 sécurisation d'un serveur web avec sslNoël
 
SSL/TLS : Faille Heartbleed
SSL/TLS : Faille HeartbleedSSL/TLS : Faille Heartbleed
SSL/TLS : Faille HeartbleedThomas Moegli
 

Andere mochten auch (20)

Mise en place d’un serveur proxy : Cas du CCProxy
Mise en place d’un serveur proxy : Cas du CCProxyMise en place d’un serveur proxy : Cas du CCProxy
Mise en place d’un serveur proxy : Cas du CCProxy
 
Ce hv6 module 54 proxy server technologies
Ce hv6 module 54 proxy server technologiesCe hv6 module 54 proxy server technologies
Ce hv6 module 54 proxy server technologies
 
Proxy Server
Proxy ServerProxy Server
Proxy Server
 
Projet administration-sécurité-réseaux
Projet administration-sécurité-réseauxProjet administration-sécurité-réseaux
Projet administration-sécurité-réseaux
 
Cc proxy
Cc proxyCc proxy
Cc proxy
 
Squid
SquidSquid
Squid
 
Proxy Servers
Proxy ServersProxy Servers
Proxy Servers
 
Rapport finiale
Rapport finialeRapport finiale
Rapport finiale
 
Proxy server
Proxy serverProxy server
Proxy server
 
Wds
WdsWds
Wds
 
Les attaques reseaux par zellagui Amine
Les attaques reseaux par zellagui AmineLes attaques reseaux par zellagui Amine
Les attaques reseaux par zellagui Amine
 
06 03 route
06 03 route06 03 route
06 03 route
 
06 02 opérations de sauvegarde
06 02 opérations de sauvegarde06 02 opérations de sauvegarde
06 02 opérations de sauvegarde
 
06 04 arp
06 04 arp06 04 arp
06 04 arp
 
06 05 résolution de nom
06 05 résolution de nom06 05 résolution de nom
06 05 résolution de nom
 
06 01 interfaces
06 01 interfaces06 01 interfaces
06 01 interfaces
 
07 03 sécurisation d'un serveur dns
07 03 sécurisation d'un serveur dns07 03 sécurisation d'un serveur dns
07 03 sécurisation d'un serveur dns
 
08 03 sécurisation d'un serveur web avec ssl
08 03 sécurisation d'un serveur web avec ssl08 03 sécurisation d'un serveur web avec ssl
08 03 sécurisation d'un serveur web avec ssl
 
Ethical Hacking
Ethical HackingEthical Hacking
Ethical Hacking
 
SSL/TLS : Faille Heartbleed
SSL/TLS : Faille HeartbleedSSL/TLS : Faille Heartbleed
SSL/TLS : Faille Heartbleed
 

Ähnlich wie 08 04 mise en place d'un serveur mandataire (proxy)

08 02 mise en place de serveurs virtuels apache 2
08 02 mise en place de serveurs virtuels apache 208 02 mise en place de serveurs virtuels apache 2
08 02 mise en place de serveurs virtuels apache 2Noël
 
05 03 dépannage réseau
05 03 dépannage réseau05 03 dépannage réseau
05 03 dépannage réseauNoël
 
10 03 clients ldap
10 03 clients ldap10 03 clients ldap
10 03 clients ldapNoël
 
07 01 configuration élémentaire d'un dns
07 01 configuration élémentaire d'un dns07 01 configuration élémentaire d'un dns
07 01 configuration élémentaire d'un dnsNoël
 
LPIC1 10 01 logs
LPIC1 10 01 logsLPIC1 10 01 logs
LPIC1 10 01 logsNoël
 
05 02 surveillance et analyse de traffic tcpip
05 02 surveillance et analyse de traffic tcpip05 02 surveillance et analyse de traffic tcpip
05 02 surveillance et analyse de traffic tcpipNoël
 
LPIC1 11 01 sécurité réseaux
LPIC1 11 01 sécurité réseauxLPIC1 11 01 sécurité réseaux
LPIC1 11 01 sécurité réseauxNoël
 
01 04 compilation du noyau
01 04 compilation du noyau01 04 compilation du noyau
01 04 compilation du noyauNoël
 
10 01 configuration dhcp
10 01 configuration dhcp10 01 configuration dhcp
10 01 configuration dhcpNoël
 
04 03 logical volume manager
04 03 logical volume manager04 03 logical volume manager
04 03 logical volume managerNoël
 
10 02 authentification PAM
10 02 authentification PAM10 02 authentification PAM
10 02 authentification PAMNoël
 
01 06 gestion et interrogation du noyau et des modules noyau en exécution
01 06 gestion et interrogation du noyau et des modules noyau en exécution01 06 gestion et interrogation du noyau et des modules noyau en exécution
01 06 gestion et interrogation du noyau et des modules noyau en exécutionNoël
 
01 06 gestion et interrogation du noyau et des modules noyau en exécution
01 06 gestion et interrogation du noyau et des modules noyau en exécution01 06 gestion et interrogation du noyau et des modules noyau en exécution
01 06 gestion et interrogation du noyau et des modules noyau en exécutionNoël
 
06 03 notification aux utilisateurs des problèmes système
06 03 notification aux utilisateurs des problèmes système06 03 notification aux utilisateurs des problèmes système
06 03 notification aux utilisateurs des problèmes systèmeNoël
 
LPIC1 09 02 ps
LPIC1 09 02 psLPIC1 09 02 ps
LPIC1 09 02 psNoël
 
08 01 mise en place d'un serveur web
08 01 mise en place d'un serveur web08 01 mise en place d'un serveur web
08 01 mise en place d'un serveur webNoël
 
LPIC1 11 02 sécurité système
LPIC1 11 02 sécurité systèmeLPIC1 11 02 sécurité système
LPIC1 11 02 sécurité systèmeNoël
 
04 02 ajustement des accès aux périphériques de stockage
04 02 ajustement des accès aux périphériques de stockage04 02 ajustement des accès aux périphériques de stockage
04 02 ajustement des accès aux périphériques de stockageNoël
 
Installation Et Configuration De Monkey Spider
Installation Et Configuration De Monkey SpiderInstallation Et Configuration De Monkey Spider
Installation Et Configuration De Monkey SpiderMohamed Ben Bouzid
 

Ähnlich wie 08 04 mise en place d'un serveur mandataire (proxy) (20)

08 02 mise en place de serveurs virtuels apache 2
08 02 mise en place de serveurs virtuels apache 208 02 mise en place de serveurs virtuels apache 2
08 02 mise en place de serveurs virtuels apache 2
 
05 03 dépannage réseau
05 03 dépannage réseau05 03 dépannage réseau
05 03 dépannage réseau
 
10 03 clients ldap
10 03 clients ldap10 03 clients ldap
10 03 clients ldap
 
07 01 configuration élémentaire d'un dns
07 01 configuration élémentaire d'un dns07 01 configuration élémentaire d'un dns
07 01 configuration élémentaire d'un dns
 
LPIC1 10 01 logs
LPIC1 10 01 logsLPIC1 10 01 logs
LPIC1 10 01 logs
 
05 02 surveillance et analyse de traffic tcpip
05 02 surveillance et analyse de traffic tcpip05 02 surveillance et analyse de traffic tcpip
05 02 surveillance et analyse de traffic tcpip
 
Cours 8 squid.pdf
Cours 8 squid.pdfCours 8 squid.pdf
Cours 8 squid.pdf
 
LPIC1 11 01 sécurité réseaux
LPIC1 11 01 sécurité réseauxLPIC1 11 01 sécurité réseaux
LPIC1 11 01 sécurité réseaux
 
01 04 compilation du noyau
01 04 compilation du noyau01 04 compilation du noyau
01 04 compilation du noyau
 
10 01 configuration dhcp
10 01 configuration dhcp10 01 configuration dhcp
10 01 configuration dhcp
 
04 03 logical volume manager
04 03 logical volume manager04 03 logical volume manager
04 03 logical volume manager
 
10 02 authentification PAM
10 02 authentification PAM10 02 authentification PAM
10 02 authentification PAM
 
01 06 gestion et interrogation du noyau et des modules noyau en exécution
01 06 gestion et interrogation du noyau et des modules noyau en exécution01 06 gestion et interrogation du noyau et des modules noyau en exécution
01 06 gestion et interrogation du noyau et des modules noyau en exécution
 
01 06 gestion et interrogation du noyau et des modules noyau en exécution
01 06 gestion et interrogation du noyau et des modules noyau en exécution01 06 gestion et interrogation du noyau et des modules noyau en exécution
01 06 gestion et interrogation du noyau et des modules noyau en exécution
 
06 03 notification aux utilisateurs des problèmes système
06 03 notification aux utilisateurs des problèmes système06 03 notification aux utilisateurs des problèmes système
06 03 notification aux utilisateurs des problèmes système
 
LPIC1 09 02 ps
LPIC1 09 02 psLPIC1 09 02 ps
LPIC1 09 02 ps
 
08 01 mise en place d'un serveur web
08 01 mise en place d'un serveur web08 01 mise en place d'un serveur web
08 01 mise en place d'un serveur web
 
LPIC1 11 02 sécurité système
LPIC1 11 02 sécurité systèmeLPIC1 11 02 sécurité système
LPIC1 11 02 sécurité système
 
04 02 ajustement des accès aux périphériques de stockage
04 02 ajustement des accès aux périphériques de stockage04 02 ajustement des accès aux périphériques de stockage
04 02 ajustement des accès aux périphériques de stockage
 
Installation Et Configuration De Monkey Spider
Installation Et Configuration De Monkey SpiderInstallation Et Configuration De Monkey Spider
Installation Et Configuration De Monkey Spider
 

Mehr von Noël

LPIC2 12 01 pare-feu et nating
LPIC2 12 01 pare-feu et natingLPIC2 12 01 pare-feu et nating
LPIC2 12 01 pare-feu et natingNoël
 
présentation des services Open Source pour GNU/Linux
présentation des services Open Source pour GNU/Linuxprésentation des services Open Source pour GNU/Linux
présentation des services Open Source pour GNU/LinuxNoël
 
LPIC1 10 04 anacron
LPIC1 10 04 anacronLPIC1 10 04 anacron
LPIC1 10 04 anacronNoël
 
LPIC1 10 05 at
LPIC1 10 05 atLPIC1 10 05 at
LPIC1 10 05 atNoël
 
LPIC1 10 03 cron
LPIC1 10 03 cronLPIC1 10 03 cron
LPIC1 10 03 cronNoël
 
LPIC1 10 02 temps
LPIC1 10 02 tempsLPIC1 10 02 temps
LPIC1 10 02 tempsNoël
 
LPIC1 09 06 kill
LPIC1 09 06 killLPIC1 09 06 kill
LPIC1 09 06 killNoël
 
LPIC1 09 05 priorités
LPIC1 09 05 prioritésLPIC1 09 05 priorités
LPIC1 09 05 prioritésNoël
 
LPIC1 09 04 bg fg
LPIC1 09 04 bg fgLPIC1 09 04 bg fg
LPIC1 09 04 bg fgNoël
 
LPIC1 09 03 top
LPIC1 09 03 topLPIC1 09 03 top
LPIC1 09 03 topNoël
 
LPIC1 09 01 intro
LPIC1 09 01 introLPIC1 09 01 intro
LPIC1 09 01 introNoël
 
LPIC1 08 05 runlevels
LPIC1 08 05 runlevelsLPIC1 08 05 runlevels
LPIC1 08 05 runlevelsNoël
 
LPIC1 08 03 grub2
LPIC1 08 03 grub2LPIC1 08 03 grub2
LPIC1 08 03 grub2Noël
 
LPIC1 08 02 grub legacy
LPIC1 08 02 grub legacyLPIC1 08 02 grub legacy
LPIC1 08 02 grub legacyNoël
 
LPIC1 08 01 démarrage
LPIC1 08 01 démarrageLPIC1 08 01 démarrage
LPIC1 08 01 démarrageNoël
 
LPIC1 07 14 mount
LPIC1 07 14 mountLPIC1 07 14 mount
LPIC1 07 14 mountNoël
 
LPIC1 07 13 fsck
LPIC1 07 13 fsckLPIC1 07 13 fsck
LPIC1 07 13 fsckNoël
 
LPIC1 07 18 debugfs
LPIC1 07 18 debugfsLPIC1 07 18 debugfs
LPIC1 07 18 debugfsNoël
 
LPIC1 07 17 tune2fs
LPIC1 07 17 tune2fsLPIC1 07 17 tune2fs
LPIC1 07 17 tune2fsNoël
 
LPIC1 07 16 dumpe2fs
LPIC1 07 16 dumpe2fsLPIC1 07 16 dumpe2fs
LPIC1 07 16 dumpe2fsNoël
 

Mehr von Noël (20)

LPIC2 12 01 pare-feu et nating
LPIC2 12 01 pare-feu et natingLPIC2 12 01 pare-feu et nating
LPIC2 12 01 pare-feu et nating
 
présentation des services Open Source pour GNU/Linux
présentation des services Open Source pour GNU/Linuxprésentation des services Open Source pour GNU/Linux
présentation des services Open Source pour GNU/Linux
 
LPIC1 10 04 anacron
LPIC1 10 04 anacronLPIC1 10 04 anacron
LPIC1 10 04 anacron
 
LPIC1 10 05 at
LPIC1 10 05 atLPIC1 10 05 at
LPIC1 10 05 at
 
LPIC1 10 03 cron
LPIC1 10 03 cronLPIC1 10 03 cron
LPIC1 10 03 cron
 
LPIC1 10 02 temps
LPIC1 10 02 tempsLPIC1 10 02 temps
LPIC1 10 02 temps
 
LPIC1 09 06 kill
LPIC1 09 06 killLPIC1 09 06 kill
LPIC1 09 06 kill
 
LPIC1 09 05 priorités
LPIC1 09 05 prioritésLPIC1 09 05 priorités
LPIC1 09 05 priorités
 
LPIC1 09 04 bg fg
LPIC1 09 04 bg fgLPIC1 09 04 bg fg
LPIC1 09 04 bg fg
 
LPIC1 09 03 top
LPIC1 09 03 topLPIC1 09 03 top
LPIC1 09 03 top
 
LPIC1 09 01 intro
LPIC1 09 01 introLPIC1 09 01 intro
LPIC1 09 01 intro
 
LPIC1 08 05 runlevels
LPIC1 08 05 runlevelsLPIC1 08 05 runlevels
LPIC1 08 05 runlevels
 
LPIC1 08 03 grub2
LPIC1 08 03 grub2LPIC1 08 03 grub2
LPIC1 08 03 grub2
 
LPIC1 08 02 grub legacy
LPIC1 08 02 grub legacyLPIC1 08 02 grub legacy
LPIC1 08 02 grub legacy
 
LPIC1 08 01 démarrage
LPIC1 08 01 démarrageLPIC1 08 01 démarrage
LPIC1 08 01 démarrage
 
LPIC1 07 14 mount
LPIC1 07 14 mountLPIC1 07 14 mount
LPIC1 07 14 mount
 
LPIC1 07 13 fsck
LPIC1 07 13 fsckLPIC1 07 13 fsck
LPIC1 07 13 fsck
 
LPIC1 07 18 debugfs
LPIC1 07 18 debugfsLPIC1 07 18 debugfs
LPIC1 07 18 debugfs
 
LPIC1 07 17 tune2fs
LPIC1 07 17 tune2fsLPIC1 07 17 tune2fs
LPIC1 07 17 tune2fs
 
LPIC1 07 16 dumpe2fs
LPIC1 07 16 dumpe2fsLPIC1 07 16 dumpe2fs
LPIC1 07 16 dumpe2fs
 

08 04 mise en place d'un serveur mandataire (proxy)

  • 1. Linux LPIC2 noelmace.com Noël Macé Formateur et Consultant indépendant expert Unix et FOSS http://www.noelmace.com Mise en place d'un serveur mandataire (proxy) Services web Licence Creative Commons Ce(tte) œuvre est mise à disposition selon les termes de la Licence Creative Commons Attribution - Pas d’Utilisation Commerciale - Partage dans les Mêmes Conditions 3.0 France.
  • 2. Linux LPIC2 noelmace.com Plan • Introduction  Squid • Configuration  Paramètres généraux • ACLs  ACLs : Exemples • Restriction d'accès • Authentification utilisateur  Authentification utilisateur pour Squid 2.4-
  • 3. Linux LPIC2 noelmace.com Introduction • Serveur mandataire (proxy)  intermédiaire entre deux réseaux (ex : local / internet) • Avantages et fonctionnalités  performances • mémoire cache, compression  sécurité • anonymisation • surveillance (journalisation)  filtrage • des publicités et contenus lourds (performance) • des contenus indésirables
  • 4. Linux LPIC2 noelmace.com Squid • Proxy libre de référence  Licence GNU GPL  créé en Juillet 1996  Notamment utilisé par Wikimedia Fondation et Flickr  version actuelle (au 13 Juillet 2013) : 3.3.8 • Support des protocoles HTTP, HTTPS, FTP et Gopher • Nombreuses fonctionnalités  mémoire cache  contrôle étendu des accès  cache DNS  mandataire inverse
  • 5. Linux LPIC2 noelmace.com Configuration • squid.conf  /etc/squid (CentOS et Debian Squid 2) ou /etc/squid3 (Debian Squid 3)  Ensemble de directive complexes • ligne par ligne  Fonctionnel à l'installation • Exemple (Extrait) : visible_hostname ubuntu http_port 3128 ... acl allowedips src 192.168.1.1/255.255.255.0 ... forwarded_for off ... visible_hostname ubuntu http_port 3128 ... acl allowedips src 192.168.1.1/255.255.255.0 ... forwarded_for off ...
  • 6. Linux LPIC2 noelmace.com Paramètres généraux • Définition du port d'écoute HTTP (3128 par défaut) • Interface d'écoute HTTP (toutes par défaut)  limiter aux réseaux locaux pour des raisons de sécurité • Nom de la machine (obtenu via gethostname() par défaut) http_port 3177http_port 3177 http_port 192.168.1.1:3177http_port 192.168.1.1:3177 http_port 3177http_port 3177 visible_hostname nom_machinevisible_hostname nom_machine
  • 7. Linux LPIC2 noelmace.com ACLs • Syntaxe  acltype : • src : adresse IP de la source (ie. le client) (adresse/masque) ou d'une place d'adresses (adresse_IP_debut-adresse_IP_fin) • dst : adresse IP de la destination (ie. ordinateur cible) • srcdomain : domaine du client • dstdomain : domaine de destination. • url_regex : chaîne contenu dans l'URL - possibilité d'utiliser les jokers ou un fichier - sensible à la casse • urlpath_regex : chaîne comparée avec le chemin de l'URL - possibilité d'utiliser les jokers • proto : protocole. acl aclname acltype string[string2]acl aclname acltype string[string2]
  • 8. Linux LPIC2 noelmace.com ACLs : Exemples acl mon_domaine_dst dstdomain noelmace.comacl mon_domaine_dst dstdomain noelmace.com acl url_interdit url_regex forbiddenacl url_interdit url_regex forbidden acl url_interdites url_regex "/etc/squid/denied_url"acl url_interdites url_regex "/etc/squid/denied_url" acl clients src 192.168.0.0/255.255.0.0acl clients src 192.168.0.0/255.255.0.0
  • 9. Linux LPIC2 noelmace.com Restriction d'accès • A partir d'une acl pré-définie  doit être placé après la définition de cette acl • Syntaxe • Exemples  interdire l'accès au domaine noelmace.com  interdire l'accès aux pages contenant le mot forbidden  Restreindre l'accès au proxy aux seul réseau 192.168.0.0 http_access allow|deny [!]aclnamehttp_access allow|deny [!]aclname http_access deny mon_domaine_dst http_access allow all http_access deny mon_domaine_dst http_access allow all http_access deny url_interdit http_access allow all http_access deny url_interdit http_access allow all http_access allow localhost http_access allow clients http_access deny all http_access allow localhost http_access allow clients http_access deny all
  • 10. Linux LPIC2 noelmace.com Authentification utilisateur • 4 types d'authentification HTTP possible  Basic, NTLM (SMB LM, v1 and v2), Digest, et Negotiate. • Nombreuses solutions disponibles  APM, LDAP, NCSA auth, SMB … • Avec NCSA auth  à partir des mêmes outils (htpasswd) que pour Apache2 mod_auth_basic  Exemple • Documentation : http://wiki.squid-cache.org/Features/Authentication • auth_param basic program /usr/local/squid/bin/ncsa_auth /usr/local/squid/etc/passwd acl auth_users proxy_auth REQUIRED http_access allow auth_users http_access deny all auth_param basic program /usr/local/squid/bin/ncsa_auth /usr/local/squid/etc/passwd acl auth_users proxy_auth REQUIRED http_access allow auth_users http_access deny all
  • 11. Linux LPIC2 noelmace.com Authentification utilisateur pour Squid 2.4- • Avec NCSA auth • Avec LDAP • LDAP_USER : ou (organizational unit) contenant les clients  exemple ou=people, ou= ac-limoges, ou=education, ou=gouv, c=fr authenticate_program /usr/lib/ncsa_auth /etc/squid/passwd acl auth_users proxy_auth REQUIRED acl all src 0/0 http_access allow auth_users http_access deny all authenticate_program /usr/lib/ncsa_auth /etc/squid/passwd acl auth_users proxy_auth REQUIRED acl all src 0/0 http_access allow auth_users http_access deny all acl identification proxy_auth REQUIRED http_access allow identification authentificate_program /usr/lib/squid/squid_ldap_auth -b $LDAP_USER -u uid SERVEUR_LDAP acl identification proxy_auth REQUIRED http_access allow identification authentificate_program /usr/lib/squid/squid_ldap_auth -b $LDAP_USER -u uid SERVEUR_LDAP
  • 12. Linux LPIC2 noelmace.com Test : configuration du client Debian • Pour tester votre serveur, vous pouvez utilisez n'importe quel client http (firefox, epiphany, etc …) • La configuration peu se faire au niveau de l'OS client ou du logiciel client web  pour configurer firefox : Documentation officielle  pour configurer le proxy sur votre client Debian •$ gnome-network-preferences$ gnome-network-preferences
  • 13. Linux LPIC2 noelmace.com Ce qu’on a couvert • Gestion et configuration du serveur mandataire Squid • Restriction d'accès grâce aux ACLs • Authentification utilisateur Weight : 1 Description : Candidates should be able to install and configure a proxy server, including access policies, authentication and resource usage. 208.3 Implementing a proxy server
  • 14. Linux LPIC2 noelmace.com Licence Ce(tte) œuvre (y compris ses illustrations, sauf mention explicite) est mise à disposition selon les termes de la Licence Creative Commons Attribution - Pas d’Utilisation Commerciale - Partage dans les Mêmes Conditions 3.0 France. Pour voir une copie de cette licence, visitez http://creativecommons.org/licenses/by-nc-sa/3.0/fr/ ou écrivez à : Creative Commons, 444 Castro Street, Suite 900, Mountain View, California, 94041, USA. Vous êtes libre de :  partager — reproduire, distribuer et communiquer cette œuvre  remixer — adapter l’œuvre Selon les conditions suivantes :  Attribution — Vous devez clairement indiquer que ce document, ou tout document dérivé de celui, est (issu de) l’œuvre originale de Noël Macé (noelmace.com) (sans suggérer qu'il vous approuve, vous ou votre utilisation de l’œuvre, à moins d'en demander expressément la permission).  Pas d’Utilisation Commerciale — Vous n’avez pas le droit d’utiliser cette œuvre à des fins commerciales (ie. l'intention première ou l'objectif d'obtenir un avantage commercial ou une compensation financière privée). Pour obtenir ce droit, une autorisation explicite de l'auteur est requise.  Partage dans les Mêmes Conditions — Si vous modifiez, transformez ou adaptez cette œuvre, vous n’avez le droit de distribuer votre création que sous une licence identique ou similaire à celle-ci. Pour toute demande de collaboration, d'utilisation commerciale ou de publication de ce support ou d'un dérivé de celui-ci sous une licence incompatible, contacter l'auteur via les contacts indiqués sur le site http://www.noelmace.com. Vous êtes par ailleurs vivement encouragé (sans obligation légale) à communiquer avec celui-ci si vous réalisez une œuvre dérivée ou toute amélioration de ce support.