Какова цель -nodes
аргумента в openssl?
Какова цель -nodes
аргумента в openssl?
Ответы:
Вариант -nodes
- это не английское слово «узлы», а «no DES». Если указано в качестве аргумента, это означает, что OpenSSL не будет шифровать закрытый ключ в файле PKCS # 12 .
Чтобы зашифровать закрытый ключ, вы можете опустить, -nodes
и ваш ключ будет зашифрован с помощью 3DES-CBC. Чтобы зашифровать ключ, OpenSSL запрашивает пароль и использует этот пароль для генерации ключа шифрования с помощью функции создания ключа EVP_BytesToKey .
В зависимости от вашей версии OpenSSL и скомпилированных опций вы можете предоставить эти опции вместо -nodes
:
-des encrypt private keys with DES
-des3 encrypt private keys with triple DES (default)
-idea encrypt private keys with idea
-seed encrypt private keys with seed
-aes128, -aes192, -aes256
encrypt PEM output with cbc aes
-camellia128, -camellia192, -camellia256
encrypt PEM output with cbc camellia
В конечном итоге на уровне библиотеки OpenSSL вызывает функцию PEM_write_bio_PrivateKey с выбранным вами алгоритмом шифрования (или его отсутствием).
edit: nginx v1.7.3 добавил директиву ssl_password_file, которая считывает парольные фразы из указанного файла, пытаясь каждую парольную фразу на encrypted-private.key контекста
indiv правильно, что -nodes
аргумент означает, что OpenSSL создаст незашифрованный private.key ; в противном случае будет предложено ввести кодовую фразу для создания encrypted-private.key . см. req , pkcs12 , CA.pl
однако я считаю, что цель (для программистов) в том, что:
ssl_password_file file.keys;
в http { }
или server { }
контексте. [ ссылка ]-nodes
для создания private.key без шифрованияполезно: заблокировать private.key
sudo chown root:ssl-cert private.key
- сп Ange собственного ЭВ private.key к корневому пользователю, SSL-CERT группыsudo chmod 640 private.key
- изменить права доступа private.key на владельца R / W, группу RВариант А
повышенная безопасность, но при перезапуске сервера необходимо вручную вводить парольную фразу для encrypted-private.key
Вариант Б
средний уровень безопасности и, вероятно, хороший баланс между кондиционером
Вариант C
более слабая безопасность, но НЕ запрашивается незашифрованная кодовая фраза private.key