Pour tester la connexion TLS, il faut que l’adresse symbolique, utilisée pour obtenir l’adresse IP, corresponde à celle contenue dans le certificat (champs CN, common name
).
Si on veut faire fonctionner une connexion TLS vers localhost
/127.0.0.1
, alors le certificat devrait avoir comme CN localhost
.
Pour tester la connexion TLS avec un certificat émis pour serveur.iot.com
il faut faire:
serveur.iot.com
;127.0.0.1
.Pour intercepter l’établissement de la connexion, il est nécessaire de détourner le trafic DNS pour la requête pour serveur.iot.com
et de fournir la réponse 127.0.0.1
.
#!/bin/bash
function ctrl_c() {
# sudo iptables -t nat -D OUTPUT -d 127.0.0.53 -p udp --dport 53 -m string --hex-string "|03|www|06|unilim|02|fr" --algo bm -j DNAT --to-destination 10.53.53.53
sudo iptables -t nat -D OUTPUT -p udp --dport 53 -m string --hex-string "|07|serveur|03|iot|03|com" --algo bm -j DNAT --to-destination 10.53.53.53
sudo ip l del fordns
}
sudo ip l add fordns type dummy
sudo ip l set fordns up
sudo ip a add 10.53.53.53/24 dev fordns
sudo dnsmasq -d -z -i fordns -A /serveur.iot.com/127.0.0.1 &
# sudo iptables -t nat -A OUTPUT -d 127.0.0.53 -p udp --dport 53 -m string --hex-string "|03|www|06|unilim|02|fr" --algo bm -j DNAT --to-destination 10.53.53.53
sudo iptables -t nat -A OUTPUT -p udp --dport 53 -m string --hex-string "|07|serveur|03|iot|03|com" --algo bm -j DNAT --to-destination 10.53.53.53
trap ctrl_c INT