Можно ли настроить SSL и сайты без SSL на одном сервере Apache?
Да.
Допустим, у меня domain1.com, domain2.com и domain3.com работают на одном веб-сервере Apache, используя только один публичный IP-адрес. На сайте domain2.com будет реализован SSL-сертификат, а domain1.com и domain3.com - нет.
Это отлично. Вы должны быть в безопасности, сделав domain2.com вашим единственным хостом SSL.
Для сайтов, не являющихся https, вы можете настроить их как обычно. Единственным "дополнительным" шагом, который я мог бы рассмотреть, было бы создание не-HTTPS-версии domain2.com для автоматического перенаправления HTTP-трафика на HTTPS-версию сайта (при условии, что это желательное поведение).
Если вам интересно, вот базовая документация по Ubuntu 16.04 Apache2 (которая содержит некоторые незначительные, но важные замечания относительно SSL в разделе "Конфигурация HTTPS") и чуть более подробное руководство по SSL для Ubuntu 17.04.
Небольшое предостережение, приведенные выше ссылки касаются в основном самозаверяющих сертификатов. Поскольку вы работаете в Linux, вы можете проверить CertBot. Certbot позволяет вам получать действительные публичные сертификаты от Let's Encrypt и использует некоторую автоматизацию, чтобы упростить управление этими сертификатами.
Для Windows соответствующий файл конфигурации SSL по умолчанию, как правило, является conf\extra\httpd-ssl.conf
. Аналогично, ZeroSSL предоставляет хороший инструмент командной строки для Let's Encrypt (хотя он не автоматизирован).