Limitazioni di connessione SSH

Ho una networking di 100 macchine, tutte con ubuntu Linux.

C'è un limite al numero di macchine che possono essere collegate ad una sola macchina (allo stesso tempo)?

Ad esempio, posso avere 99 delle mie macchine per mantenere una connessione continua ssh alla macchina 100? Posso avere tutte le mie macchine (ognuna delle 100) mantenere una connessione continua ssh a tutte le altre 99 macchine?

Quanta memory richiede each tale connessione?

Il numero di connessioni totali è limitato principalmente dal numero di porte in cui possono accadere e dalla capacità del sistema. Esistono opzioni di configuration (Max_Sessions e Max_Startup) ma si applicano solo al numero di connessioni da un singolo IP e al numero di connessioni di avvio simultaneamente richieste. Fondamentalmente sono la protezione DDOS.

Non esiste un modo semplice per indicare la quantità di memory che una connessione utilizzerà: è interamente dipendente dalla quantità di traffico. Una connessione estremamente pesantemente utilizzata può utilizzare più risorse di 10.000 connessioni che non stanno facendo nulla.

Tutto ciò che è stato detto, è quasi sempre un'idea migliore per avere le connessioni stabilite quando sono necessarie, e chiuso quando non lo sono.

Penso che tu possa. Ho regolarmente 3 o così sulla mia casella di casa, e nel mio ufficio possiamo avere fino a 10. Dipende solo in realtà da ciò che il tuo computer può gestire.

Ci sono impostazioni in sshd_config che potrebbe essere necessario modificare. Ecco un collegamento alla pagina uomo . Si trova in /etc/ssh/sshd_config . Il valore predefinito è 10. Sarà necessario aumentare questo valore.

Ho trovato questa risorsa che ha parlato di come aumentare il massimo. Ecco una piccola spiegazione:

  • /proc/sys/net/core/somaxconn – connessioni TCP massime (SSH si connette su TCP)
  • /proc/sys/net/core/netdev_max_backlog – non tanto grande di un accordo, questa è la coda dei pacchetti max

È ansible modificare questi numbers solo se è necessario aumentarlo. Il mio default somaxconn è 128, quindi devi essere buono.

EDIT:

Altre opzioni

Utilizza i WebSocket con NodeJS.

  • Per il cliente
  • Per il server

Questo dovrebbe farti cominciare. Se non si desidera imparare a utilizzare i websockets, submit le richieste HTTP Post a un server web. Non hanno troppa sovraccarico e tu puoi submit un sacco di dati in questo modo. Personalmente optare per i websockets perché sono in tempo reale e non sono troppo difficili da configurare.