65件ヒット
[1-65件を表示]
(0.057秒)
種類
- インスタンスメソッド (48)
- クラス (12)
- ライブラリ (5)
ライブラリ
- openssl (60)
クラス
キーワード
- SSLSocket (12)
- hostname= (12)
-
net
/ smtp (5) -
post
_ connection _ check (12) -
servername
_ cb= (12)
検索結果
先頭5件
-
OpenSSL
:: SSL :: SSLSocket # hostname -> String | nil (29125.0) -
TLS の Server Name Indication 拡張で利用するサーバのホスト名を返します。
...TLS の Server Name Indication 拡張で利用するサーバのホスト名を返します。
OpenSSL::SSL::SSLSocket#hostname= で設定した値がそのまま返されます。
設定していない場合は nil を返します。
@see OpenSSL::SSL::SSLSocket#hostname=... -
OpenSSL
:: SSL :: SSLSocket # hostname=(hostname) (17250.0) -
TLS の Server Name Indication(SNI) 拡張で利用するサーバのホスト名を設定します。
...のため、
クライアント側が OpenSSL::SSL::SSLSocket#connect を呼ぶ前に
このメソッドでホスト名を指定する必要があります。
hostname に nil を渡すと SNI 拡張を利用しません。
サーバ側については OpenSSL::SSL::SSLContext#servername_cb= を......参照してください。
@param hostname ホスト名文字列
@see OpenSSL::SSL::SSLSocket#hostname,
OpenSSL::SSL::SSLContext#servername_cb,
OpenSSL::SSL::SSLContext#servername_cb=... -
OpenSSL
:: SSL :: SSLSocket # post _ connection _ check(hostname) -> true (11137.0) -
接続後検証を行います。
...います。
検証に成功した場合は true を返し、失敗した場合は例外
OpenSSL::SSL::SSLError を発生させます。
OpenSSL の API では、
OpenSSL::SSL::SSLSocket#connect や OpenSSL::SSL::SSLSocket#accept
での検証は実用的には不完全です。
CA が証明書......証明書に記載されている FQDN が
一致しているかどうかを調べます。このメソッドはその FQDN のチェックを行ないます。
@param hostname チェックする FQDN の文字列
@raise OpenSSL::SSL::SSLError チェックに失敗した場合に発生します... -
OpenSSL
:: SSL :: SSLSocket (11036.0) -
ソケットをラップして SSL での認証と暗号通信を実現するためのクラスです。
...require 'socket'
require 'openssl'
include OpenSSL
ctx = SSL::SSLContext.new
ctx.set_params(verify_mode: OpenSSL::SSL::VERIFY_PEER, verify_hostname: true)
soc = TCPSocket.new('www.example.com', 443)
ssl = SSL::SSLSocket.new(soc, ctx)
ssl.hostname = 'www.example.com' # SNI
ss......l.connect
ssl.post_connection_check('www.example.com')
raise "verification error" if ssl.verify_result != OpenSSL::X509::V_OK
print ssl.peer_cert.to_text
# HTTP リクエストを送信
ssl.write("GET / HTTP/1.1\r\n")
ssl.write("Host: www.example.com\r\n")
ssl.write("Connection: clo... -
OpenSSL
:: SSL :: SSLContext # servername _ cb=(pr) (11024.0) -
TLS の Server Name Indication(SNI) 拡張で クライアント側からホスト名が伝えられてきた場合に 呼びだされるコールバックを設定します。
...t, hostname| ... }
2つで、1つ目は認証および暗号化通信に使われる OpenSSL::SSL::SSLSocket
オブジェクトで、2つ目がクライアント側から伝えられてきたホスト名です。
コールバックの返り値には認証と暗号化の設定を含んだ
OpenSSL::......る証明書などの各情報を用いてハンドシェイクを継続します。
コールバックが nil を返した場合には sslsocket が用いるコンテキストは
変更されません。
@param pr コールバックオブジェクト
@see OpenSSL::SSL::SSLContext#servername_cb... -
net
/ smtp (24.0) -
メールを送信するためのプロトコル SMTP (Simple Mail Transfer Protocol) を扱うライブラリです。
...smtp.start do
# send messages ...
end
デフォルトではサーバー証明書の検証を行い、正当な証明書でない場合は OpenSSL::SSL::SSLError 例外が発生します。
証明書の検証を行いたくない場合は +tls_verify: false+ を指定します。
require......証明書に引数で指定したホスト名が含まれていなければ OpenSSL::SSL::SSLError 例外が発生します。
証明書に含まれない名前(IPアドレス等)で接続したい場合は、+tls_hostname+ で証明書のホスト名を指定します。
require 'net/smtp'
#......証明書と異なるホスト名で接続する場合
Net::SMTP.start('192.168.1.1', 25, tls_hostname: 'smtp.example.com') do |smtp|
# send messages ...
end...
