
grâce à ce tutoriel vous êtes en mesure d'installer, configurer un serveur proxy sous linux en particulier la famille de debian (ubuntu)
De nos jours, avec les besoins accrus de sécurité informatique et d’anonymat, utiliser des proxys est devenu très courant pour les internautes. Ce dernier est une machine qui a pour fonction de relayer ou de retransmettre des requêtes entre un poste client et un serveur. Ils sont notamment utilisés pour assurer les fonctions de mémoire cache, de login des requêtes, pour la sécurité du réseau local, pour le filtrage...
Cependant, c’est quoi un serveur proxy ?
Quel est son mode de fonctionnement et ses différents types ?
Quelles sont les étapes à suivre pour son déploiement plus précisément son installation et sa configuration ?
j'essaie de répondre à cette série de question dans la suite du tutoriel .
A l’origine, le but principal des serveurs proxy était de faciliter le processus de communication. Cependant, avec les restrictions de l’usage d’internet telles que des limitations physiques et géographiques de plus en plus imposées dans le monde, les serveurs proxy sont devenus des outils essentiels. Les serveurs proxy permettent de dissimuler ou masquer l’adresse IP utilisée par l’ordinateur client lors de la navigation mais aussi d’accéder à des sites interdit d’accès dans votre zone géographique. Mais ce n’est pas tout, ils permettent également l’amélioration de la vitesse de navigation, de naviguer sur internet en toute sécurité contre toutes sortes de menaces, d’empêcher que des utilisateurs non autorisés puissent naviguer sur votre ordinateur, traverser les pare-feu et les filtres internet…
Un serveur proxy se définit comme étant un ordinateur autonome qui a pour rôle de connecter un ordinateur client à un serveur distant. Il agit comme un intermédiaire entre votre ordinateur et les serveurs web auquel vous vous connectez lorsque vous surfez ou vous naviguez. En d’autre terme, le serveur proxy appelé aussi le serveur mandataire est un serveur recevant des requêtes qui ne lui sont pas destinées et qui les transmet aux autres serveurs. Quand il reçoit une requête le serveur proxy stocke le résultat. Si la même requête lui est à nouveau envoyée, il vérifie que le résultat n’a pas été modifié et renvoie le résultat qu’il a déjà dans sa mémoire cache à la machine qui a fait la requête.
Le principe de fonctionnement basique d’un serveur proxy est assez simple : il s’agit d’un serveur mandaté par une application pour effectuer une requête sur internet à sa place. Ainsi lorsqu’un utilisateur se connecte à internet à l’aide d’une application cliente configurée pour utiliser un serveur proxy, celle-ci va alors se connecter en premier lieu au serveur proxy et lui donner sa requête. Le serveur proxy va alors se connecter au serveur que l’application cliente cherche à joindre et lui transmettre la requête. Le serveur va ensuite donner sa réponse au proxy, qui va à son tour la transmettre à l’application cliente. Parmi ces trois exemples ci-dessous, le second exemple décrit ce fonctionnement.
Les avantages d'un serveur proxy sont nombreux:
Qui dit avantages, dit également inconvénients. Comme nous l’avons vu au-dessus, c’est lui qui fait l’intermédiaire entre vous et le web, donc il voit et peut enregistrer tout ce qui circule entre votre ordinateur et le web, cela peut être risqué !
Si vous utilisez un proxy, il doit être irréprochable car lorsque vous vous connectez à votre banque, votre proxy pourrait très bien enregistrer vos codes (même si ceux-ci sont émis dans des flux https) ! Il faut donc utiliser un proxy dont vous êtes sûr, ou alors ne pas l’utiliser : c’est à dire mettre des exceptions à l’utilisation de celui-ci ;
Un autre inconvénient des proxys est la technologie utilisée sur les sites web. En effet, certains sites peuvent utiliser des technologies de connexion directes entre votre ordinateur et le serveur Web, dans ce cas, il peut être impossible de se connecter à ce genre de sites si vous êtes caché derrière un proxy. Vous devrez là encore mettre le site concerné en exception proxy.
Si le serveur proxy est très sollicité, il peut éventuellement mettre plus longtemps à répondre, donc il est possible que le surf à travers un proxy soit un peu plus lent que le surf direct sur Internet.
Les différents types de serveur proxy ont été mis au point par les développeurs web. Chacun d’eux a des caractéristiques spécifiques, mais ils ont tous le même objectif de permettre à leurs utilisateurs de naviguer sur internet dans de meilleures conditions. Parmi ses différents types de proxy nous pouvons citer :
Ces types de proxy fonctionnement comme des intermédiaires transparents entre vous et un autre serveur, mais n’interviennent pas dans la commande envoyée c’est-à-dire qu’un proxy transparent ne change ni ne cache les informations telles que l’adresse IP de l’utilisateur.
le fonctionnement de ce type de serveur proxy est pratiquement identique à celui des serveurs proxy transparents. Leur avantage, c’est qu’ils effectuent régulièrement des mises en cache des données utilisées ce qui permet une meilleure vitesse de navigation. La plupart des proxy assurent ainsi une fonction de cache (en anglais caching), c’est-à-dire la capacité à garder en mémoire (en cache) les pages les plus souvent visitées par les utilisateurs du réseau local afin de pouvoir les leur fournir le plus rapidement possible.
C’est le type de serveur proxy le plus courant. Ils sont aussi appelés proxy web et sont principalement utilisés pour naviguer sur internet anonymement. Ces serveurs sont principalement utilisés pour garantir le respect de sa propre vie privée. Être anonyme permet de se sentir en sécurité, de pouvoir surfer sans conséquence, de contourner les blocages.
Si vous vous connectez à internet via ce type de serveur proxy et que vous essayez de télécharger une image par exemple, celle-ci sera lue sur un autre serveur puis vous sera renvoyée, ce qui permet de protéger l’ordinateur d’attaques informatiques directes.
Parmi ces différents types de proxy, celui qui retiendra mon attention est le serveur proxy anonymes et principalement le Squid que nous allons aborder dans la suite.
Squid est un serveur proxy fonctionnant sur le système d’exploitation Linux. Il est un serveur mandataire qui est entièrement libre et performant. Il utilise des protocoles FTP, http, HTTPS et Gopher.
Il est à noter que l’installation et la configuration du serveur proxy squid se déroule en plusieurs étapes :
Première étape :
Cette étape consiste tout d'abord à avoir une connexion à internet et disposer des droits d'administration ; pour cela il faut ouvrir le Terminal et lancer la commande sudo su
$ sudo su
password for [username] :
#
Deuxième étape :
Cette étape est l'étape de mis à jour de système et le mis à jour des paquets. Pour cela, lancer la commande :
# apt-get upgrade && apt-get update
pour la mis à jour du système et la mis à jour des paquets
Une fois le système et les paquets sont à jour, nous pouvons maintenant passer à l'étape trois.
Troisième étape :
Constitue l'étape d'installation de Squid. Pour installer le Squid nous utilisons la commande :
# apt-get install squid
Une fois l'installation terminée, nous pouvons maintenant entrer dans le répertoire où est installé squid ; nous devons savoir que le dossier squid se trouve dans le répertoire /etc/squid , pour cela utilisant la commande :
# cd /etc/squid
Une fois dans le répertoire squid, nous pouvons voir son contenu en tapant la commande : ls
Dans le répertoire squid nous avons un fichier squid.conf qui est le fichier qui nous permet de configurer notre proxy squid ce qui nous emmène à l'étape quatre qui est l'étape de configuration de notre serveur proxy.
Quatrième étape :
C'est l'étape de configuration du serveur. Pour configurer notre serveur, nous devons sauvegarder le fichier original squid.conf ; pour cela, nous devons utiliser la commande :
# cp squid.conf squid.conf.bak
Une fois que la sauvegarde terminée, nous pouvons maintenant procéder à la modification de ce fichier en tapant la commande :
# nano squid.conf
Une fois accéder à ce fichier, nous pouvons maintenant procéder à la configuration de notre proxy.
Pour ce qui concerne notre configuration, nous devons chercher la ligne acl localhost src 127.0.0.1/32 et nous ajoutons en bas
acl allowedips src l'addresse ip de notre réseau local, par exemple 192.168.0.0/24 comme ceci
acl allowedips src 192.168.0.0/24
Puis on modifie le port en cherchant la ligne http_access port pour modifier le numéro de port qui est par défaut 3128 ;
http_port 3000
Ensuite cherchons la ligne http_access allow localhost et ajoutons à la suite:
http_access allow allowedips
pour autoriser le nom du groupe de notre addresse ip qui est allowedips.
Puis dans la partie TAG: error_directory, on enlève le # et on modifie cette ligne comme suit : TAG: error_directory /usr/share/squid/errors/french pour configurer le message d’erreur en français.
Une fois cette configuration terminée, nous pouvons maintenant demarrer squid en utilisant la commande :
service squid start ou
service squid restart
pour demarrer ou rédemarrer squid. si cette commande ne marche essayez :
squid start ou
squid restart
Par défaut, squid refuse toute connexion sortante des clients. Pour cela, il faut le configurer à autoriser le réseau à sortir sur internet. Pour permettre l'autorisation, il faudra au moins une règle. A ce type de configuration nous utilisons la règle Access Controle list (acl ). Les autorisations se font toujours dans le fichier squid .conf. Pour cela, cherchons la ligne http_access deny et ajoutons au-dessus http_access allow "le nom du groupe" de machine à autoriser.
Exemple :
acl mon_reseau 192.168.0.0/24
http_access allow mon_reseau
Dans cet exemple nous autorisons à notre réseau dont le nom est "mon_reseau" et l'adresse ip 192.168.0.0/24 à sortir sur internet.
Pour permettre une meilleure utilisation du service, les machines clientes doivent bien sûr être configurées en conséquence. Pour cela, les machines doivent être connectées au réseau local avec l'adresse Ip du serveur, et essayées des ping entre eux. Une fois le réseau local établie, nous allons maintenant ouvrir notre navigateur si c'est internet explore, on va dans :
Outils puis Options Internet et on selectionne l'onglet Connexion puis Résau local, et cocher "serveur proxy" et saisir l'adresse ip de celui-ci plus le numéro de port.
Si vous êtes sous firefox mozila, allez dans Edition puis Préférences, Avancés puis paramètres et configuration manuelle du proxy et entrer l'adresse proxy et le numéro de port.
Pour interdire l'accès à certains sites comme google.com par exemple, on procède de cette manière :
acl google dstdomain google.com
http_access deny google.
Ici, le dstdomaine est le nom de domaine du serveur
Voila le tutoriel est terminé en bref un serveur proxy est très capital dans le domaine de sécurité réseau, en garantissant notre passage sur internet, et en permettant une meilleur configuration de notre réseau local.
Je remercie Pacome, Bovira qui m'ont beaucoup aidé à la reussite de ce tutoriel
Tony NGUEREZA 11 Jan 2016, 15h24
Aucun commentaire n'a encore été ajouté soyez le premier a ajouté un commentaire
Vous n'êtes pas connecter veuillez vous connecter ou créer gratuitement un compte pour poster des commentaires