Agile育成ブログ
未来を変える喜びを
未分類

【実録】Snowflakeの接続エラー「SSL_HOST_MISMATCH」の正体と解決策

Snowflakeを導入し、いざ接続!というタイミングで発生する謎の証明書エラー。 「URLは間違っていないはずなのに、なぜか繋がらない」「証明書のホスト名が一致しないと言われる」……。

その原因、実はSnowflakeではなく、あなたの会社の「社内Proxy(SSLインスペクション)」かもしれません。

1. エラーの核心:何が起きているのか?

ログに SSL_HOST_MISMATCHMismatchCert という文言が出ていたら、それは「通信の盗み聞き(検閲)」が失敗しているサインです。

ログの読み解き

  • 接続先(クライアントの意図): ap-northeast-1.snowflakecomputing.com(東京リージョン)
  • 返ってきた証明書: *.prod3.us-west-2.snowflakecomputing.com(米国西部リージョン)

「東京に繋いだのに、アメリカの証明書が返ってきた!怪しいからブロックだ!」と社内Proxy(Zscaler, Palo Alto, FortiProxy等)が判断して通信を遮断しています。

補足:なぜUSの証明書が出るのか? Snowflakeは、制御プレーン(管理機能)の一部を us-west-2 で集中管理しているため、この挙動は正常です。これを「おかしい」と止めてしまうProxy側の設定に問題があります。

2. 真の原因は「SSLインスペクション」

「URLをホワイトリスト(許可リスト)に入れたはずなのに」と思うかもしれません。しかし、問題は「許可」の先にある「検査」にあります。

SSLインスペクション(SSL復号)とは?

通常、HTTPS通信は暗号化されています。しかし、多くの企業向けセキュリティ製品は、ウイルス混入を防ぐために一度暗号を解いて中身をチェックしようとします。

  1. ProxyがSnowflakeのフリをして偽の証明書をクライアントに見せる。
  2. 暗号を解いて中身をスキャンする。
  3. 再度暗号化してSnowflakeに送る。

Snowflakeはこの「証明書の差し替え」を許しません。厳格な証明書検証を行っているため、中間者(Proxy)が入った時点で通信を拒絶します。

3. ホワイトリスト登録だけでは不十分な理由

「URLを許可リストに入れる」だけでは、Proxyは依然として「許可された通信の中身を検査しよう」とします。

  • ❌ 不十分な対応: URLをホワイトリストに追加する
  • ✅ 必須の対応: 指定したURLを SSLインスペクション除外(Bypass / No Inspect) 設定にする

つまり、「この通信に関しては、暗号を解かずにそのまま(パススルーで)通せ」という指示が必要なのです。

5. 自分でできる「100%原因確定」の切り分け

もしProxyが原因か確信が持てない場合は、以下のテストを試してください。

  1. 社内VPNをオフにする。
  2. スマホのテザリングや自宅回線など、社内ネットワークを経由しない環境で接続する。

これで繋がるなら、原因は100%社内ネットワーク(Proxy)側にあります。 自信を持ってIT部門に相談しましょう。