Le kit de développement Intel que j'utilise comprend une fonction de gestion à distance (voir également la page de manuel Ubuntu ici ) qui permet des redémarrages à distance en cas de blocage du système d'exploitation.
Il a la capacité d'écouter une poignée de ports (16992 et 16993, pour être spécifique) sur une adresse IP qu'elle partage avec le système d'exploitation. (soit en espionnant les requêtes DHCP ou en émettant les siennes; je ne suis pas sûr, mais dans les deux cas, il utilise une adresse MAC partagée dans ce mode)
Je l'exécute sur une adresse IP distincte, car je m'inquiète d'un cas d'utilisation potentiel: comment AMT empêche-t-il la pile du réseau hôte d'entrer en conflit avec elle?
En d'autres termes, le logiciel de gestion Intel écoute maintenant [au moins] deux ports TCP, hors bande et à l'insu du système d'exploitation. Supposons que j'initie une connexion TCP à un hôte distant et que la pile d'hôtes choisisse 16992 ou 16993 comme port local pour écouter [les paquets revenant à la boîte].
Les paquets qui reviennent de l'hôte distant ne seront-ils pas "blackholés" et n'atteindront jamais le système d'exploitation? Ou existe-t-il une mesure préventive, comme un pilote Intel dans le noyau Linux sachant que TCP devrait éviter le port 16992? (semble peu probable car il s'agit d'une fonctionnalité indépendante du système d'exploitation.) Ou peut-être que l'interface de gestion peut renvoyer le trafic envoyé vers le port 16992 qui n'appartient pas à une session de gestion connue vers la pile hôte?
Quoi qu'il en soit, je suis réticent à l'utiliser pour des charges gourmandes en réseau jusqu'à ce que je comprenne comment cela fonctionne. J'ai cherché dans la documentation Intel et je n'ai rien trouvé non plus.
Je suppose que cela pourrait être testé en établissant environ 30 000 connexions TCP et en vérifiant si la connectivité fonctionne même si le port se chevauche. Mais je n'ai pas encore eu l'occasion de le faire.
(Note: je me rends compte que cette question est similaire à Comment un ordinateur basé sur Intel vPro conserve-t-il la connectivité IP?, Mais cette question porte sur la connectivité en général, pas sur la connectivité aux ports TCP spécifiques qui chevauchent la pile d'hôte.)
la source
nc -p 16992 example.com 22
et voir ce qui se passe.Réponses:
Après avoir configuré AMT pour écouter sur une adresse IP partagée, j'ai exécuté le test mentionné par kasperd dans les commentaires ci-dessus. (contre mon propre hôte distant avec un serveur SSH, pas vraiment
example.com
, bien sûr) Voici le résultat:Cas de test positif (en utilisant un port non utilisé par AMT):
Cas de test négatif (en utilisant un port utilisé par AMT):
(Après quelques minutes, le scénario de test négatif a expiré et est revenu à l'invite du shell.)
Donc, comme vous pouvez le voir, les paquets revenant au port 16992 ont été abandonnés avant d'atteindre la pile TCP / IP de l'hôte.
Recommandation: si un réseau fiable est important pour vous, n'activez pas AMT sur la même adresse IP que votre pile TCP / IP hôte!
la source
Il existe un fil controversé sur le forum Intel Mappage entre l'IP hôte et l'IP du périphérique Intel AMT avec la suggestion que
et une explication:
Je confirme que l'utilisation de DHCP avec AMT et Host entraîne des problèmes de routage. Par exemple, ping induit en erreur:
la source
Tous les paquets de l'hôte distant avec des "ports AMT" n'atteignent jamais aucun système d'exploitation. Ils sont interceptés par Intel ME / AMT. Par défaut, ce sont les ports 16992-16995, 5900 (AMT ver.6+), 623, 664.
la source
Ce qu'il faut noter, c'est que AMT est conçu comme une technologie client OOBM et non comme un serveur. Par conséquent, oui, il peut arriver que votre ordinateur décide d'utiliser des ports AMT, mais uniquement si vous l'avez spécifiquement configuré pour le faire. La plupart des systèmes d'exploitation sont livrés avec des ports éphémères préconfigurés compris entre 49152 et 65535, comme le suggèrent les spécifications IANA, certaines distributions Linux avec 32768 à 61000 et d'anciennes fenêtres avec 1025–5000.
Donc, de mon point de vue, il est préférable d'utiliser l'IP partagée pour AMT car ses ports ne sont pas à portée éphémère (sauf si vous savez ce que vous faites et modifiez ce paramètre particulier) et ne doivent pas être utilisés comme port d'écoute par n'importe quelle application.
la source
Une solution pourrait être de définir les ports pour la pile TCP de Windows en utilisant
netsh
.Par défaut, Windows utilise le port 49152 >> 65636 (ou quelle que soit la limite supérieure). Vous pouvez donc utiliser AMT en toute sécurité. Vous pouvez définir la plage de ports avec
netsh
. Par exemple, j'utilise toujours environ 1000 ports pour les machines de périmètre.De plus, Intel supprime les commandes AMT et transmet tout le trafic sur ces ports (16991-16995 en fait!) Au système d'exploitation (si un système d'exploitation est présent). Donc, si vous avez une application qui a ouvert un port dans la plage AMT, le trafic passera toujours par le système d'exploitation vers l'application, car comme je l'ai dit, Intel ne supprime que les commandes de gestion AMT. Il est peu probable que votre application envoie des commandes AMT.
la source