PfSense e problemi di timeout su connessioni SSH


Ultimamente dopo gii ultimi aggiornamenti di PfSense alla versione 2.1.5 (probabilmente anche nelle precedenti), mi sono imbattuto in un fastidioso problema legato alle connessioni SSH.

Di fatto, una volta collegato in ssh su un server, se lasciavo la sessione in idle per alcuni minuti (così a spanne attorno ai 5 minuti), mi ritrovavo disconnesso con il messaggio di errore “write failed broken pipe”.

cerando un po’ di documentazione online, ho trovato che il problema è legato al timeout delle states di pfsense. Fra le soluzioni che ho trovato, due facevano al caso mio.

1- Modifica del timeout delle states su PfSense

2- Modifica lato client della connessione SSH

La prima soluzione però presenta il problema che aumentando troppo i timeout delle state, si rischia alla lunga di riempire le states table, portando ad un sovraccarico del firewall e di conseguenza ad un collasso delle prestazioni.

La seconda soluzione invece è quella che ho ritenuto più idonea (nonchè più semplice e più immediata).

Procediamo come a seguire

– editiamo il file ~/.ssh/config con il comando

nano ~/.ssh/config

– aggiungiamo le seguenti righe

ServerAliveInterval 60
ServerAliveCountMax 1440

ServerAliveInterval dice al nostro client SSH di inviare un pacchetto di SSH keepalive ogni 60 secondi (che è sicuramente più basso del timeout delle states del firewall).

ServerAliveCountMax indica invece al nostro client quanti di questi pacchetti posso fallire prima che il nostro client decida di chiudere la connessione.

Ora possiamo effettuare tranquillamente i collegamenti ssh senza preoccuparci dei timeout.


Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

Per postare il commento, risolvi il quesito sottostante * Time limit is exhausted. Please reload CAPTCHA.

Questo sito usa Akismet per ridurre lo spam. Scopri come i tuoi dati vengono elaborati.