opensslで証明書が見つかりませんでした。

opensslで証明書が見つかりませんでした。

gitまたはcurlを使用すると、証明書に関連するエラーが発生する可能性があります。

子供の使用:

> git clone https://github.com/vim/vim.git
Cloning into 'vim'...
fatal: unable to access 'https://github.com/vim/vim.git/': error:140943E8:SSL routines:ssl3_read_bytes:reason(1000)

カールがある

> curl -v https://github.com
*   Trying 2001:8002:e42:f002::f5ff:443...
* TCP_NODELAY set
* Connected to github.com (2001:8002:e42:f002::f5ff) port 443 (#0)
* ALPN, offering h2
* ALPN, offering http/1.1
* successfully set certificate verify locations:
*   CAfile: /etc/pki/tls/certs/ca-bundle.crt
  CApath: none
* TLSv1.3 (OUT), TLS handshake, Client hello (1):
* TLSv1.3 (IN), TLS alert, close notify (512):
* error:140943E8:SSL routines:ssl3_read_bytes:reason(1000)
* Closing connection 0
curl: (35) error:140943E8:SSL routines:ssl3_read_bytes:reason(1000)

opensslに何が起こっているのかを見ようとしても証明書が見つからないようです。

> openssl s_client -ciphersuites TLS_AES_128_GCM_SHA256 -connect github.com:443
CONNECTED(00000003)
139703172380480:error:140943E8:SSL routines:ssl3_read_bytes:reason(1000):ssl/record/rec_layer_s3.c:1543:SSL alert number 0
---
no peer certificate available
---
No client certificate CA names sent
---
SSL handshake has read 7 bytes and written 316 bytes
Verification: OK
---
New, (NONE), Cipher is (NONE)
Secure Renegotiation IS NOT supported
Compression: NONE
Expansion: NONE
No ALPN negotiated
Early data was not sent
Verify return code: 0 (ok)
---

別のコンピュータでopensslコマンド(上記)を実行すると、証明書に関する多くの情報が返されます。

この問題を診断/解決するにはどうすればよいですか?

私はFedora 31を使用しています

編集: "nmcli con show"の出力の一部は次のとおりです。

ipv6.method:                            auto
ipv6.dns:                               --
ipv6.dns-search:                        --
ipv6.dns-options:                       --
ipv6.dns-priority:                      0
ipv6.addresses:                         --
ipv6.gateway:                           --
ipv6.routes:                            --
ipv6.route-metric:                      -1
ipv6.route-table:                       0 (unspec)
ipv6.routing-rules:                     --
ipv6.ignore-auto-routes:                no
ipv6.ignore-auto-dns:                   no
ipv6.never-default:                     no
ipv6.may-fail:                          yes
ipv6.ip6-privacy:                       -1 (unknown)
ipv6.addr-gen-mode:                     stable-privacy
ipv6.dhcp-duid:                         --
ipv6.dhcp-send-hostname:                yes
ipv6.dhcp-hostname:                     --
ipv6.token:                             --

ベストアンサー1

明らかにIPv6設定が正しく設定されていません。解決策(修正ではありませんが複雑でも不可能な場合もあります)で、システムでIPv6を完全に無効にしてコマンドを再試行してくださいgit

次のように入力して(rootとして)IPv6を無効にします。

echo 0 > /proc/sys/net/ipv6/conf/all/autoconf
echo 0 > /proc/sys/net/ipv6/conf/all/accept_ra
echo 1 > /proc/sys/net/ipv6/conf/all/disable_ipv6

これは次の再起動まで適用されます。コンピュータでIPv6を永久に無効にするには(もちろんキャンセルするまで)、設定ファイルを変更する必要があります。残念ながら、これが行われる方法は主にシステムによって異なります。 Fedoraでは、イーサネットネットワーク上にあり、/etc/sysconfig/network-scriptsイーサネットネットワーク名を持つネットワーク設定ファイルを編集して実行できます。このファイルはおそらくifcfg-enp4s2あなたのネットワーク(参考文献を参照ip a)と呼ばれるものと似ていますenp4s2。追加(または存在する場合は編集)します。そして=yes)ライン

IPV6INIT=no

これは、次回ネットワークサービスを再起動(または再起動)するときに適用されます。

システムで動作または動作しない別の方法は、ファイルを見つけて/etc/sysctl.conf次の行を追加することです(または存在する場合はそれを調整すること)。

net.ipv6.conf.all.autoconf = 0
net.ipv6.conf.all.accept_ra = 0
net.ipv6.conf.all.disable_ipv6 = 1

そして私たちに教えてください。

完全な公開:IPv6を無効にする行は次からコピーされます。カスタム組み込みビルトイン設定でIPv6を無効にする方法

おすすめ記事