Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 28/12/2017, à 16:58

Gaara

Connection SSH via adresse MAC distante

Salut à tous,

Je poste ici un bout de mon code qui cherche l'adresse IP d'un client local et trouve son IP, si elle n'est pas fixe. On a simplement besoin de l'adresse MAC du périphérique distant, qui elle est fixe.
J'ai cherché pas mal de temps alors ça peut peut-être aider quelqu'un.
Le code:

ip_dist=$(/usr/sbin/arp -a | grep xx:xx:xx:xx:xx:xx | cut -d "(" -f2 | cut -d ")" -f1)
echo $ip_dist

Avec xx:xx:xx:xx:xx:xx l'adresse MAC du périphérique distant

On peut ensuite se connecter en SSH avec:

ssh host@$ip_dist

Voilà, c'est tout!


Kubuntu 18.04 x64
Un terminal tactile Raspberry Pi et Odroid

                                        <code>zenity  --question --title "Alert"  --text "Microsoft Windows has been found! Would you like to remove it?"</code>

Hors ligne

#2 Le 28/12/2017, à 17:27

michel_04

Re : Connection SSH via adresse MAC distante

Bonjour,

Merci Gaara.
Ça fonctionne nickel.
Rangé bien au chaud. smile

A+

Hors ligne

#3 Le 28/12/2017, à 17:47

Gaara

Re : Connection SSH via adresse MAC distante

De rien smile


Kubuntu 18.04 x64
Un terminal tactile Raspberry Pi et Odroid

                                        <code>zenity  --question --title "Alert"  --text "Microsoft Windows has been found! Would you like to remove it?"</code>

Hors ligne

#4 Le 28/12/2017, à 18:15

Watael

Re : Connection SSH via adresse MAC distante

salut,

arp -a | awk -vmac="$mac" '$4 == mac{gsub("[)(]","",$2);print $2}'

ou

arp -n | awk -v mac="$mac" '$3==mac{print $1}'

Connected \o/
Welcome to sHell. · eval is evil.

Hors ligne

#5 Le 28/12/2017, à 18:31

maxire

Re : Connection SSH via adresse MAC distante

Salut,

J'aurais plutôt tendance à utiliser ip neigh qui donne toutes les adresses IPV4 et IPV6 exemple:

$ ip neigh | grep 50:e5:49:56:72:47 | cut -d " " -f 1
192.168.0.9
fe80::52e5:49ff:fe56:7247
fec1:db8:1::1

Pour ne lister que les adresses IPV4;

$ ip -4 neigh | grep 50:e5:49:56:72:47 | cut -d " " -f 1
192.168.0.9

Uniquement les adresses IPV6:

$ ip -6 neigh | grep 50:e5:49:56:72:47 | cut -d " " -f 1
fe80::52e5:49ff:fe56:7247
fec1:db8:1::1

Normalement la recherche de l'adresse IP est inutile si l'ordinateur est enregistré correctement dans ta base DNS locale, il est quand même plus simple de n'utiliser que le nom d'hôte, c'est d'ailleurs ce que je fais, je ne me réfère jamais à une adresse IP.


Maxire
Archlinux/Mate + Ubuntu 22.04 + Archlinux/Gnome sur poste de travail

Hors ligne

#6 Le 28/12/2017, à 18:39

Gaara

Re : Connection SSH via adresse MAC distante

Le débat est ouvert ! ^^


Kubuntu 18.04 x64
Un terminal tactile Raspberry Pi et Odroid

                                        <code>zenity  --question --title "Alert"  --text "Microsoft Windows has been found! Would you like to remove it?"</code>

Hors ligne

#7 Le 28/12/2017, à 19:06

lynn

Re : Connection SSH via adresse MAC distante

Je m'étais essayé également avec awk

awk -F'[!()]' '/$mac/{ print $2 }' <<< $(arp -a)

«C'est pas parce qu'ils sont nombreux à avoir tort qu'ils ont raison!»

Coluche

Hors ligne

#8 Le 28/12/2017, à 19:12

Watael

Re : Connection SSH via adresse MAC distante

cmd < <(cmd)

!!!


Connected \o/
Welcome to sHell. · eval is evil.

Hors ligne

#9 Le 28/12/2017, à 19:13

piolet

Re : Connection SSH via adresse MAC distante

bonsoir

arp -a ne donne pas tous les éléments du réseau. Chez moi uniquement la livebox

arp -a
livebox.home (192.168.1.1) à xx:xx:xx:xx:xx:xx

il faut au préalable faire un scan du réseau
nmap -sP 192.168.1.0/24
ensuite après que toutes les réponses arp soient arrivées
arp -a


lenovo T430 RAM 8Go Xubuntu 22.04 LTS

Hors ligne

#10 Le 28/12/2017, à 19:15

lynn

Re : Connection SSH via adresse MAC distante

Watael a écrit :
cmd < <(cmd)

!!!

Comme quoi, j'ai encore beaucoup à apprendre... tongue

Merci Watael.


«C'est pas parce qu'ils sont nombreux à avoir tort qu'ils ont raison!»

Coluche

Hors ligne

#11 Le 29/12/2017, à 08:44

Brunod

Re : Connection SSH via adresse MAC distante

Merci !
Utile quand on n'a pas le FQDN smile


Windows est un système d'exploitation de l'homme par l'ordinateur. Linux, c'est le contraire...
39 pc linux convertis

Hors ligne

#12 Le 29/12/2017, à 10:30

maxire

Re : Connection SSH via adresse MAC distante

Comme l'a remarqué piolet, ceci ne fonctionne que si les tables internes du noyau linux sont à jour (valable aussi bien pour arp que pour ip neigh).
Comment les mettre à jour?
Voilà une bonne question.


Maxire
Archlinux/Mate + Ubuntu 22.04 + Archlinux/Gnome sur poste de travail

Hors ligne

#13 Le 29/12/2017, à 14:21

piolet

Re : Connection SSH via adresse MAC distante

réponse donnée plus haut

nmap -sP 192.168.1.0/24 par exemple

Dernière modification par piolet (Le 29/12/2017, à 14:22)


lenovo T430 RAM 8Go Xubuntu 22.04 LTS

Hors ligne

#14 Le 29/12/2017, à 15:46

Watael

Re : Connection SSH via adresse MAC distante

sur ma machine, malgré le scan, ip neigh n'affiche pas tous les hôtes présents sur le réseau. sad

et puis, nmap affiche les MACs, donc :

nmap -n -sn 192.168.1.0/24 | sed -n '/Nmap scan report for /{s/Nmap scan report for \(.*\)/\1/;h;};/MAC Address/{s/[^:]*: \([^ ]*\) .*/\1/;x;G;s/\n/ /;/'"$mac"'/p}'

Connected \o/
Welcome to sHell. · eval is evil.

Hors ligne

#15 Le 29/12/2017, à 16:01

piolet

Re : Connection SSH via adresse MAC distante

Watael a écrit :

sur ma machine, malgré le scan, ip neigh n'affiche pas tous les hôtes présents sur le réseau. sad

certains firewall peuvent bloquer les trames arp ou empecher la machine de répondre

Dernière modification par piolet (Le 29/12/2017, à 16:04)


lenovo T430 RAM 8Go Xubuntu 22.04 LTS

Hors ligne

#16 Le 29/12/2017, à 20:27

maxire

Re : Connection SSH via adresse MAC distante

Justement nmap ne me satisfait pas et en effet toutes les machines du réseau ne sont pas détectées pour peu que certaines d"entre elles n'acceptent pas les paquets ICMP.
De plus après l'application de nmap -sP les tables du noyau sont polluées comme ici:

$ ip neigh
192.168.0.137 dev trunk0  FAILED
192.168.0.76 dev trunk0  FAILED
192.168.0.133 dev trunk0  FAILED
192.168.0.120 dev trunk0  FAILED
192.168.0.59 dev trunk0  FAILED
192.168.0.116 dev trunk0  FAILED
192.168.0.75 dev trunk0  FAILED
192.168.0.132 dev trunk0  FAILED
192.168.0.71 dev trunk0  FAILED
192.168.0.253 dev trunk0  FAILED
.
.
.

et

$ arp -a
? (192.168.0.137) at <incomplete> on trunk0
? (192.168.0.76) at <incomplete> on trunk0
? (192.168.0.133) at <incomplete> on trunk0

Ces adresses ne correspondent à aucune machine du réseau.


Maxire
Archlinux/Mate + Ubuntu 22.04 + Archlinux/Gnome sur poste de travail

Hors ligne

#17 Le 29/12/2017, à 21:03

Watael

Re : Connection SSH via adresse MAC distante

nmap ne me satisfait pas

pourquoi ?


Connected \o/
Welcome to sHell. · eval is evil.

Hors ligne

#18 Le 29/12/2017, à 22:09

piolet

Re : Connection SSH via adresse MAC distante

maxire a écrit :

Justement nmap ne me satisfait pas et en effet toutes les machines du réseau ne sont pas détectées pour peu que certaines d"entre elles n'acceptent pas les paquets ICMP.

que la machine accepte ou non ICMP sa MAC address est retrouvée. C'est si elle ne répond pas aux requêtes ARP qu'elle n'est pas détectée.

chez moi nmap -sP 192.168.1.0/24 ne pollue les tables arp que pendant 5 secondes environ.


lenovo T430 RAM 8Go Xubuntu 22.04 LTS

Hors ligne

#19 Le 31/12/2017, à 16:43

maxire

Re : Connection SSH via adresse MAC distante

J'ai fait allusion à ICMP parce que j'ai déduit un peu vite que comme nmap -sP est scan Ping le fonctionnement est le même que celui de la commande Ping, ce qui n"est pas le cas.

Pour revenir à ma non utilisation de nmap, voici déjà quelque temps j'avais écrit un script de découverte de mon réseau local utilisant nmap avec pour objectif de présenter la liste des machines du réseau proposant des services vnc, xdmcp et rdp.
Ceci afin de permettre une connexion facilitée à ces machines via un écran de sélection de connexion.

Tout fonctionnait jusqu'au changement physique de mon réseau par l'ajout d'un point d'accès WIFI D-LINK DAP-1360 liant la partie filaire du réseau et la partie hertzienne.

Depuis, nmap ne fonctionne plus, les machines connectées via le wifi ne voient pas les machines du réseau filaire via nmap.
J'utilise maintenant le service de découverte avahi, chaque machine du réseau offrant des services les publie via avahi, et tout fonctionne sans que le boîtier DLINK DAP-1360 ne filtre quoi que ce soit.

Juste pour dire que nmap n'est pas nécessairement fiable, tout dépend du contexte.


Maxire
Archlinux/Mate + Ubuntu 22.04 + Archlinux/Gnome sur poste de travail

Hors ligne