Table of Contents
L'Ubiquiti Edgerouter lite (ERL pour les intimes) est un routeur semi-pro orienté SoHo, qui a la particularité d'intégrer un ASIC pour décharger sa CPU du traitement (offloader) de l'IPSec, routage IP, et du NAT (entre autres). Ceci a pour effet qu'à la différence d'autres routeurs du même segment (et prix), il permet de profiter d'une liaison internet à plein débit jusqu'à 1Gbps.
Performances
Après activation de l'accélération matérielle (offloading) :
configure set system offload ipv4 forwarding enable set system offload ipv4 gre enable set system offload ipv4 pppoe enable set system offload ipv4 vlan enable set system offload ipv6 forwarding enable set system offload ipv6 pppoe enable set system offload ipv6 vlan enable set system offload ipsec enable commit ; save
… j’atteins 935/195 Mbps en download/upload sur une fibre FTTH Free (NB : l'upload est évidemment bridé par mon opérateur).
CLI en vrac
Fonctionnement de base
# "Operational Mode" quand on s'y connecte en SSH/console $ # passage en "Configuration mode" configure # modification de la conf (ici on ajoute l'option DHCP qui spécifie le serveur NTP aux clients set service dhcp-server global-parameters 'option ntp-servers 192.168.1.254;' # vérification du delta conf (diff) compare [edit service dhcp-server] +global-parameters "option ntp-servers 192.168.1.254;" # application de la nouvelle configuration (ou suppression des modifications) commit / discard # sauvegarde des changements save # retour en mode opérationnel exit $
# afficher la conf sous la forme de lignes de commandes sudo show configuration commands # voir la table de translation d'adresses sudo show nat translations # liste des connections ouvertes (-C affiche juste leur nombre) sudo conntrack -L # accéder au shell système de la Debian sous-jacente (en temps qu'admin) : sudo -i # faire une capture réseau show interfaces ethernet eth0 capture # faire une capture avec des filtres (tcpdump) sudo tcpdump -i eth0 -n udp and dst 10.10.10.10 and \(dst port 500 or port 4500\) -w /home/ubnt/capture.pcap # lister la table ARP show arp
Problèmes
SSH ne répond pas
J'ai le SSH de mon ERL activé sur un port custom 2222 ; je peux vérifier qu'il l'est bien dans la (webUI : System> SSH Server), cependant je n'arrive pas à m'y connecter. En sniffant le trafic sur le client, Wireshark m'indique un 3-way-handshake suivi immédiatement par un TCP-FIN envoyé par le serveur… En désactivant/réactivant le SSH via la webUI, j'obtiens une piste dans les logs de l'ERL (webUI: Toolbox> Log Monitor) :
sshd[31070]: error: Bind to port 10001 on 0.0.0.0 failed: Address already in use. sshd[31070]: fatal: Cannot bind any address.
En utilisant la CLI dans la webUI (sous Chrome, car sous mon Firefox il ne fonctionne pas) je peux confirmer que le service SSHd a bien un soucis et ne se lance pas :
sudo service ssh status [FAIL] sshd is not running ... failed!
Toujours dans la CLI, en lançant un shell et en regardant ce qui tourne sur mon port 2222 je trouve un processus qui le squatte :
sh sudo netstat -nlpt Active Internet connections (only servers) Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name #[..] tcp 0 0 0.0.0.0:2222 0.0.0.0:* LISTEN 1234/processus
Donc là, 2 solutions : soit le processus squatteur est inutile et on peut le désactiver pour récupérer le port ; soit il est utile et il va falloir choisir un nouveau port pour notre serveur SSHd.