Você DEVE ter a chave privada correspondente para usar um certificado de cliente para autenticar em um servidor. Apresentar um certificado sem a chave privada correspondente é como apresentar um nome de usuário sem uma senha. Qualquer pessoa pode saber seu nome de usuário ou ter feito uma cópia do seu certificado. Não prova que você é você , por isso não pode ser usado para autenticação. Assim como saber sua senha prova que você é o proprietário de um determinado nome de usuário, a chave privada é o segredo que só você conhece, o que prova que você é o proprietário adequado do certificado.
Portanto, você precisa exportar o certificado e a chave privada correspondente de uma forma ou de outra, e colocá-los em formato DER ou PEM, e fornecer ambos a wget
por meio dos argumentos apropriados da linha de comando.
Eu não vejo uma maneira de passar wget
uma senha de criptografia para sua chave privada, o que é uma droga, porque significa que você terá que deixar sua chave privada descriptografada em disco, o que é um grande não-não. . Segredos sempre devem ser "criptografados em repouso" (ou seja, quando em disco), bem como "criptografados em trânsito" (ou seja, através da rede).
Parece que curl
é melhor que wget
neste aspecto, porque curl
tem a opção -E, --cert <certificate[:password]>
, para que você possa manter sua chave privada criptografada no disco. curl
também parece ter algumas opções para deixar sua chave privada dentro de chaveiros em algumas plataformas.