Soluzione 1:
 Il ~/.ssh/config file non ha una direttiva per includere altri file, possibilmente correlata al controllo di SSH per i permessi dei file.
Suggerimenti su questo possono includere uno script per catturare diverse modifiche insieme sul sistema o tramite hook di check-in su un repository. Si potrebbero anche esaminare strumenti come Puppet o Augeas.
In qualunque modo ti avvicini, però, dovrai concatenare i singoli file in modo che siano un singolo file dall'esterno del file.
$ cat ~/.ssh/config_* >> ~/.ssh/config
 
 nota: sovrascrivi:> vs. aggiungere:>>  
Aggiornamento dicembre 2017:
Dalla versione 7.3p1 in poi, c'è l'opzione Includi. Che ti permette di includere i file di configurazione.
Include
    Include the specified configuration file(s).  Mul‐
    tiple pathnames may be specified and each pathname
    may contain glob(3) wildcards and, for user config‐
    urations, shell-like “~” references to user home
    directories.  Files without absolute paths are
    assumed to be in ~/.ssh if included in a user con‐
    figuration file or /etc/ssh if included from the
    system configuration file.  Include directive may
    appear inside a Match or Host block to perform con‐
    ditional inclusion.
 Soluzione 2:
Puoi specificare il file di configurazione corrente da usare in ssh come questa opzione:
ssh -F /path/to/configfile
 Sembra che sia l'unico modo.
Inoltre non c'è modo di includere una configurazione in un'altra.
Soluzione 3:
 A partire da ssh 7.3 (rilasciato il 1° agosto 2016), un Include direttiva è disponibile.
Includi :include i file di configurazione specificati. È possibile specificare più percorsi e ciascun percorso può contenere globwildcard e riferimenti "~" simili a shell alle directory home degli utenti. Si presume che i file senza percorsi assoluti si trovino in
~/.ssh. AnIncludela direttiva può apparire all'interno di unMatchoHostblocca per eseguire l'inclusione condizionale.
(Ecco il link al bug report risolto, che include anche la patch:https://bugzilla.mindrot.org/show_bug.cgi?id=1585#c24)
Soluzione 4:
Uso personalmente questi comandi per compilare la configurazione ssh:
alias compile-ssh-config='echo -n > ~/.ssh/config && cat ~/.ssh/*.config > ~/.ssh/config'
alias ssh='compile-ssh-config && ssh'
# (This will get used by other programs depending on the ~/.ssh/config)
# (If you need you can run the compile-ssh-config command via cron etc.)
 oppure:
alias compile-ssh-config='echo -n > ~/.ssh/config-compilation && cat ~/.ssh/*.config > ~/.ssh/config-compilation'
alias ssh='compile-ssh-config && ssh -F ~/.ssh/config-compilation'
# (This is saver and won't over write an existing ~/.ssh/config file)
 perché:
alias ssh='ssh -F <(cat .ssh/*.config)'
 non funziona per me, restituendo:
ssh: Can't open user config file /dev/fd/63: Bad file descriptor
 Spero che questo possa esserti di aiuto.
Soluzione 5:
 Userei anche cat config_* > config per generare l'intera configurazione. Ma non userei pupazzo/cfengine ecc. per questo, se non sono ancora presenti (a proposito:perché non usare un sistema di gestione della configurazione???).
Genererei un pacchetto (deb, rpm) e lo inserirei in un repository locale. E nello script postinst il gatto genera il tuo config. Forse includi anche una cartella locale... Il vantaggio è che gli aggiornamenti ssh/config si attivano su base giornaliera mentre cron-apt &Co viene eseguito.