よくある質問
一般
Q:はじめるには?
SSTP Connect を使用するには、まずプロファイルを作成する必要があります。
少なくとも次の情報を入力する必要があります:
- 接続の説明
- サーバアドレス
- ユーザ名とパスワード(または証明書)
- 仮想 HUB 名(SoftEther のみ)
SoftEther VPN を利用する場合、以下の記事もご参考にしてください。紹介していただいた Solomonレビュー さんに感謝いたします。
SSTP Connect 設定ファイルまたは SoftEther VPN 接続設定ファイルをお持ちの場合、以下の方法でインポートできます:
- 右上の + をタップして、「ファイルからインポート」か「URLからインポート」を選択、または
- 他のアプリから共有する。
Q:プロファイルを編集/削除するには?
右にスワイプして編集したり、左にスワイプして削除したりできます。
また、編集ボタンをタップして編集モードに入ってから、画面下の編集/削除ボタンも使えます。
Q:プロファイルの各アイテムを説明してください。
-
プロトコル
使用する VPN プロトコルを選んでください。現在、SSTP と SoftEther をサポートしています。
-
説明
必須
任意の説明を入力してください。システム VPN リストにも表示されます。
-
サーバ
必須
ホスト名または IP アドレスのいずれかを入力してください。
IP の変更にいちいち対応する必要がないため、ホスト名(
vpn.example.com
など)を使用するのが一般的です。ただし、DNS プロバイダーの信頼性が低い場合、または IPv4 と IPv6 のどちらかへの接続を強制したい場合(デュアルスタックサーバ)は、IP アドレスも使用できます。
-
ホスト名
TLS サーバ検証に使用されるサーバのホスト名。
サーバ欄にホスト名を入力した場合は、同じホスト名を再度入力する必要はありません。
サーバ欄に IP アドレスを入力した場合は、サーバ証明書と一致するホスト名をここに入力してください。そうしないと、TLS 検証が失敗します。
-
ポート
サーバのポート番号。デフォルトでは
443
となります。 -
TLSサーバ検証
TLS サーバ検証は、サーバの信頼性を検証し、MITM(Man-In-The-Middle)攻撃からあなたを保護します。常に有効にすることを強くお勧めします。
サーバがパブリック証明書を使用していない場合は、TLS サーバ検証に合格するために追加の手順が必要になる場合があります。詳細については、以下を参照してください。
サーバが検証に失敗した場合、エラーを無視して続行することも可能です。証明書を保存することで、(変更がない限り)次回からエラーが表示されません。
まず証明書の問題を修正し、最後の手段として上記の方法を使用することを強くお勧めします。
-
仮想HUB名
SoftEther のみ
仮想 HUB 名を入力してください。
デフォルトの HUB 名としては
default
やvpn
などがあります。VPN Gate サービスを使用している場合、HUB 名はvpngate
です。 -
コネクション数
SoftEther のみ
SoftEther VPN セッションの TCP 接続本数。
最大32接続をサポートしていますが、2本から試してみることをお勧めします。接続が増えると、より多くのメモリが消費されます。重い負荷では使用しないでください。
-
UDP高速化機能
SoftEther のみ
iOS 12 以降が必要
必要に応じて UDP 高速化機能を有効にしてください。
-
NATトラバーサル機能
SoftEther のみ
iOS 12 以降が必要
NAT-T 機能はグローバル IP アドレスを持っていないサーバやポートの開放ができない場合などに重要です。必要に応じて有効にしてください。
しかしすべての場合に機能するというわけではありません。詳細は SoftEther 公式説明をご参照ください。
-
認証方式
パスワードまたは証明書のいずれかを選んでください。
証明書による認証は、iOS 12 からサポートされています。
TEAP(EAPチェーン)を利用する場合は、プライマリ認証方式を選択してください。EAP設定でセカンダリ方式も指定できます。
-
ユーザ名
必須
VPN のアカウント名を入力してください。
証明書認証を使用する SSTP ユーザの場合、証明書 UPN (User Principal Name)の記載と一致する限り、ユーザ名を省略できます。
SoftEther サーバに SSTP プロトコルで接続する場合、デフォルトの仮想 HUB が使用している場合を除き、仮想 HUB 名を
user@HUB
の形でアカウント名に追加する必要があります。 -
パスワード
パスワードを入力してください。パスワードはキーチェーンに保存され、iOS によって保護されます。
入力しない場合は、接続するたびにパスワードが要求されます。
-
証明書
証明書認証に必要
まず証明書をインポートし、利用したいものを指定してください。証明書(秘密鍵を含む)はキーチェーンに保存され、iOS によって保護されます。
証明書をインポートする方法については、以下を参照してください。SoftEther プロトコルは現在、RSA 証明書のみをサポートしています。
-
EAP設定
SSTP のみ
高度なEAP設定。
-
PAP/CHAP認証
SSTP のみ
サーバがこれらの古い認証方法のみをサポートする場合に有効にしてください。
-
トンネルIPバージョン
VPN トンネル内の IP バージョンを選択してください。IPv6 トンネルの場合、現在サポートされているのはステートレス構成のみです(DHCPv6 はサポートされていません)。
-
静的IP/DNS設定
管理者からの指示がある場合、手動で IP と DNS を設定できます。
-
MTU
トンネルの MTU サイズ。デフォルトとしては、SSTP の場合は 1400、SoftEther の場合は 1500 です。
この数値は通常、クライアント側のネットワーク環境とほとんど関係がなく、変更する必要はありません。
-
デフォルトゲートウェイ
インターネットトラフィックが VPN に転送されるように、デフォルトルートを追加するかどうかを選択してください。
iOS の組み込み VPN では、このオプションを「すべての信号を送信」といいます。
デフォルトルートが設定されていない場合、VPN インターフェイスの DNS サーバが使用されない可能性があります。 そのため、リモート LAN にアクセスするには、IP アドレスを直接使用するか、内部 DNS ドメインを追加してから利用してください。
-
高度なルーティング設定
SSTP Connect はリモート DHCP サーバからプッシュされた静的ルートを使用します。問題が発生する場合は、機能を無効にすることができます。 あなたがサーバ管理者でもある場合は、すべての SSTP VPN サーバーがこの機能をサポートしているわけではないことに注意してください。 Windows Server RRAS および SoftEther VPN Server での動作は確認済みです。
VPN を経由させる宛先とそうでない宛先(除外ルート)を定義することにより、独自のルートを追加することもできます。各カテゴリに最大 1024 文字まで入力できます。
宛先については、次の形式で指定できます。
IP
単一のアドレス, e.g. 8.8.8.8IP/マスク長
一つのサブネット, e.g. 10.0.0.0/8IP/マスク長/ゲートウェイ
サブネットとゲートウェイ (next hop), e.g. 192.168.2.0/24/192.168.1.254
デフォルトルートを入力することはできますが、デフォルトゲートウェイ スイッチにも制御されることに注意してください。
ゲートウェイは SoftEther VPN のみに影響します。SSTP VPN の場合、ゲートウェイは無視され、サーバによって決定されます。
-
プロキシ
VPN トンネル内のプロキシ設定を指定できます。
-
オンデマンド規則
VPN オンデマンドルールを編集できます。詳細については、以下を参照してください。
-
TLS 1.0/1.1を無効にする
TLS 1.0/1.1 は古いバージョンです。アプリはサーバが受け入れる限り最新の TLS バージョン(最大1.3)を使用します。ただし、ここで古いバージョンを明示的に無効にすることもできます。
-
自動再接続
中断された場合に VPN を再接続するかどうかを選択できます。
-
リトライ回数
接続が失敗した場合に再試行する回数。
-
一時IPv6アドレス
(サーバで許可されている限り)接続するたびに IPv6 アドレスを変更します。
-
Wi-Fiへ自動切り替え
既存の VPN セッションがモバイルネットワーク上にあり、デバイスが Wi-Fi に接続している場合、デフォルトでは、セッションがそのままモバイル上にとどまります。このオプションを有効にすると、Wi-Fi へのアップグレードが行われます。
アップグレードは iOS によって制御されており、常に機能するとは限らないことに注意してください。たとえば、現在のモバイル接続が IPv6 を介して行われていて、Wi-Fi が IPv4 しか対応していない場合、アップグレードが行われない可能性があります。
また、NAT-T 接続 (SoftEther VPN) では、多くの場合、手動で Wi-Fi に切り替える必要があるようですが、原因は不明です。
-
スリープ時
デバイスがスリープ状態に入るときに VPN を切断するかどうかを選択してください。
-
オフ
スリープに入ると VPN を切断します。再接続はありません。
-
一時停止
スリープに入ると VPN を切断します。スリープが解除される時に再接続します。
-
維持
スリープに入っても VPN をそのままにします。
たとえ維持に設定すると、スリープとウェイクアップは iOS によって処理されるため、VPN がスリープ後必ず維持されるとは限りません。 特に、モバイルデータと Wi-Fi 両方がオンになっていると、Wi-Fi を介した接続がスリープ時に切断されてしまう可能性が高いです。モバイルデータをオフにしてみてください。
-
Q:システム VPN 設定から接続または切断できますか?
はい、アプリを開かなくても VPN を接続も切断もできます。
アプリがバックグラウンドにある場合でもエラーをお知らせできるように、通知をオンにしてください。(iOS 10以降が必要)
TLS サーバへの信頼性評価(TLS 検証)
Q:TLS 検証に合格するには、サーバ証明書はどういった要件を満たす必要がありますか?
iOS 13 以降では、サーバ証明書に対してより厳格なルールを適用しています。詳細については、以下のリンクを参照してください。
https://support.apple.com/ja-jp/HT210176
最も重要なのは次のとおりです。
- RSA キーサイズが 2048 ビット以上である
- ハッシュアルゴリズムが SHA-2 ファミリ(SHA256 など)である
- DNS 名がサブジェクト代替名(SAN)に記載される(Common Name は無視されます)
- 有効期間が 825 日以内である
- リーフ証明書は自己署名ではない (CA による署名が必要)
Q:SoftEther VPN Server によって生成された証明書を使用する場合はどうすればよいですか?
SoftEther VPN Server によって自動的に生成された証明書は、上記の要件を満たしていません。このガイドに従って再生成してください。
Q:サーバが自己署名証明書またはパブリック CA によって署名されていない証明書を使用する場合はどうすればよいですか?
セキュリティ上の理由から、パブリック認証局によって署名された証明書を使用することを強くお勧めします。ただし、それが不可能な場合は、管理者からルート CA 証明書を入手し、デバイスにインストールして信頼することができます。
それでも証明書が上記の iOS 要件を満たす必要があります。
Q:証明書をインストールして信頼するにはどうすればよいですか?
証明書を自分宛てにメールで送信するか、Web からダウンロードして、デバイスで開いてください。 プロファイルをインストールする準備ができたという通知が出てきます。
インストールするには:https://support.apple.com/ja-jp/HT209435
信頼するには:https://support.apple.com/ja-jp/HT204477
証明書による認証
Q:証明書をインポートするにはどうすればよいですか?
証明書認証を使用するには、まず証明書をインポートすることです。現在、アプリは PKCS #12 形式(.p12 または .pfx ファイル)に格納された証明書をサポートしています。
PKCS #12 は、Windows 上のデフォルトの形式であり、SoftEther VPN Server でもサポートされています。
管理者から P12 ファイルを取得し、デバイスに配置する必要があります。これについてはいくつかの方法で行うことができます。
- パソコンの Finder または iTunes からファイルを共有する(下記の手順を参照してください)
- ファイルを自分宛てにメールで送信し、添付ファイルを長押しして、「"ファイル"に保存」を選択する
- iCloud ドライブまたはファイルアプリからアクセスできるその他のクラウドドライブに保存する
デバイスに置いてから、「インポート」をタップしてフォルダーに移動します。パスワードと任意の説明を入力してください。
証明書(秘密鍵も含む)はキーチェーンに保存されます。セキュリティ上の理由から、インポート後にファイルを削除するか、安全な場所に保管してください。
一つの証明書は複数のプロファイルで使用できます。
Finder を使ってファイルを共有する手順
macOS Catalina 以降の場合
https://support.apple.com/ja-jp/HT210598
iTunes を使ってファイルを共有する手順
macOS Mojave 以前または Windows パソコンの場合
https://support.apple.com/ja-jp/HT201301
Q:証明書を削除するにはどうすればよいですか?
「証明書選択」で、スワイプして削除できます。
現在の iOS では、アプリを削除しても、証明書はそのままキーチェーンに残ります(引き続き iOS に保護されています)。アプリを再インストールすると、再び使用できます。
Q:新しい証明書をインポートしたいのですが、アプリがすでにキーチェーンにあると文句を言います。そんなことがあるものか?
iOS ポリシーによれば、同じ発行者からの同じシリアル番号を持つ証明書は、名前が異なっていても同じと見なされます。管理者に、新しいシリアル番号で証明書を生成するように依頼してください。
Q:システムに証明書がインストールされています。アプリで表示されないのはなぜですか?
サードパーティのアプリとして、組み込み VPN のようにシステムにインストールされている証明書にアクセスすることはできません。アプリであらためてインポートする必要があります。
VPN オンデマンド
Q:VPN オンデマンドとは何ですか?その使用方法は?
VPN オンデマンドは、事前に定めた規則に沿って VPN の接続や切断を行う高度な iOS 機能です。
まずは規則を作成する必要があります。iOS が順番に評価を行う、最初に該当したルールのみが適用されます。 評価プロセスは iOS によって完全に処理され、アプリにはその動作を変更する方法がありません。
重要: 現在有効になっている(選択されている)VPN プロファイルの規則のみが評価されます。
Q:オンデマンド規則を作成するにはどうすればよいですか?
規則には、1つのアクションといくつかの条件があります。すべての条件が満たされると、アクションが実行されるという仕組みです。
アクションには4つのタイプがあります。
- 接続
- 切断
- コネクション評価(以下を参照)
- 無視
次のタイプの条件を指定できます。
- 現在のインターフェイスタイプ(Wi-Fi、モバイル、または任意)
- Wi-Fi の SSID(複数可)
- DNS 検索ドメイン(複数可)
- DNS サーバ(複数可)
- プローブ URL(指定された HTTP または HTTPS URL に到達できる)
条件が指定されていない場合はすべての状況に該当します。したがって、それ以降の規則は無視されます。
Q:家の Wi-Fi に繋がると VPN を切断する、離れると接続するように設定したいのですが、規則をどう書けばよいですか?
以下の順で2つの規則を作成してください。
- 規則 1
アクション:切断
インターフェース:Wi-Fi
SSID:(家 Wi-Fi の SSID)
- 規則 2
アクション:接続
条件を入力する必要はありません
そして、「オンデマンド接続を有効化」をクリックし、プロファイルを保存してください。
注1: プロファイルが選択されていることを確認してください(チェックマークが表示されます)。プロファイルが選択されていない場合は機能しません。
注2: 順番が重要です。規則 2 を規則 1 の先に配置すると、規則 2 がどんな状況でも該当するので、規則 1 は永遠に実行されません。 「編集」をタップして順番を変更することができます。
Q:アクションタイプ「コネクション評価」とは何ですか?
コネクション評価は、接続ごとに宛先を評価してアクションを実行する特別なアクションです。
宛先に到達できない場合は、これらのアクションのいずれかを実行できます。
- 必要に応じて接続
- 接続しない(無視)
たとえば、内部Webサイトが要求されている場合(現在のネットワークでは到達できない)、自動的にVPNに接続するよう、次のように規則を設定します。
アクション:必要に応じて接続
評価されるドメイン:companyinternal.com(すべての *.companyinternal.com が該当します)
Q:どのような種類のショートカットがサポートされていますか?
バージョン 3.8 の時点で、ショートカットアプリで次のアクションをサポートしています。
-
VPN をオン/オフにする
使用する VPN プロファイルを指定してください。アクションが「オフにする」の場合、指定がないならアクティブな VPN 接続をオフにします。
-
VPN の状態を切り替える
使用する VPN プロファイルを指定してください。
-
VPN の状態を確認する
使用する VPN プロファイルを指定してください。指定がない場合、アクティブな接続 (存在する場合) が報告されます。
-
VPN ログを取得する
アクティブな接続のログ (テキストファイル) を返します。アクティブな接続がない場合は何もしません。
SSTP に関する質問
Q:Windows SSTP クライアントと同じ機能を提供していますか?
ほとんどの場合、公式クライアントと同じ機能を提供します。Windows 11 でサポートされているパスワード及び証明書ペースの認証方式にすべて対応しています。
Windows デバイスにインストールされている証明書で認証する場合は、秘密キーを含めてエクスポートできることを確認してください。
特殊なケースかと思われる場合は、ご相談ください。
SoftEther に関する質問
Q:Windows で SoftEther クライアントを使用して接続できる場合、このアプリも同様に使えますか?
ほとんどの場合、公式クライアントと同じ機能を提供します。直接(TCP)接続も NAT-T 経由での接続も使用できます。
ただし、ICMP または DNS 経由の接続はサポートされていません。
特殊なケースかと思われる場合は、ご相談ください。
Q:UDP 高速化機能とは何ですか?
SoftEther は通常直接 TCP を介して接続し、データパケットも TCP で転送されます。UDP 高速化により、UDP でデータパケットの送受信も可能になります。 高速化とはいうものの、ネットワークの状態によっては、通信速度が TCP より優れている場合とそうでない場合があります。
Q:UDP と TCP のどちらを使用しているかを知るにはどうすればいいですか? UDP が時々機能しないのはなぜですか?
UDP を使用するとき、ステータスバーに「UDP」というサインが表示されます。接続ログからも判断できます。
UDP 高速化には 2つの動作モードがあります。
- ダイレクトモード:TCP と同様に、サーバ上の特定のポートを開く必要があります。これが最も安定的なモードです。
- NAT トラバーサルモード:ポートは開いていませんが、クライアントとサーバの外部 IP を外部サーバーから取得します。 そして UDP 接続を確立するには、両端がパブリックアドレス上にあるか、特定のタイプの NAT ネットワーク(「コーン NAT」と呼ばれる)の配下にある必要があります。 たとえば、多くの IPv4 モバイルネットワークでは、NAT トラバーサルに厳しい対称 NAT (Symmetric NAT)を使用しているので、UDP 高速化はほとんど機能しません。
IPv6 ネットワークでは NAT を使用していないため、UDP 高速化も自然に利用可能です。
Q:ネットワークを切り替えた後、UDP 高速化が機能していないようですが、それはなぜですか?
現在の SoftEther プロトコルによれば、既存のセッションの新しいエンドポイントを再ネゴシエートする方法がないため、UDP 高速化が NAT トラバーサルモードで動作する場合、それは仕方ないです。 ネットワークの切り替え後、サーバがクライアントの新しいアドレスを知らない限り、再接続はできないということです。
元のネットワークに戻ると(IP アドレスが変更されていない場合)、UDP が再び機能する可能性が高いです。
この問題を解決するには、2つのオプションがあります:
- TCP の場合と同じように、サーバ側の関連する UDP ポートを開きます(ダイレクトモード)。または
- 新しいネットワークで手動で VPN を再接続します。
Q:VPN Azure サービスに接続できますか?
はい、できます。サーバアドレスとしてホスト名(xx.vpnazure.net)を使用してください。 IP アドレスを入力すると動作しません。
また、VPN Azure にも2つのモードがあります。
- リレーモード:純粋な TCP モードで、ほとんどの場合に機能するはずですが、リレーのため速度が低下する可能性があります。
- ダイレクトモード:UDP 高速化を使用して、データパケットを実サーバーに直接転送します。
ダイレクトモードが機能するために iOS バージョン、サーババージョン、および NAT タイプは、上記の要件を満たす必要があります。
Q:VPN Gate サービスに接続できますか?
はい。 VPN Gate サーバーに接続するには、以下のように使用してください。
- サーバ:
xx.opengw.net
(または IP アドレス) - ホスト名:
xx.opengw.net
(サーバとして IP を入力している場合のみ) - ポート:TCP ポート番号(UDP は非対応)
- 仮想HUB名:
vpngate
- ユーザ名:
vpn
- パスワード:
vpn
ご注意:VPN Gate サーバーは、世界中のさまざまなボランティアによって提供されています。当社は彼らやプロジェクトとは何の関係もありません。 また、いかなる形式の接続やセキュリティも保証しません。
ご自身の責任で使用してください。
インポートとエクスポート
Q:サポートされているファイル形式は何ですか?
SSTP Connect 設定ファイル、または SoftEther VPN 接続設定ファイルからインポートできます。
どちらも .vpn
で終わりますが、互いに互換性がありません。
SSTP Connect 設定ファイルには、複数の VPN プロファイルを格納できます。
エクスポート形式は常に SSTP Connect です。SoftEther VPN 形式でのエクスポートはサポートしていません。
Q:SSTP Connect 設定ファイルを編集できますか?
SSTP Connect 設定ファイルは JSON 形式を使用します。 手動で編集することはお勧めしませんが、必要に応じて、自己責任で JSON エディターを使用して編集できます。
Q:パスワードを追加しない場合、機密情報はどのように設定ファイルに保存されますか?
パスワードで保護されていない場合、パスワードと秘密鍵は base64 エンコーディングで保存されます。 base64 デコーダーを使用すると、誰でも平文を明らかにできます。
Q:パスワードを追加すると、機密情報はどのように暗号化されますか?
パスワードと秘密鍵は、AEAD_AES_256_CBC_HMAC_SHA_384 を使用して暗号化されます。 draft-mcgrew-aead-aes-cbc-hmac-sha2-05 で説明されているように。
base64 でエンコードされた AEAD 暗号文 (「C」、2.1 で定義) は、それぞれのフィールドに保存されます。
AEAD_AES_256_CBC_HMAC_SHA_384 が機能するには、鍵 (「K」) と関連データ (「A」) が必要です。
関連データは、パスワードに対するユーザ名です。 秘密鍵にユーザ名を使用しない場合は、代わりに証明書ラベルが使用されます。
Q:暗号化鍵 (「K」) はどのように導出されますか?
鍵の導出には、PBKDF2 アルゴリズムを使用します。引数は、以下の通りです。
- パスワード:ユーザ入力
- ソルト:ランダムに生成された 128 ビット
- PRF:HMAC-SHA1
- ストレッチング:10000 回
AEAD_AES_256_CBC_HMAC_SHA_384 で必要とされるように、導出鍵の長さは 56 オクテットです。
エクスポート ファイルごとに異なる鍵が生成されます。 ファイルにソルトが含まれています。
上記の情報を使用して、暗号化の結果を個別に検証できます。
Q:暗号化は安全ですか?
場合によります。 パスワードが強力でない限り、暗号化は決して安全ではありません。
その他
Q:時に Wi-Fi アイコンが VPN アイコンとともに数秒間消えることがあります。それはなぜですか。
これは VPN が再接続していることを示しています。Wi-Fi 接続を失っているのではありません。
Q:再接続をする時にトラフィックをブロックしたいですが(OpenVPN の「シームレストンネル」機能)、 どうすればいいですか?
この機能はすでに有効になっており、無効にする方法は提供していません。
ただし、iOS によって制御されるため、一部のシステムトラフィックは VPN をまったく通過しないことに注意してください。(例えば、プッシュ通知と一部のDNSリクエスト)
Q:サーバのセットアップを手伝ってもらえますか?
サーバ側は我々の範囲外ですが、一般的なアドバイスを提供することはできます。お気軽にご連絡ください。 もし特別なサポートが必要なら、状況を評価した上で(支援できる場合に限り)見積もりを提供する場合があります。
Q:さらに質問がある場合はどうしたらいいですか?
support@domosekai.com にメールを送ってください。 接続に問題がある場合は、ログレベルを「デバッグ」に設定し、接続ログをメールと一緒に送信してください。