Как запустить сервер Node.js с портом 3000 при этом с SSL сертификатом рабочим для порта 3000?
Обычно nodejs просто ставят за nginx через proxy_pass, в итоге он работает на том же самом доменном имени, что и сайт, по отдельному пути, или же на отдельном поддомене.  Это удобнее, т.к. всю дополнительную работу (шифрование, логи запросов, контроль частоты запросов и т.п.) берёт на себя nginx, не нужно отдельно дублировать этот функционал ещё и в самом приложении. А заодно - можно использовать общие с сайтом cookie.
Кроме Nginx есть хоть и менее популярный вариант обратного прокси-сервера, с веб-сервером Caddy, но зато у которого имеется встроенный механизм для работы с автоматической поддержкой HTTPS с TLS.
Инструкция