O Nginx usa um "servidor padrão" escolhido para veicular páginas quando não há outra correspondência mais próxima. Se você não especificou o servidor padrão para usar, acredito que ele usa o primeiro que encontrar (que no seu caso é um dos seus sites HTTPS). Portanto, você deve ser capaz de criar um vhost de servidor padrão com seu endereço IPv4 para TLS (você está usando apenas TLS e não SSL, certo?) E fazer com que ele ouça o IP que capturará as solicitações HTTPS aleatórias. Talvez você também precise adicionar o item server_name aos seus 48 sites não seguros, mas pode funcionar sem isso.
#Your catch-all HTTPS server:
server {
listen 104.218.234.204:443 default_server;
server_name ruel.in ruel.pro;
root /var/www/ruel.pro;
index index.html;
ssl on;
ssl_certificate /etc/ssl/certs/ssl-cert-snakeoil.pem;
ssl_certificate_key /etc/ssl/private/ssl-cert-snakeoil.key;
ssl_dhparam /etc/ssl/private/dhparams_4096.pem;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
}
#Regular HTTP server
server {
listen ruel.in:80;
server_name ruel.in;
root /var/www/ruel.in;
index index.php index.html index.htm;
...
}
#Regular HTTP server
server {
listen ruel.pro:80;
server_name ruel.pro;
root /var/www/ruel.pro;
index index.php index.html index.htm;
...
}
#Your HTTPS server
server {
listen dallas.ruhnet.net:443 ssl;
server_name dallas.ruhnet.net;
...
}
Outra alternativa é ir em frente e configurá-los com HTTPS! Com o projeto Let's Encrypt ( link ) você pode obter certificados confiáveis para todos os outros sites gratuitamente. E é bem fácil.