Вы ДОЛЖНЫ иметь соответствующий закрытый ключ, чтобы использовать сертификат клиента для аутентификации на сервере. Представление сертификата без соответствующего закрытого ключа похоже на представление имени пользователя без пароля. Любой может знать ваше имя пользователя или сделать копию вашего сертификата. Это не доказывает, что вы - вы, поэтому его нельзя использовать для аутентификации. Точно так же, как знание того, что ваш пароль доказывает, что вы являетесь владельцем определенного имени пользователя, закрытый ключ - это секрет, который знают только вы, который подтверждает, что вы являетесь надлежащим владельцем сертификата.
Таким образом, вам необходимо экспортировать как сертификат, так и соответствующий закрытый ключ тем или иным способом, и получить их оба в формате DER или PEM и передать их обоим в wget
через соответствующие аргументы командной строки.
Я не вижу способа передать wget
пароль шифрования для вашего закрытого ключа, который полностью отстой, потому что это означает, что вам придется оставить свой закрытый ключ незашифрованным на диске, что является большим нет-нет. Предполагается, что секреты всегда должны быть "зашифрованы в покое" (т. Е. На диске), а также "зашифрованы при передаче" (т. Е. Через сеть).
Похоже, что curl
лучше, чем wget
в этом аспекте, потому что curl
имеет
-E, --cert <certificate[:password]>
, чтобы вы могли сохранить свой секретный ключ в зашифрованном виде на диске. curl
есть некоторые варианты оставить свой закрытый ключ внутри цепочек для ключей на некоторых платформах.