0

まばたき一口クライアントと一緒にopensipsで証明書検証をセットアップしようとしています。私はチュートリアルに従いました:

https://github.com/antonraharja/book-opensips-101/blob/master/content/3.2.%20SIP%20TLS%20Secure%20Calling.mediawiki

私の設定は次のようになります:

[opensips.cfg]
disable_tls = no
listen = tls:my_ip:5061
tls_verify_server= 0
tls_verify_client = 1
tls_require_client_certificate = 1
#tls_method = TLSv1
tls_method = SSLv23
tls_certificate = "/usr/local/etc/opensips/tls/server/server-cert.pem"
tls_private_key = "/usr/local/etc/opensips/tls/server/server-privkey.pem"
tls_ca_list = "/usr/local/etc/opensips/tls/server/server-calist.pem"

そのため、rootCA とサーバー証明書を生成しました。次に、server-calist.pem に server-privkey.pem を追加し (そうしないと、瞬き sip クライアントはそれをロードしません)、クライアントに設定します。また、server-calist.pem を瞬く間に認証局として設定しました。しかし、サーバーにログインしようとすると、次のようになります。

Feb  4 21:02:42 user /usr/local/sbin/opensips[28065]: DBG:core:tcp_read_req: Using the global ( per process ) buff
Feb  4 21:02:42 user /usr/local/sbin/opensips[28065]: DBG:core:tls_update_fd: New fd is 17
Feb  4 21:02:42 user /usr/local/sbin/opensips[28065]: ERROR:core:tls_accept: New TLS connection from 130.85.9.114:48253 failed to accept: rejected by client

したがって、クライアントが何らかの理由でサーバー証明書を受け入れないと想定していますが、点滅する sip クライアントで「サーバーの検証」チェックボックスをオフにしています! 認証局ファイルが間違っていると思います。

./user/user-cert.pem
./user/user-cert_req.pem
./user/user-privkey.pem
./user/user-calist.pem     <- this 4 are for using opensips as a client i think
./rootCA/certs/01.pem
./rootCA/private/cakey.pem
./rootCA/cacert.pem
./server/server-privkey.pem
./server/server-calist.pem
./server/server-cert.pem
./server/server-cert_req.pem
./calist.pem

誰か助けてもらえますか、設定で何か間違ったことをしたのですか、それとも間違った証明書チェーンを使用しましたか? クライアントがクライアント証明書として正確にどの証明書を使用し、CA 機関証明書を使用する必要がありますか?

4

1 に答える 1

0

承認の動作がおかしくなったため、機能しているかどうかはまだわかりませんが、5〜6分間ハングした後、成功の承認が得られるので、これが解決策です:

rootCA を生成します。

opensipsctl tls rootCA

次に、 opensips フォルダー内server.confのファイルを編集し、xxx.xxx.xxx.xxx がサーバーの IP アドレスである場所を設定します。他の変数は、任意の方法で編集できます。CA によって署名された証明書を生成するtlscommonName = xxx.xxx.xxx.xxx

opensipsctl tls userCERT server

これにより、4 つのファイルが生成されます。server-calist.pem、server-cert.pem、server-privkey.pem をダウンロードします。server-privkey.pem を開き、その内容をコピーしてファイル server-cert.pem の実際の証明書の前に貼り付けます。点滅を使用している場合、生成された server-cert.pem は設定 -> アカウント -> 詳細に移動します。そして、server-calist.pem は設定 -> 詳細設定に入ります。その後、blink を再起動し、5 ~ 6 分後にアカウントがログインされます。しかし、blink の別のコピーを実行し、最初のアカウントからログインしたに別の既存のアカウントにログインしようとすると、奇妙な動作が観察されました。証明書があれば、証明書を提供しなくても他のアカウントからログインできます。だから私は知りませんが、私はそれが働いていると思います。

PS opensipsメーリングリストで証明書について尋ねましたが、彼らは私の質問が不十分だと思ったので、応答がありませんでした. 同じ問題を抱えていて、より良い結果が得られた場合や、opensips サポートからの回答が得られた場合は、お知らせください。

于 2015-02-09T22:32:06.257 に答える