TL; DR: memória. Resto está bem (para centenas de túneis).
Assuming we don't run out of ports or file descriptors,
what is most likely to trip us up?
Acho que é seguro o suficiente para responder: memória .
Uma experiência rápida mostra 4,6 megabytes de memória real consumida por conexão de entrada. Parte dela pode ser compartilhada, uma experiência real diria. Correção: adicione espaço de troca.
Além disso, 86 megabytes de espaço de endereçamento são bastante grandes. É muito provavelmente compartilhado, ou um servidor de 32 bits teria que lidar com o esgotamento de espaço antes de 50 conexões. Correção: use um sistema operacional de 64 bits.
Assuming we don't run out of ports or file descriptors,
Esta suposição é verdadeira?
-
No intervalo de centenas, portas não será um problema, a menos que seu servidor também seja um servidor de alto tráfego para outra coisa.
-
Os descritores de arquivo podem ficar esgotados. Um experimento rápido mostra 21 descritores de arquivo consumidos por conexão ssh de entrada, sem contar um shell. O limite de descritores de arquivos pode ser ajustado em todo o sistema, portanto, ele não deve ser um bloqueador real.
(Experiências feitas em um servidor Debian de 64 bits.)