Я использую windows xp 32bit
Я только что загрузил Openssl по следующему URL-адресу и установил его. http://www.slproweb.com/products/Win32OpenSSL.html
а затем я попытался создать самоподписанный сертификат, используя следующую команду
openssl req -x509 -days 365 -newkey rsa:1024 -keyout hostkey.pem -nodes -out hostcert.pem
затем он начал выдавать следующую ошибку
Невозможно загрузить информацию о конфигурации из /usr/local/ssl/openssl.cnf
Затем после поиска в Google я изменил указанную выше команду на
openssl req -config C:\OpenSSL\bin\openssl.conf -x509 -days 365 -newkey rsa:1024 -keyout hostkey.pem -nodes -out hostcert.pem
Но теперь я получаю следующую ошибку в командной строке
ошибка в строке -1 C: \ OpenSSL \ bin \ openssl.conf
4220: ошибка: 02001002: системная библиотека: fopen: нет такого файла или каталога:. \ crypto \ bio \ bss_file.c: 126: fopen ('C: \ OpenSSL \ bin \ openssl.conf ',' rb ') 4220: ошибка: 2006D080: подпрограммы BIO: BIO_new_file: нет такого файла:. \ Crypto \ bio \ bss_file.c: 129:
4220: ошибка: 0E078072: процедуры файла конфигурации : DEF_LOAD: такого файла нет:. \ Crypto \ conf \ conf_def.c: 197:
Пожалуйста помоги. Заранее спасибо.
Ответы:
В Windows вы также можете установить свойство среды
OPENSSL_CONF
. Например, в командной строке вы можете ввести:чтобы проверить это, вы можете ввести:
Вы также можете установить его как часть переменных среды компьютера, чтобы он был доступен по умолчанию для всех пользователей и служб. См., Например, « Переменные среды» в Windows NT и « Как управлять переменными среды в Windows XP» .
Теперь вы можете запускать команды openssl без необходимости передавать параметр местоположения конфигурации.
источник
set
это команда Windows, и она предназначена для запускаcmd.exe
. Это не будет работать на машине, отличной от Windows.set
Иecho
вещь не работает в Power Shell, либо. Вы бы использовали что-то вроде$X=1; Write-Output $X
.Просто добавьте в свою командную строку параметр
-config c:\your_openssl_path\openssl.cfg
, изменивyour_openssl_path
его на реальный установленный путь.источник
$ openssl ca -in server.csr -config /etc/ssl/openssl.cnf
но почему этот -config не отображается в man openssl? openssl.org/docs/apps/openssl.htmlПросто создайте файл openssl.cnf самостоятельно, как показано на шаге 4: http://www.flatmtn.com/article/setting-openssl-create-certificates
Редактировать после того, как ссылка перестала работать . Содержимое файла openssl.cnf было следующим:
источник
позаботьтесь о правильном расширении ( openssl.cfg, а не cnf)!
Я установил OpenSSL отсюда: http://slproweb.com/products/Win32OpenSSL.html
источник
Если вы установили Apache с OpenSSL, перейдите в каталог bin. В моем случае D: \ apache \ bin.
* Эти команды также работают, если у вас установлена автономная установка openssl.
Выполните эти команды:
* Это создаст самозаверяющий сертификат, который вы можете использовать в целях разработки.
Опять же, если у вас установлен Apache в httpd.conf, вставьте следующее:
источник
Просто попробуйте запустить openssl.exe от имени администратора.
источник
C:\Program Files\Common Files\SSL/openssl.cnf
а затем, когда он запускался как администратор, ему было все равно, что он не мог его найти (и не создавал файл), но это сработало для меня, поэтому мне все равно либо.У меня была аналогичная ошибка при использовании openssl.exe из папки bin Apache для Windows. У меня был указан флаг -config с опечаткой в пути к файлу openssl.cnf. Я думаю ты найдешь это
должно быть
Примечание: conf, вероятно, должен быть cnf .
источник
Если установка openssl прошла успешно, найдите «OPENSSL» на диске c, чтобы найти файл конфигурации и указать путь.
У меня получилось.
источник
Этот обходной путь настолько помог нам в моей работе (техническая поддержка), что мы сделали простой командный файл, который можно было запускать откуда угодно (у нас не было разрешений на его установку). Этот обходной путь установит переменную, а затем запустит OpenSSL для вас. Он также открывает для вас папку bin (потому что именно здесь будут сохранены любые файлы, которые вы создаете или изменяете). Кроме того, это только для Windows.
Как настроить:
Скопируйте этот код в файл с именем StartOpenSSL.bat. Сохраните это в любом месте по вашему выбору. Его можно запустить откуда угодно.
источник
Проблема здесь в том, что НЕТ файла openssl.cnf, предоставленного с материалом openssl GnuWin32. Вы должны это создать. Вы можете узнать, КАК создать файл openssl.cnf, перейдя сюда:
http://www.flatmtn.com/article/setting-ssl-certificates-apache
Где вам все объясняется, как это сделать.
ПОЖАЛУЙСТА, ОБРАТИТЕ ВНИМАНИЕ: команда openssl с обратной косой чертой в конце предназначена для UNIX. Для Windows: 1) Удалите обратную косую черту и 2) Переместите вторую строку вверх, чтобы она оказалась в конце первой строки. (Таким образом, вы получаете всего одну команду.)
ТАКЖЕ: ОЧЕНЬ важно прочитать комментарии. На их основе вы можете внести некоторые изменения.
источник
У меня была такая же проблема в Windows. Это было решено путем установки переменной среды следующим образом:
Имя переменной: OPENSSL_CONF Значение переменной: C: (OpenSSl Directory) \ bin \ openssl.cnf
источник
Если вы видите что-то вроде ошибки
попробуйте изменить косую черту с обратной на переднюю в -config.
источник
https://github.com/xgqfrms-gildata/App001/issues/3
openssl.cnf
файл по правильному пути;источник
Запустите команду от имени администратора и скопируйте файл конфигурации туда, где у вас есть права чтения, и укажите путь с параметром -config.
источник
Я знаю, что это устарело, но подумал, что другие, которые случаются с этим (и используют Visual Studio), могут выиграть. Я прочитал это в другом посте, который, похоже, не нашел.
Откройте свою конфигурацию в блокноте ++ и убедитесь, что это кодировка UTF-8 (т.е. не UTF-8-BOM *).
Это избавило бы меня от многих поисков / проб и ошибок ...
источник
Я знаю, что этот вопрос старый, но вот как я его решил.
Я скопировал
openssl.cnf
файл изbin
каталога в родительский каталог, которыйC:/Openssl/openssl.cnf
вместо этого,C:/Openssl/bin/openssl.cnf
и работал нормально.источник