Eu não acho que nenhuma das outras respostas cobre toda a história:
O que você quer fazer é possível para um servidor, por causa do SNI. No entanto, o nginx, apesar de suportar o SNI, não suporta fazer o que você deseja fazer. O nginx reagirá a um nome SNI incomparável tratando a solicitação como se fosse seu site SSL padrão (e se você não marcou nenhum site SSL como seu padrão, o primeiro site SSL em sua configuração). Isso geralmente resultará no usuário vendo um aviso de aviso de certificado, porque o nome no certificado enviado pelo nginx não corresponde ao nome que o cliente solicitou.
O RFC para SNI especifica que o servidor PODE considerar um nome SNI não reconhecido como fatal:
If the server understood the client hello extension but does not
recognize the server name, it SHOULD send an "unrecognized_name"
alert (which MAY be fatal).
Até onde eu posso dizer, no entanto, tanto o Apache quanto o nginx continuam com a conexão e a tratam da mesma maneira que tratariam um cabeçalho "Host:" não correspondido ou ausente, que é selecionar o host virtual marcado como padrão para esse endereço: port.
A menos que você tenha adquirido um certificado SSL correspondente a todos os nomes de domínio possíveis que o cliente possa usar ao contatar seu servidor, não será possível impedir que o usuário veja um aviso sobre um certificado inválido antes de continuar. Mesmo que você faça um redirecionamento assim que eles chegam ao site, isso só será processado depois que o certificado inválido for aceito.
Atualização de 2017: como é fácil obter certificados SSL gratuitos para todos os seus domínios agora, você pode obter certificados SSL para todos os seus domínios, mesmo que não pretenda veicular conteúdo real com HTTPS, apenas para garantir que quaisquer redirecionamentos ou mensagens de erro funcionarão sem nenhum aviso sobre certificados incompatíveis.