|
|||||||||||||||||||||||||||||||||||||||||||
|
Après avoir configuré votre connexion sur Internet (ou même en Intranet), vous avez accès aux ressources du réseau. Mais vous avez aussi mis votre ordinateur à la portée des autres ! Cet article a pour but de vous assurer que votre connexion ne fournit pas des services involontaires ou des failles à l'extérieur. Il concerne les machines utilisées comme ordinateurs personnels, devant lesquels un humain est souvent présent et actif pendant la durée des connexions au réseau. Il n'a pas pour but de décrire la mise en place de services fiables sur un serveur sécurisé, ni la configuration d'un routeur. Ces fonctionnalités nécessitent une compréhension approfondie des protocoles et des logiciels qui sortent du cadre de cet article, qui a plutôt pour but de limiter les services offerts. Après avoir défini quelques termes nécessaires à la compréhension de l'article, nous verrons les différents points qui peuvent contribuer à la sécurité de votre Amiga. Contexte Quelques rappels d'abord (avec des abus de langage) : TCP/IP : Terme général englobant IP, TCP, ICMP... Paquet : Entité contenant des données et les en-têtes (de où ? vers où ?...) IP : C'est le protocole de base d'Internet. Il sert de support aux autres protocoles (ICMP, TCP, UDP...). Il définit par exemple les adresses IP. Adresse IP : Adresse d'un élément d'un réseau IP. Si votre machine est connectée à Internet par modem sans réseau local, elle n'a qu'une adresse IP (celle attribuée par votre fournisseur). Si vous avez en plus un réseau local, votre Amiga a deux adresses IP : une locale et une sur Internet, soit une par "interface". On présente souvent les adresses IP sous la forme a.b.c.d où a,b,c,d sont des nombres compris entre 0 et 255 (des octets) (en réalité, l'ordinateur a aussi une adresse de loopback, 127.0.0.1, qui correspond toujours à lui-même). Port : Utilisé pour TCP et UDP. Chaque machine possède un certain nombre de ports UDP et TCP (0-65535) pour chaque adresse. Si une adresse IP était l'adresse d'un immeuble, le port serait un numéro d'appartement. Connexion (sens TCP) : Un "pont" est réalisé entre deux couples (adresse IP, port) avant toute chose, sur lequel peuvent ensuite circuler les informations de manière fiable tant que la connexion n'est pas rompue. ICMP : C'est un protocole faisant parti de TCP/IP, qui sert surtout à l'administration des réseaux et à la gestion des erreurs (hôtes non joignables, ping...). Il est sans connexion. Si une adresse IP était l'adresse d'un immeuble, ICMP fournirait des messages qu'on peut comparer à ceux de La Poste : "N'habite pas à l'adresse indiquée" (port inaccessible, port unreachable) "L'adresse de l'immeuble est erronée" (hôte inaccessible, host unreachable) UDP : C'est un protocole simple permettant l'envoi de paquets en "Envoi et oubli", sans connexion ni sécurité d'arrivée du paquet, ni de non-duplication du paquet... Utilisé par ICQ, les flux audio et vidéo... TCP : C'est un protocole très utilisé, par exemple par les services IRC, HTTP, FTP... Protocole avec connexion, fiable. Services Les services au démarrage Sur Amiga, ils sont très rarement installés. Ce sont des services qui se lancent pendant le démarrage de l'ordinateur. Cela peut être par exemple un serveur HTTP (Apache), un serveur FTP, un serveur NFS, etc. Si c'est le cas, c'est que vous l'avez installé en toute connaissance de cause à la main, et donc la sécurisation du service est à votre charge. :) Les services inetd Inetd est un programme qui écoute un certain nombre de port de votre ordinateur, et lorsqu'une connexion arrive, inetd lance le serveur approprié. L'avantage est que les serveurs ne sont lancés que quand c'est nécessaire. La configuration de inetd se trouve dans "Database/InetD". Le seul service à laisser est le service d'authentification (auth), ce qui vous évitera des temps d'attente voire des refus lorsque vous voulez vous connecter à un serveur IRC ou FTP qui fait appel à ce service. Il permet à un ordinateur auquel vous êtes connecté (TCP donc) d'identifier votre nom d'utilisateur. Cela n'a d'intérêt que pour les ordinateurs multi-utilisateurs en fait, mais c'est encore très utilisé. Passez donc ici chaque service en "Disable", sauf auth. Mots de passe Même si votre ordinateur n'offre pas de service, faites en sorte que chaque utilisateur dans "Database/users" ait un mot de passe activé. Cela évitera les problèmes le jour où vous oublierez d'éteindre un service Telnet avec une connexion permanente... Surveillance La meilleure chose à faire pour être un peu rassuré est de savoir ce qui se passe sur votre ordinateur en temps réel ! Pour cela, Miami Deluxe offre le filtre réseau, dans "Database/IP Filter". Ce filtre peut vous aider à bloquer certaines choses et à les enregistrer. Il permet de filtrer/enregistrer l'activité sur les ports TCP, et de filtrer (mais pas enregistrer) l'activité l'UDP. Étant donné que nous avons supprimé tous les services, interdire les ports ne sert théoriquement pas à grand-chose, mais la sécurité passe par la redondance et la paranoïa. Configurons tout d'abord l'enregistrement des messages. Ils seront stockés dans un fichier et envoyés en plus dans une fenêtre de votre Workbench en temps réel, ce qui vous permettra de savoir qui tente de se connecter sur votre ordinateur. Choisissez le chemin du fichier selon votre besoin. protocol : * service : * host : *.*.*.* mask : access : n log : yAinsi, toutes les tentatives de connexions seront enregistrées et refusées. Il y a plusieurs améliorations à apporter à ce filtrage : Connexions locales : les connexions de et vers votre propre ordinateur ont peu de chance d'être dangereuses, et cela peut être utile de les autoriser. Un ordinateur a toujours une interface virtuelle locale qui correspond à lui-même, et qui a pour adresse 127.0.0.1. Service d'authentification : si vous avez laissé le serveur d'authentification, il faut aussi autoriser les connexions ici, sinon elles seront refusées par le filtre avant d'atteindre le serveur. Réseau local : éventuellement, vous pouvez autoriser les connexions provenant de votre réseau local. Le réseau local décrit ici est 192.168.0.1 netmask 255.255.255.0. Si vous n'avez pas de réseau privé, ou que votre ordinateur ne propose pas de service, sautez cette étape. Connexions TCP entrantes sur les ports 1024-65535 : ces ports peuvent être utilisés par exemple si vous envoyez un fichier à quelqu'un en DCC par IRC, ou bien si vous utilisez FTP. Ici, on autorise ces ports à accepter des connexions, mais on enregistre tout de même l'activité. En UDP, il ne faut pas oublier d'autoriser les réponses à vos propres requêtes DNS. Le DNS est utilisé pour traduire les noms comme www.yahoo.fr en l'adresse IP du serveur Web de Yahoo. Ceci se fait en UDP, sans connexion donc. Votre Amiga envoie une requête : "Qui est www.yahoo.fr" dans un paquet UDP et attend une réponse du serveur DNS de votre fournisseur. Cette réponse arrive dans un autre paquet UDP, qu'il faut autoriser à passer les filtres. Ici, on accepte les paquets UDP entrants d'une seule machine, le serveur DNS du fournisseur (212.185.252.1). Miami ne permet malheureusement pas un filtrage plus poussé comme sur le port source du paquet UDP. Enfin, tous les paquets ne correspondant pas aux règles ci-dessus tomberont dans la dernière règle, qui est de refuser et d'enregistrer. La configuration pourrait ressembler à cela : Divers Protection ping flood (page TCP/IP) Ce n'est pas vraiment une protection en fait. Lorsqu'une autre machine envoie des pings trop grands ou des pings trop rapides, Miami vous avertira et arrêtera de répondre à la machine. En pratique cela n'arrive jamais, et la protection est loin d'être la solution parfaite, mais cela ne coûte pas grand-chose de l'activer. Allow source routing A désactiver, car cela peut poser des problèmes de sécurité. Le routage de source permet à l'expéditeur d'un paquet de fixer la route que celui-ci suivra sur le réseau, alors que cette route est normalement dynamiquement décidée par chacun des routeurs traversés. L'Amiga donne une certaine impression de sécurité, car très peu de failles sont connues. Cela ne veut pas dire que le système n'a pas de failles (rien n'est infaillible), mais plutôt qu'aucune faille n'a été découverte et publiée, sans doute car peu de monde l'utilise, surtout dans le monde des serveurs et de la sécurité informatique. Cette impression ne doit pas faire oublier qu'il en faut peu pour créer soi-même une brèche dans le système : par exemple ne pas utiliser de mot de passe pour un utilisateur, oublier ce fait, et installer un serveur FTP quelques mois après. Un intrus pourrait alors accéder à tous les fichiers de votre Amiga en lecture/écriture, puisqu'AmigaOS n'a pas de notion de droits dans sa version normale. Le fait de surveiller en permanence ce qui se passe, acceptable pour une utilisation domestique, permet de se rassurer, il est toujours possible au besoin de rendre Miami moins bavard en modifiant les règles ci-dessus. Pour aller plus loin Le filtre IP de Miami est très pratique et très facile à configurer, c'est là tout son intérêt pour une machine personnelle. Il faut noter qu'il existe un outil plus puissant pour disposer d'un vrai pare-feu avec Miami, MiamiIPFW. Voir la documentation de Miami pour plus d'information.
|