Сгенерировать отпечатки HPKP для всей цепочки сертификатов.

Имя исполняемого файла по умолчанию - a.out, согласно g++ manpage:

-o file

    Place output in file file.  This applies to whatever sort
    of output is being produced, whether it be an executable file,
    an object file, an assembler file or preprocessed C code.

    If -o is not specified, the default is to put an executable file
    in a.out, the object file for source.suffix in source.o, its
    assembler file in source.s, a precompiled header file in
    source.suffix.gch, and all preprocessed C source on standard output.

Поэтому вы можете использовать . /a.out для запуска скомпилированного исполняемого файла или добавить аргумент -o в командную строку g++:

$ g++ -o server server.cpp -Wall
$ ./server
3
25.05.2017, 01:42
2 ответа

Хотя я в основном согласен с Ромео в том, что у вас уже должны быть файлы сертификатов на сервере, если вам нужно обрабатывать несколько сертификатов с одного s_client, вы можете сделать что-то вроде :

 openssl s_client ..... -showcerts \
   | awk '/-----BEGIN/{f="cert."(n++)} f{print>f} /-----END/{f=""}'
 # or input from bundle or chain file
 for c in cert.*; do
   openssl x509 <$c -noout -pubkey .....
 done
 rm cert.* 
 # use better temp name/location if you want
6
27.01.2020, 21:12

Вы можете извлечь эмитента из сертификата (CN эмитента). Но с этого момента вы должны получить этот сертификат вручную, выполнив поиск на веб-сайте эмитента. Если у вас есть доступ к веб-серверу, вы найдете в файловой системе сертификаты и запустите свой скрипт над файлами с сертификатами CA

2
27.01.2020, 21:12

Теги

Похожие вопросы