Remote Access
SSTPによるMikroTikリモート管理
MikroTikでSSTPを設定し、ポート443のHTTPS内にVPNトラフィックをトンネル化 — 厳格なファイアウォール、CGNAT、企業プロキシを通過します。
Summary SSTP (Secure Socket Tunneling Protocol) はTCPポート443上のTLSセッション内にPPPをラップし、ファイアウォール、プロキシ、CGNAT層から見ると通常のHTTPSトラフィックと区別がつかない状態にします。RouterOSは完全なSSTPサーバーとクライアントを搭載しています。このガイドでは、5コマンドの最小サーバー設定、リモートMikroTikでの対応するクライアント設定、トンネル経由でLANホストに到達するためのNAT、セキュリティチェックリストを扱います。
SSTPはMikroTikリモート管理でどのように動作するか?
SSTPはTCPポート443上のTLS/HTTPSセッション内でPPPをトンネル化するプロトコルです。ネットワークの観点からは、トラフィックは他のHTTPS接続と区別がつかず、まさにこれがSSTPが企業プロキシ、キャプティブポータル、ホテルWi-Fi、UDPベースのVPNをブロックするCGNAT層を通過する理由です。クライアントは443でサーバーにTLSを開き、サーバーが証明書を提示し、TLSトンネル内でPPPセッションが確立され、トラフィックはエンドツーエンドで暗号化されて流れます。
MikroTikフリートにとっては、顧客サイトが他のすべてのVPNをブロックする何かの背後にある場合、SSTPが正しい選択です。WireGuardガイドとVPSベースの管理ガイドも参照してください。
利点と制限
強み: 制限の厳しいファイアウォールとプロキシを通過する; ほぼ普遍的に開いているポート443を使用; モダンなRouterOSでの強力なTLS暗号化; Windowsでのネイティブサポート; 柔軟な認証 (ユーザー名/パスワード、証明書、RADIUS)。
制限: TLSオーバーヘッドのため軽量VPNより高いCPU負荷; スループットは通常WireGuardより低い; 信頼性のあるクライアント動作には有効なSSL証明書が必要。RouterOSを最新に保ち、古いTLSバージョンを無効化してください。
ステップ1: TLS証明書を作成またはインポート
本番環境ではLet’s Encryptまたは商用CAを使用してください。自己署名はラボテストでは動作しますがクライアント警告が発生します:
/certificate add name=srv-cert common-name=vpn.yourdomain.com key-usage=key-cert-sign,crl-sign/certificate sign srv-cert ca-cert=srv-cert/certificate set srv-cert trusted=yescommon-nameはクライアントが接続に使用するホスト名と一致する必要があります。
ステップ2: PPPプロファイルを作成
プロファイルは、トンネルが使用するサーバー側とクライアント側のIPを定義します:
/ppp profile add name=srv-profile local-address=10.10.10.1 remote-address=10.10.10.2ステップ3: PPPシークレットを追加
シークレットはユーザーごとの認証情報です。長いパスワードを使用するか、大規模なフリートには証明書認証に移行してください:
/ppp secret add name="usuario" password="senha123" profile=srv-profile service=sstpステップ4: SSTPサーバーを有効化
/interface sstp-server server set enabled=yes \ certificate=srv-cert authentication=mschap2 default-profile=srv-profileルーターはポート443をリッスンし、SSTP接続を受け入れるようになりました。
ステップ5: リモートMikroTikでSSTPクライアントを設定
リモートデバイスで:
/interface sstp-client add name=sstp-to-hq connect-to=vpn.yourdomain.com \ user="usuario" password="senha123" profile=default-encryption add-default-route=no
/interface sstp-client print期待されるステータス:
status: connecteduptime: 00:02:15encoding: AES256-CBC/SHA1encoding行はネゴシエートされた暗号を示します。モダンなRouterOSバージョンはより強力な暗号をサポートしています — リリースのデフォルトを確認してください。
トンネル経由で内部ホストに到達
リモートMikroTikの背後にあるデバイス (例: 192.168.88.100) に到達するには、dst-natを使用します:
/ip firewall nat add chain=dstnat protocol=tcp dst-port=8081 \ action=dst-nat to-addresses=192.168.88.100 to-ports=80SSTPトンネルのエンドポイントとマップされたポートを介してデバイスにアクセスします:
https://vpn.yourdomain.com:8081トラフィックはHTTPSスタイルのトンネルを通って内部ホストに到達します。
セキュリティのベストプラクティス
- Let’s Encryptまたは商用CAからの有効で信頼されたTLS証明書を使用します。
- フリートには共有パスワードよりも証明書またはRADIUS認証を優先します。
- 可能な限りファイアウォール層で許可されるソースIPを制限します。
- モダンなTLSスタックのためにRouterOSを最新に保ちます。
- 古いSSL/TLSバージョンと弱い暗号を無効化します。
- 接続ログを監視し、認証情報を定期的にローテーションします。
Winboxセキュリティガイドとdevice modeセキュリティガイドも参照してください。
代替案: VPS上のSSTPサーバー
安定したクラウド側集約が必要な場合、MikroTikの代わりにVPS上にSSTPハブをホストします。Windows ServerはSSTPをネイティブにサポートし、Linux上のSoftEther VPNはマルチプロトコルでSSTPをサポート — プロトコルブリッジとしてうまく機能します。
SSTPと他のVPNオプションの比較
| ソリューション | ポート | セキュリティ | 互換性 | パフォーマンス | 最適 |
|---|---|---|---|---|---|
| SSTP | TCP 443 | 高 (TLS) | MikroTik, Windows | 中 | 厳格なファイアウォールのあるネットワーク |
| OpenVPN | UDP 1194 | 高 (TLS) | 幅広い | 中 | レガシーおよび混在フリート |
| WireGuard | UDP 51820 | 非常に高い | モダンデバイス | 高 | モダンネットワーク、高パフォーマンス |
| Tailscale / ZeroTier | 動的 | 非常に高い | マルチプラットフォーム | 高 | 迅速なメッシュアクセス、チーム |
SSTPを選ぶべき場合
VPNが企業プロキシまたは厳格なNATを横断する必要がある場合、Windowsクライアント統合が重要な場合、またはポート443が確実に開いている唯一の発信ポートである場合にSSTPを選択します。生の速度がより重要な場合、WireGuardがより良いデフォルトです — WireGuardチュートリアルを参照してください。
次のステップ
SSTPは到達が困難なネットワークに対する正しい実用的な選択です — HTTPSを活用して他のVPNが失敗する場所でも接続を維持し、いくつかのRouterOSコマンドで信頼性のあるリモートアクセスを設定できます。
フリート規模で証明書とデバイスごとのトンネルの設定が忙しい作業のように感じる場合、MKControllerのNATCloudはデバイスごとのPKI管理なしで集中化されたリモートアクセスと監視を提供します。