Mise en place d'un serveur proxy

  1. Introduction
  2. Préparatifs
  3. Installation de Wingate
  4. Configuration de Wingate
  5. Configuration des applications
  6. Conclusions


1. Introduction

Voici donc la partie pratique pour connecter tout un réseau local à Internet en utilisant un système proxy.

Je vous conseille très vivement de lire la partie théorique sur le partage d'une connexion Internet si vous ne savez pas très bien ce qu'est un serveur proxy.

La manière la moins chère de mettre en place un tel serveur est l'installation d'un logiciel idoine sur un ordinateur possédant une carte réseau (pour le LAN) et un modem (pour Internet), ou deux cartes réseaux (une pour le LAN, l'autre pour Internet) dans le cas d'une connexion par câble.

Il existe de nombreux logiciels "proxy". Pour le reste de ce chapitre, je vais uniquement parler de Wingate (http://www.wingate.net), logiciel remarquable par son interface graphique accueillante et sa configuration aisée. Des internautes m'ont reproché, peut-être à juste titre, de ne parler que de Wingate. Il est clair que je n'ai pas d'actions dans la société Deerfield qui produit Wingate. Il existe énormément de programmes proxy similaires à Wingate; choisissez celui qui vous convient à la page http://www.winfiles.com/apps/nt/servers-proxy.html. Il me fallait cependant prendre un programme comme exemple pour la suite de cet exposé; j'ai choisi Wingate car il s'inscrit comme leader dans ce domaine, et parce que c'est un des premiers programmes que j'ai découvert. A vous de faire votre choix selon vos besoins et vos moyens !

Lorsque j'ai écrit ce chapitre, Wingate en était à la version 2.1d. Depuis quelques mois, c'est la version 3 qui vous est proposée. Cette version que je n'ai pas testée tend à rendre le système proxy plus convivial et transparent qu'il ne l'était auparavant (comparé à une solution de type routage NAT); le peu que j'ai compris sur la version 3 de Wingate est qu'il propose désormais l'installation d'un client sur chaque machine qui "socksifie" (voir plus loin les explication sur le service SOCKS) la majorité des applications et simplifie ainsi leur configuration. Il n'en demeure pas moins que l'installation d'un système proxy reste plus délicate à mettre en place qu'un système de routage NAT, et c'est pourquoi je n'ai pas l'intention d'étudier cette nouvelle mouture de Wingate. Je tiens quand même à exposer ici l'installation de Wingate dans sa version 2.1d pour permettre au lecteur de comprendre le fonctionnement d'un modèle proxy. Si vous recherchez la version 2.1d de Wingate, utilisez FTP Search et faites une recherche sur le fichier wg21d95.exe (version 9x) ou wg21dnt.exe (version NT) pour pouvoir downloader l'ancienne version.

Remarque généralement valable partout, je ne saurai que trop vous recommander d'acquérir Windows NT pour le serveur proxy; Wingate sous NT est la seule solution stable (dans les systèmes Microsoft). En effet, Windows 95/98 n'est pas un bon système pour les réseaux et vous aurez immanquablement des crashs assez fréquents du système proxy si vous utilisez ce système d'exploitation.

Up

2. Préparatifs

Avant d'installer Wingate, je suppose que vous êtes en ordre avec les points suivants :

  1. Vous avez configuré correctement votre LAN sous TCP/IP, avec des adresses IP de type 192.168.0.1, 192.168.0.2, etc... (masque de sous-réseau : 255.255.255.0)
  2. Une de vos machine peut se connecter à Internet :

TCP/IP -> Carte NE2000
TCP/IP -> Carte d'accès distant

TCP/IP -> Carte NE2000
TCP/IP -> Carte NE2000

Quelques remarques s'imposent à ce niveau :

Serveurs DNS de votre ISP

Vous constaterez que ces données sur le DNS sont reprises sur la carte tournant sur le réseau interne (192.168.0.1) : en effet, Windows n'attribue pas spécifiquement des valeurs DNS à une interface particulière.

Up

3. Installation de Wingate

Note préalable : Wingate est un shareware. Dans sa version non registrée, il vous permet de configurer plusieurs utilisateurs, mais un seul utilisateur peut "traverser" à la fois le proxy.
Si vous ne voulez donc connecter que deux ordinateurs à Internet en même temps, cette option est suffisante puisque l'ordinateur qui fait tourner Wingate peut se connecter directement à Internet (sans passer par le système proxy); seul l'autre ordinateur traversera Wingate.
Si plus d'ordinateurs doivent pouvoir traverser simultanément le proxy, vous devrez donc payer en conséquence (le prix de Wingate varie selon le nombre de connexions simultanées dont vous voulez bénéficier).

L'installation de Wingate ne pose pas de problème particulier. Configurez tous les services que le programme vous propose.
Le logiciel vous demande à un moment votre SMTP, c'est à dire le serveur de votre ISP qui accepte vos e-mails sortants (souvent une adresse de type mail.isp.com), ainsi que le serveur de news que vous voulez utiliser (vous pouvez prendre par exemple celui de votre ISP (news.isp.com), mais ce n'est pas une obligation). Laissez le champ blanc pour le serveur IRC.

N'installez pas le système DHCP, sauf si vous en avez réellement besoin (adresses IP limitées) et que vous connaissez bien ce genre de services.

Up

4. Configuration de Wingate

Wingate tourne, que ce soit sous 9x ou sous NT, comme un service, c'est à dire que vous ne verrez pas de programme ouvert vous signifiant que Wingate est actif.
Wingate se contrôle à l'aide du 'Gatekeeper'. Je vous donne un bref aperçu des possibilités de ce module :

Présentation de Wingate

Je vous laisse découvrir par vous-même les possibilités de configuration offertes par ce programme. Voici cependant quelques conseils :

Création d'un nouvel utilisateur

Ensuite précisez à Wingate comment l'identifier via son adresse IP. Utilisez pour cela l'icône 'Assumed Users'.

Identification des utilisateurs par leur IP

Empêchez les connexions sur l'interface Internet

Le système de cache de Wingate

Utilisation par Wingate du proxy de votre ISP

Notez bien que certaines applications n'aiment pas ce système de double proxy. Par exemple, les premières versions de l'installation active de l'Explorer 4 exigeait la désactivation temporaire de ce service.

Désactivez les fichiers logs qui prennent de la place

Up

5. Configuration des applications

En-dehors du serveur proxy, dont les applications n'ont pas besoin d'utiliser le système proxy puisqu'elles sont directement connectées à Internet, toutes les applications des ordinateurs du réseau interne doivent être configurées spécifiquement pour traverser le proxy.

Je vous donne ci-après un aperçu des applications courantes dont les services sont configurés automatiquement dans Wingate lorsque vous l'installez. Je suppose dans ces exemples que le serveur proxy d'IP 192.168.0.1 s'appelle "wingate" (indiqué dans le fichier host).

Notez bien que toutes ces considérations ne concernent que l'utilisation de la "vieille" version de Wingate. Il semblerait que la version 3 de Wingate installe un client sur chaque poste pour s'éviter ces installations difficiles; la configuration des applications devrait ainsi être transparente et ne pas soucier de la présence d'un serveur proxy.

Le système de désignation de noms (DNS)

Ce service n'est pas une application à proprement parler, mais c'est lui qui permet de résoudre vos URL.

Configuration du DNS pour les ordinateurs du LAN



Les browsers web (Internet Explorer, Netscape Navigator, etc...)

Configuration d'Internet Explorer

Configuration de Netscape Navigator



Les clients FTP (il y en a tellement...)

Vous trouverez le plus souvent un onglet ou boite de dialogue pour une configuration via un serveur proxy. Comme pour les clients web, indiquez simplement l'emplacement du proxy et le port (21 par défaut). Comme type de connexion, utilisez 'USER user@site' sous CuteFTP, ou 'user w/out login' sur d'autres programmes.

Configuration de CuteFTP

Retenez cependant ceci : avec un client FTP utilisant le service FTP de Wingate, vous ne pourrez vous connecter qu'à des serveurs FTP travaillant en port 21. Si vous aviez l'habitude de vous connecter à des serveurs FTP travaillant sur des ports "exotiques" (comme 8021, 666, etc...), vous devrez utiliser un client FTP se connectant par le service SOCKS (voir plus loin).

Les clients de courrier électronique (Outlook Express, Eudora, etc...)

Quelques subtilités dans cette section :

  1. Tout d'abord pour le mail sortant (SMTP) :
    Configurez simplement pour le SMTP l'emplacement du serveur proxy.
    Dans Wingate, vous aurez préalablement configuré le "mapping" SMTP vers le serveur SMTP de votre ISP (souvent mail.isp.com).
  2. Ainsi tous les gens du LAN qui envoient des mails le font sur le proxy qui redirige le tout vers le SMTP de votre ISP. Wingate vous permet cependant de personnaliser le mapping SMTP selon l'utilisateur qui émet le mail.

  3. Le plus "difficile", le mail entrant (POP3) :
    Configurez l'emplacement du proxy comme serveur POP3 de votre client e-mail.
    Par contre, votre username change, et devient :

username#votre_serveur_pop3

Ainsi, si avant d'être derrière un firewall vous vous connectiez à votre serveur POP3 en utilisant le username = sdupont et le serveur POP3 = mail.wanadoo.fr, derrière le firewall votre nouveau serveur POP3 devient le proxy et votre nouveau username sdupont#mail.wanadoo.fr.

Dans un logiciel comme Eudora qui groupe le username et le serveur POP3 en un "pop-account", votre nouveau "pop-account" serait donc :

sdupont#mail.wanadoo.fr@wingate

En résumé, pour des clients e-mail derrière un firewall,

POP3 et SMTP = emplacement du proxy
username     = username#votre_serveur_pop3
password     = identique

Configuration d'Outlook Express

Les clients News

Le proxy devient le nouveau serveur de news pour les ordinateurs du LAN (port 119 par défaut).
C'est dans Wingate que vous aurez configuré le mapping NNTP par défaut (par exemple vers news.isp.com).

Le service SOCKS

SOCKS (4 et 5) est une petite révolution dans le système proxy, dans le sens où les applications qui savent utiliser ce service peuvent se croire directement connectées à Internet. SOCKS5 a la possibilité d'ouvrir dynamiquement de nouveaux ports sur le serveur proxy, et je vois dans cette possibilité la solution pour faire tourner prochainement des applications comme Netmeeting derrière un firewall. J'attends impatiemment que les nouvelles routines DirectPlay sachent se servir de SOCKS (j'ai entendu dire que la mise à jour DirectX 6.1 apporterait ce service).

Pour le moment, SOCKS peut être utilisé très efficacement par certains clients FTP (comme AbsoluteFTP, LeapFTP, ...), ce qui leur permet de se connecter à des serveurs tournant sur des ports autres que 21.
SOCKS est aussi le meilleur système pour un logiciel IRC.

Le logiciels IRC (MIRC, PIRCH, VIRC, etc...)

Choisissez un logiciel qui supporte SOCKS, et configurez l'onglet idoine pour se connecter sur le serveur proxy en port 1080.

NB : les vieilles versions de MIRC ne connaissent pas SOCKS et c'est un cauchemar que de pouvoir leur faire traverser le firewall; téléchargez une version récente pour éviter la crise de nerfs.

ICQ

Il aurait été criminel qu'un logiciel aussi fantastique qu'ICQ ne puisse pas traverser un firewall. Heureusement, ce programme s'en sort magnifiquement avec une remarquable utilisation du service SOCKS5.

Configuration d'ICQ

Telnet

Les gens utilisant Telnet utiliseront simplement une connexion initiale dirigée vers le serveur proxy.

Configuration de Telnet

Il obtiendront ainsi un prompt "Wingate>" où ils taperont l'adresse Telnet à laquelle ils veulent se connecter.

Real Audio

Real Audio traverse sans problème le firewall. Configurez l'onglet adéquat vers le serveur proxy en port 1090.

Voilà, il existe encore d'autres applications qui, moyennant quelques petits réglages, peuvent traverser le serveur proxy.
Retenez donc ceci : pour chaque application qui veut traverser le firewall vous devez avoir configuré un service adéquat sur le proxy.

Par exemple, vous pouvez configurer un service qui permet l'utilisation de synchronisateurs d'horloge PC (sur des serveurs-horloges d'Internet), en ajoutant dans Wingate un service TCP sur le port 37 mappant sur l'adresse du serveur-horloge d'Internet.

Configuration d'un service TCP dans Wingate

Quant à l'application elle-même, vous la configurerez pour se connecter sur le serveur proxy en mode TCP.

Configuration de Dimension 4

Up

6. Conclusions

Ouff ! Vous voilà enfin au terme de ce chapitre. Au risque de me répéter, je vous rappelle ces deux choses essentielles :

  1. Le serveur proxy (firewall) a des limitations : vous ne pourrez faire tout ce que vous faites avec une connexion directe. De nombreuses applications sophistiquées travaillent sur plusieurs ports en même temps, dont certains sont ouverts dynamiquement. C'est le cas de Netmeeting qui travaille sur 5 ports dont 3 dynamiques; un tel logiciel ne peut donc pas traverser Wingate. Même remarque pour les jeux se connectant sur des gaming-zones sur Internet; seul le logiciel Kali (http://www.kali.net) leur permettra de jouer à travers le proxy avec leurs amis sur Internet.
    Cette remarque pourrait tendre à disparaître peu à peu lorsque toutes les applications seront capables d'utiliser SOCKS.
  2. Toutes les applications tournant sur le réseau interne doivent être configurées de sorte à traverser le serveur proxy. Cette remarque ne concerne pas les applications installées sur le serveur proxy lui-même qui peuvent accéder directement à Internet. Cette remarque ne s'applique probablement plus si vous utilisez la version 3 de Wingate.

Voilà, je m'arrête ici. Si vous avez des questions plus spécifiques, n'hésitez pas à me les poster.

Up


(C) 02/02/2008 - Dernière modification : 30/10/2013 - F4CVM / Pascal