2010-08-16 22 views
2

Je veux empêcher quelqu'un avec une certaine adresse MAC d'accéder à un certain port sur mon serveur, je l'utilise comme une sorte d'interdiction matérielle pour un serveur privé un de mes amis fonctionne.Interdire l'accès à certains ports par l'adresse MAC - C++

Je cherche à le faire en C++, et je voudrais savoir ce que j'aurais besoin de rechercher pour le faire. Le serveur fonctionne sous Windows.

De même, comment trouver l'adresse MAC de la personne accédant? Je vous remercie.

+0

Utilisez l'interface utilisateur fournie par le système d'exploitation. accédez à la fenêtre appropriée et insérez l'adresse MAC, cliquez sur Enregistrer. Si vous voulez configurer automa- tiquement le pare-feu, vous devez nous indiquer le logiciel de pare-feu utilisé sur le serveur. –

Répondre

11

Le filtrage sur les adresses MAC n'est utile que si le serveur et le client se trouvent sur le même réseau local. Le serveur verra l'adresse MAC du routeur amont le plus proche, pas l'adresse MAC du client.

+1

Ceci est vrai. TCP n'envoie pas par l'adresse MAC d'origine, car ils sont utilisés uniquement pour les LAN locaux. La minute où le paquet TCP de votre ami a besoin de quitter son LAN local, il sera reconditionné dans un paquet Ethernet différent avec les informations du routeur, pas les informations de votre ami. Si l'ami a vraiment un _server_ privé, l'adresse IP (ou le nom DNS) doit être cohérente et vous pouvez filtrer dessus. – paxdiablo

+0

@paxdiablo Je pense que le serveur est celui qui essaie d'interdire, ne pas être banni. –

6

Les sockets au niveau de l'application ne permettent pas le filtrage MAC. La seule façon d'obtenir le MAC est d'avoir un accès direct aux en-têtes TCP/IP eux-mêmes, auxquels les sockets ne donnent pas accès. À moins que vous n'utilisiez un pilote d'interception de bas niveau, comme WinPCap, vous feriez mieux de placer le serveur derrière un vrai pare-feu/routeur matériel et de le laisser faire le filtrage MAC pour vous.

3

Bien que je ne puisse pas répondre à votre question, les adresses MAC ont maintenant tendance à être définies dans le logiciel, donc peuvent être changées assez facilement.

+0

+1. Le filtrage d'adresse MAC n'offre aucune sécurité car ils sont trop facilement usurpés. – Anthony