A página do manual diz o seguinte:
Hospedeiro
Host Restringe as seguintes declarações (até a próxima palavra-chave Host) apenas para aqueles hosts que correspondem a um dos padrões fornecidos após a palavra-chave. Se mais de um padrão for fornecido, eles deverão ser separados por espaços em branco. Um único `* 'como padrão pode ser usado para fornecer padrões globais para todos os hosts. O host é o argumento do nome do host fornecido na linha de comando (ou seja, o nome não é convertido em um nome de host canônico antes da correspondência).
Uma entrada de padrão pode ser negada prefixando-a com um ponto de exclamação (`! '). Se uma entrada negada for correspondida, a entrada Host será ignorada, independentemente de outros padrões na linha corresponderem. Portanto, correspondências negadas são úteis para fornecer exceções para correspondências curinga.
Veja PADRÕES para mais informações sobre padrões.
Nome de anfitrião
HostName Especifica o nome do host real no qual efetuar login. Isso pode ser usado para especificar apelidos ou abreviações para hosts. Se o nome do host contiver a sequência de caracteres `% h ', isso será substituído pelo nome do host especificado na linha de comando (isso é útil para manipular nomes não qualificados). O padrão é o nome fornecido na linha de comando. Endereços IP numéricos também são permitidos (na linha de comando e nas especificações HostName).
Por exemplo, quando eu quero criar uma configuração SSH para o GitHub, o que Host e HostName devem ser respectivamente?
Host
é a string que o usuário fornece como entrada na CLI ao invocar o SSH;HostName
é a string que a vontade cliente SSH saída através da rede ao tentar se conectar ao servidor.