Questions tagged «openssl»

OpenSSL是SSL和TLS协议的开源实现。用C编程语言编写的核心库实现基本的密码功能并提供各种实用程序功能。

3
信任自签名的PEM证书
我已经使用PEM证书使用SSL设置了代理服务器。现在,有几台我希望自动信任此证书的机器(而Web浏览器没有抱怨)。如何在每台计算机上安装PEM证书? 另外,还建议什么:生成自签名证书或并列蛇油证书?
23 debian  ssl  openssl 

6
Apache SSL:服务器证书不包含与服务器名称匹配的ID
我正在尝试在apache2网络服务器上设置SSL,但似乎根本无法使用。 我遵循了一个使用openssl创建证书文件并/etc/apache2/sites-available/default-ssl.conf正确配置的教程。 每次我尝试使用https打开我的网站时,由于安全问题,我的浏览器都会拒绝连接。它说我的网站配置不正确。 在我的/var/log/apache2/error.log警告中,我的服务器证书不包含与服务器名称匹配的ID。 [Mon Apr 10 11:03:24.041813 2017] [mpm_prefork:notice] [pid 1222] AH00169: caught SIGTERM, shutting down [Mon Apr 10 11:03:30.566578 2017] [ssl:warn] [pid 661] AH01909: 127.0.0.1:443:0 server certificate does NOT include an ID which matches the server name [Mon Apr 10 11:03:31.579088 2017] [ssl:warn] [pid 1194] AH01909: 127.0.0.1:443:0 server …

3
在bash中为> 1个程序传递密码的安全方法
我正在编写bash脚本,需要询问用户密码并将其传递给openssl。虽然openssl可以读取密码本身,但我需要运行两次程序,并且不想两次询问用户。这是脚本: cp file{,.old} read -sp 'Enter password. ' PASS; echo export PASS # decode | edit | encode openssl enc -d -aes-256-cbc -k "$PASS" -in file.old | \ sed ... | openssl enc -e -aes-256-cbc -k "$PASS" -out file unset PASS 这是不安全的,因为通过查看命令行很容易获得密码。ps例如,有人可以使用阅读它。 openssl可以从环境变量中读取密码,因此可以替换-k "$PASS"为-pass env:PASS,但这仍然不安全;任何进程的环境变量都可以自由读取(再次ps可以做到)。 那么,如何安全地将密码传递给两个openssl实例?

2
不信任Linux中的中间CA?
从这个博客。 中间CA是由根CA签名的证书,可以为任何网站签署任意证书。 它们与根CA一样强大,但是没有系统信任的完整列表,因为根CA可以随意创建新的CA,而您的系统将一见钟情。CT中记录了数千。 本月突然出现了一个有趣的消息,显然是在2015年9月生成的:“蓝色外套公共服务中间CA”,由Symantec签署。(到目前为止,此CA签署的证书尚未到达CT日志或Censys。) 我认为这是写一个如何明确不信任中间件CA的好时机,否则该中间件CA在OS X中将是可信的。这不会阻止根CA将新的中间件交给同一组织,但总比没有好。 当我在Ubuntu中尝试博客中的步骤时,我下载了此证书https://crt.sh/?id=19538258。当我打开.crt时,它会导入到Gnome密钥环中,但是导入后我找不到找到“取消信任”证书的方法。

1
如何使用自签名证书创建密钥库和信任库?
我们有JAVA服务器和客户端使用SSL通过网络进行通信。服务器和客户端使用证书相互认证。服务器和客户端使用的密钥库类型为JKS。服务器和客户端加载其密钥库和信任库文件。密钥库和信任库文件名是:server.keystore,server.truststore,client.keystore和client.truststore。我正在使用自签名证书仅用于测试。 问题: Q1。我想知道为什么我需要在步骤6中将服务器和客户端自己的证书添加到它们各自的信任库中。 Q2。我可以减少实现相同目的的步骤数吗?如果是,那怎么办? 为服务器创建RSA密钥,自签名证书,密钥库和信任库的步骤 生成私有RSA密钥 openssl genrsa -out diagserverCA.key 2048 创建一个x509证书 openssl req -x509 -new -nodes -key diagserverCA.key \ -sha256 -days 1024 -out diagserverCA.pem 根据私钥和公共证书创建PKCS12密钥库。 openssl pkcs12 -export -name server-cert \ -in diagserverCA.pem -inkey diagserverCA.key \ -out serverkeystore.p12 将PKCS12密钥库转换为JKS密钥库 keytool -importkeystore -destkeystore server.keystore \ -srckeystore serverkeystore.p12 -srcstoretype pkcs12 -alias …
17 openssl  ssl 

3
检查SSL证书是否有效的脚本
我有几个SSL证书,并且证书过期后想通知我。 我的想法是创建一个cronjob,每天执行一个简单的命令。 我知道opensslLinux 中的命令可用于显示远程服务器的证书信息,即: openssl s_client -connect www.google.com:443 但我在此输出中看不到到期日期。另外,我必须用CTRL+ 终止此命令c。 如何从脚本(最好使用openssl)中检查远程证书的到期时间,并在“批处理模式”下进行操作,以使其自动运行而无需用户干预?

3
从.pem文件获取.cer文件
我已经使用以下命令生成了RSA私钥: openssl genrsa -out privkey.pem 2048 并使用以下命令创建了自签名证书: openssl req -new -x509 -key privkey.pem -out cacert.pem -days 3650 现在,我正在尝试将cacert .pem文件转换为ce​​rtificate .cer 有任何想法吗?

3
如何将SSL密码转换为curl格式?
在官方的ssl文档列出密码在不同的格式卷曲发生。例如,如果我希望curl使用密码TLS_ECDHE_RSA_WITH_3DES_EDE_CBC_SHA,则必须通过它curl --ciphers ecdhe_rsa_3des_sha。我知道其中一些映射,但不是全部映射-例如,我必须通过什么才能使其卷曲才能使用密码TLS_DHE_RSA_WITH_AES_128_GCM_SHA256? 在哪里可以找到一个文档,该文档显示ssl文档中的密码名称如何映射到curl接受的密码名称? 编辑:我最终发现我的curl由NSS(而不是OpenSSL)支持,并且该问题专门是因为没有使用NSS支持的curl的良好文档,而它需要使用与OpenSSL不同的参数来使用相同的密码。因此,我的问题仅针对NSS。

3
解密错误的魔术数字
4月,我使用以下命令对文件进行了加密 openssl enc -aes-256-cbc -salt -pass file:<passwordfile> < infile > outfil 现在我想用 openssl enc -d -aes-256-cbc -salt -pass file:<passwordfile> -in outfil -out infile2 但是我得到了不好的魔术数字。 昨天使用相同参数加密的文件可以解密。 会发生什么事?而且无论如何我都可以检索此存档文件?
12 openssl 

1
如何使Gnu / Linux信任开箱即用的Windows信任的证书?
如此SSL检查所报告,服务器的SSL链断开了: 我知道这是应该在服务器本身上解决的问题,但是有时很难解决(我不是服务器的管理员)。 事实是,Windows上的Chrome / Mozilla / Edge 仍然信任站点证书: 但是,在Gnu / Linux部署(Docker中的Ubuntu 18.04)中,证书不受信任: curl: (60) SSL certificate problem: unable to get local issuer certificate 我尝试过update-ca-certificates甚至导入了Globalsign根证书。update-ca-certificates在这种情况下报告了重复的证书。无论如何,什么都没有。 如何繁殖 使用Docker: docker run -it ubuntu:18.04 # within container: apt-get update apt-get -y install curl curl https://betriebsheft.vog.it # <---- "unable to get local issuer certificate" 如何使Gnu …


2
FreeBSD软件包回购-如何进行手动签名验证?
我正在尝试在FreeBSD软件包网站上验证软件包的签名。 wget http://pkg.freebsd.org/FreeBSD:11:amd64/latest/digests.txz tar xf digests.txz 这给了三个文件:digests,digests.pub digests.sig 我认为digests.sig是该文件的签名digests用digests.pub的公钥。但是我试图确认: openssl dgst -verify digests.pub -signature digests.sig digests 得到消息 Verification Failure 我认为我出了点问题-谁能告诉我我所缺少的吗? 编辑:基于对源代码的搜寻,我认为重要的功能是在这里找到的,称为openssl库中的rsa_verify_cert_cb调用RSA_verify。但是我还没有弄清楚到底是什么,或者是否可以使用openssl命令行工具来调用该函数。

4
在CentOS 6.5上安装OpenSSL共享库
OS: CentOS-6.5-x86_64-minimal 我下载了最新版本的OpenSSL 用它提取 tar -xvzf openssl-1.0.1e.tar.gz cd openssl-1.0.1e ./config --prefix=/usr/local make 它给了我以下错误: making all in crypto... make[1]: Entering directory `/usr/local/src/openssl-1.0.1e/crypto' making all in crypto/objects... make[2]: Entering directory `/usr/local/src/openssl-1.0.1e/crypto/objects' make[2]: Nothing to be done for `all'. make[2]: Leaving directory `/usr/local/src/openssl-1.0.1e/crypto/objects' making all in crypto/md4... make[2]: Entering directory `/usr/local/src/openssl-1.0.1e/crypto/md4' make[2]: Nothing …
11 centos  yum  openssl 

3
如何在bash脚本中为unicode grep
if grep -q "�" out.txt then echo "working" else cat out.txt fi 基本上,如果文件“ out.txt”在文件中的任何位置都包含“ ...”,我希望它回显“工作”,并且如果文件“ out.txt”在文件中的任何位置均不包含“。”,那么我想它来猫out.txt 编辑:所以这就是我在做什么。我试图蛮力的openssl解密。 openssl enc成功返回0,否则返回非零。注意:您会得到误报,因为AES / CBC只能根据正确的填充来确定“解密是否有效”。因此,该文件将解密,但它不是正确的密码,因此其中会出现乱码。乱码中的常见字符是“。”。因此,如果输出包含“ ...”,我希望do循环继续进行。 这是我的git链接https://github.com/Raphaeangelo/OpenSSLCracker 这是脚本 while read line do openssl aes-256-cbc -d -a -in $1 -pass pass:$line -out out.txt 2>out.txt >/dev/null && printf "==================================================\n" if grep -q "�" out.txt then : …

1
数字签名电子邮件的CLI验证
我是爱丽丝,已经收到鲍勃的签名电子邮件。 我使用Web电子邮件客户端(例如GMail),并且看到附件之一是smime.p7s。 我找到了“显示原始消息”选项,并将内容保存到中message.orig。 假设鲍勃(Bob)签署了电子邮件,我如何从命令行进行验证? (假设鲍勃使用某些受尊敬的权威机构签署的认证密钥-我不知道是哪个,但我想是这样) (爱丽丝不想仅使用一封邮件就安装具有适当功能的电子邮件客户端)

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.