マニュアルページには次のように記載されています。
ホスト
ホスト次の宣言(次のHostキーワードまで)を、キーワードの後に指定されたパターンのいずれかに一致するホストのみに制限します。複数のパターンを指定する場合は、空白で区切る必要があります。パターンとして単一の「*」を使用して、すべてのホストにグローバルなデフォルトを提供できます。ホストは、コマンドラインで指定されたホスト名引数です(つまり、名前は一致する前に正規化されたホスト名に変換されません)。
パターンエントリは、感嘆符( `! ')を前に付けることで無効にできます。否定されたエントリが一致する場合、行の他のパターンが一致するかどうかに関係なく、ホストエントリは無視されます。そのため、ワイルドカード一致の例外を提供するには、一致の否定が役立ちます。>
パターンの詳細については、パターンを参照してください。
HostName
HostNameログインする実際のホスト名を指定します。これは、ホストのニックネームまたは略語を指定するために使用できます。ホスト名に文字シーケンス `%h 'が含まれている場合、これはコマンドラインで指定されたホスト名に置き換えられます(非修飾名を操作する場合に便利です)。デフォルトはコマンドラインで指定された名前です。数値IPアドレスも許可されます(コマンドラインとHostName仕様の両方で)。
たとえば、GitHub用のSSH Configを作成する場合、HostとHostNameはそれぞれ何にする必要がありますか?
Host
ユーザーがCLIで入力として与える文字列です。サーバーに接続しようとするときにHostName
SSHクライアントがネットワーク経由で出力する文字列です。