Sou um completo novato na configuração do OpenSSL; localizei os executáveis do OpenSSL no meu computador Windows por meio do git no Windows.
Embora eu não saiba por onde começar a criar um certificado SSL para um site que será acessado e exigirá um login e senha, é aí que o SSL fará sua parte para o cliente, enviando ao cliente o login e a senha, desde que o cliente tenha o certificado SSL para esse site. Caso contrário, se o cliente não tiver o certificado, o site mostrará ao usuário para inserir seu login e senha.
Procurei como instalar e configurar o OpenSSL, mas a maioria dos sites só informa como instalá-lo, o que não requer essa informação. Estou pronto para executar o comando necessário para fazer o que estou perguntando nesta pergunta.
Eu não recomendaria usar as
openssl
ferramentas CLI para criação de certificados. Use Easy-RSA ou XCA ou algo que já tenha bons modelos de certificado. (O Windows Server tem um recurso de Autoridade de Certificação integrado ao AD.) Você pode usaropenssl ca
para isso (há tutoriais por aí), mas você estaria quase construindo os certificados do zero, e isso é um pouco demais para explicar no primeiro dia, considerando que existem alternativas.As etapas gerais são:
Note que os certificados SSL 'cliente' usam um modelo ligeiramente diferente dos certificados 'servidor'. Há muita sobreposição, é claro, e muitos certificados públicos 'servidor' são, na verdade, emitidos a partir de um modelo cliente/servidor duplo, mas você ainda deve considerá-los principalmente distintos. Os certificados cliente podem, na verdade, ser um pouco mais simples – por exemplo, normalmente você não precisa de subjectAltName.
Isso seria tratado pelo seu servidor web. Procure por "certificado de cliente" ou, às vezes, "mTLS".
SSLVerifyClient
eSSLCACertificateFile
ssl_verify_client
essl_client_certificate
Note que o certificado não preencherá automaticamente nenhum formulário. Em vez disso, o próprio webapp precisa procurar detalhes do certificado em cabeçalhos do servidor web (por exemplo,
$_SERVER["SSL_something"]
em PHP) e efetuar login automaticamente no usuário de acordo com o CN do certificado.