2017-01-17 44 views
1

セキュリティ保護されたSSL接続を使用して、モスキートブローカーに接続しようとしています。 はそうするために、私は次のように続く
tutorial他のマシンからmosquittoブローカーに接続するときのSSLエラー

mosquittoの設定ファイルは次のとおりです。

tls_version tlsv1.2 
pid_file /var/run/mosquitto.pid 

persistence true 
persistence_location /var/lib/mosquitto/ 

log_dest file /var/log/mosquitto/mosquitto.log 
include_dir /etc/mosquitto/conf.d 
listener 1883 

listener 8883 
cafile /etc/mosquitto/certs2/ca.crt 
certfile /etc/mosquitto/certs2/server.crt 
keyfile /etc/mosquitto/certs2/server.key 

は私がいる限り、クライアントがあるとして、この script

とCAファイルとサーバ証明書を生成しますブローカと同じマシンでは、CAファイルを使用してポート8883に接続するのに問題はありません。

mosquitto_sub -h localhost --cafile /etc/mosquitto/certs2/ca.crt -t "test" -p 8883 -v 

しかし、私は別のマシン上のクライアントから接続しようとすると、私は次のエラーを取得する:私はmosquitto_pub /サブのオプションの安全でないを使用する場合

1484748728: OpenSSL Error: error:14094416:SSL routines:SSL3_READ_BYTES:sslv3 alert certificate unknown 

はまた、それはうまく動作します。

--insecure

When using certificate based encryption, this option disables verification of the server hostname in the server certificate. This can be useful when testing initial server configurations but makes it possible for a malicious third party to impersonate your server through DNS spoofing, for example. Use this option in testing only. If you need to resort to using this option in a production environment, your setup is at fault and there is no point using encryption.

だから、私は多分commonNameの私のサーバー上の証明書がよくないですが、私はチェックして、それは私がかかわりを確立するために使用するホスト名にcorespondsことを考えていました。

どちらのマシンでも、OpenSSL 1.0.2gがインストールされています。

が起こるかについてのより正確な情報を持っているために、私はssldumpを実行しようが、私は本当にそれを

2 1 0.0292 (0.0292) C>S Handshake 
     ClientHello 
     Version 3.3 
     cipher suites 
     Unknown value 0xc030 
     Unknown value 0xc02c 
     Unknown value 0xc028 
     Unknown value 0xc024 
     Unknown value 0xc014 
     Unknown value 0xc00a 
     Unknown value 0xa5 
     Unknown value 0xa3 
     Unknown value 0xa1 
     Unknown value 0x9f 
     Unknown value 0x6b 
     Unknown value 0x6a 
     Unknown value 0x69 
     Unknown value 0x68 
     TLS_DHE_RSA_WITH_AES_256_CBC_SHA 
     TLS_DHE_DSS_WITH_AES_256_CBC_SHA 
     TLS_DH_RSA_WITH_AES_256_CBC_SHA 
     TLS_DH_DSS_WITH_AES_256_CBC_SHA 
     Unknown value 0x88 
     Unknown value 0x87 
     Unknown value 0x86 
     Unknown value 0x85 
     Unknown value 0xc032 
     Unknown value 0xc02e 
     Unknown value 0xc02a 
     Unknown value 0xc026 
     Unknown value 0xc00f 
     Unknown value 0xc005 
     Unknown value 0x9d 
     Unknown value 0x3d 
     TLS_RSA_WITH_AES_256_CBC_SHA 
     Unknown value 0x84 
     Unknown value 0xc02f 
     Unknown value 0xc02b 
     Unknown value 0xc027 
     Unknown value 0xc023 
     Unknown value 0xc013 
     Unknown value 0xc009 
     Unknown value 0xa4 
     Unknown value 0xa2 
     Unknown value 0xa0 
     Unknown value 0x9e 
     TLS_DHE_DSS_WITH_NULL_SHA 
     Unknown value 0x40 
     Unknown value 0x3f 
     Unknown value 0x3e 
     TLS_DHE_RSA_WITH_AES_128_CBC_SHA 
     TLS_DHE_DSS_WITH_AES_128_CBC_SHA 
     TLS_DH_RSA_WITH_AES_128_CBC_SHA 
     TLS_DH_DSS_WITH_AES_128_CBC_SHA 
     Unknown value 0x9a 
     Unknown value 0x99 
     Unknown value 0x98 
     Unknown value 0x97 
     Unknown value 0x45 
     Unknown value 0x44 
     Unknown value 0x43 
     Unknown value 0x42 
     Unknown value 0xc031 
     Unknown value 0xc02d 
     Unknown value 0xc029 
     Unknown value 0xc025 
     Unknown value 0xc00e 
     Unknown value 0xc004 
     Unknown value 0x9c 
     Unknown value 0x3c 
     TLS_RSA_WITH_AES_128_CBC_SHA 
     Unknown value 0x96 
     Unknown value 0x41 
     Unknown value 0xc011 
     Unknown value 0xc007 
     Unknown value 0xc00c 
     Unknown value 0xc002 
     TLS_RSA_WITH_RC4_128_SHA 
     TLS_RSA_WITH_RC4_128_MD5 
     Unknown value 0xc012 
     Unknown value 0xc008 
     TLS_DHE_RSA_WITH_3DES_EDE_CBC_SHA 
     TLS_DHE_DSS_WITH_3DES_EDE_CBC_SHA 
     TLS_DH_RSA_WITH_3DES_EDE_CBC_SHA 
     TLS_DH_DSS_WITH_3DES_EDE_CBC_SHA 
     Unknown value 0xc00d 
     Unknown value 0xc003 
     TLS_RSA_WITH_3DES_EDE_CBC_SHA 
     Unknown value 0xff 
     compression methods 
        NULL 
2 2 0.0602 (0.0309) S>C Handshake 
     ServerHello 
     Version 3.3 
     session_id[0]= 

     cipherSuite   Unknown value 0xc030 
     compressionMethod     NULL 
2 3 0.0614 (0.0012) S>C Handshake 
     Certificate 
2 4 0.0614 (0.0000) S>C Handshake 
     ServerKeyExchange 
2 5 0.0614 (0.0000) S>C Handshake 
     ServerHelloDone 
2 6 0.0629 (0.0014) C>S Alert 
    level   fatal 
    value   certificate_unknown 
2 0.0644 (0.0015) C>S TCP RST 

を解釈するのか分からないそれのCipherSuiteにちょうどunknownvalueがあることが私には奇妙に思えますサーバーのこんにちは、ssl/tlsは私のためのまったく新しいトピックです...

あなたはこの問題を引き起こす可能性があるか、それをどのようにデバッグするかについて考えていますか?

私はあなたに私にいくつかの提案を与えることができたらとても嬉しく思います。

答えて

0

この質問はiot.stackexchange.comでよく聞かれました。

But when I try to connect from a client on another machine I get the following error:

あなたは、あなたが任意の複数のリモートマシンに接続していない、別のマシンでmosquitto_sub -h localhostを実行している場合。リモートホスト上で正しくホスト名を変更した場合は、正しいCAファイルにコピーしたことがありますか?

+0

いいえ私は他のマシンで "mosquitto_sub -h localhost"を使っていませんでした。localhostを、接続先のサーバのホスト名に置き換えました。私が使用しているCAファイルも良いものだと確信しています。 –

関連する問題