OpenSSH/Pattern Matching in OpenSSH Configuration
A pattern consists of zero or more non-whitespace characters. An asterisk (*) matches zero or more characters in a row, and a question mark (?) matches exactly one character. For example, to specify a set of declarations that apply to any host in the ".co.uk" set of domains in ssh_config(5), the following pattern could be used:
Host *.co.uk
The following pattern would match any host in the 192.168.0.1 - 192.168.0.9 range:
Host 192.168.0.?
A pattern-list is a list of patterns separated by whitespace. The following list of patterns match hosts in both the ".co.uk" or ".ac.uk" domains.
Host *.co.uk *.ac.uk
Individual patterns by themselves or as part of a pattern-lists may be negated by preceding them with an exclamation mark (!). The following will match any host from example.org except for gamma.
Host *.example.org !gamma.example.org
Pattern lists in ssh_config(5) do not use commas. Pattern lists in keys need commas.
For example, to allow a key to be used from anywhere within an organisation except from the dialup pool, the following entry in authorized_keys could be used:
from="!*.dialup.example.com,*.example.com"
See also glob(7)