インターネット内からイントラネットへ接続する際にポート番号を指定してルーター等へアクセスすることで、イントラネットへの個別接続を可能にする方法がある。これはポートフォーワーディングと呼ばれており、グローバルIPアドレスを持たない個別のパソコンをインターネットから接続する数少ない方法を解説します。
本記事の読者層は以下の方を想定しています。
- ポートフォーワーディングについて知りたい方
ポートフォーワーディングの概要
「ポートフォワーディング」とは、インターネットから特定のポート番号宛てに届いたパケットを、あらかじめ設定しておいたLAN側の機器に転送する機能です。利用にはあらかじめ、ルーター等に設定しておく必要があります。
セキュアなポートフォーワーディング方法
SSHポートフォワーディングを使ったサーバー間の接続も下記の方法で利用できます。
サーバーを中継して、クライアントのポートをリモートホストのリモートポートに転送します。
ssh -L {ポート番号}:{リモートホスト}:{リモートポート番号} {サーバー}
社内から、自宅パソコンへ繋げたい場合
社内のWindowsパソコンから、自宅のWindowsパソコンへ繋げたい場合を考えてみます。
(1) 自宅サーバーに外部からアクセスできるSSHポートが開いている場合
自宅のパソコンのWindowsにはリモートデスクトッププロトコル(RDP)用のポート3389が開いているとします。一般にWindows のProfessional版であれば、このポート番号3389は開いています。
また、自宅のWindowsパソコンのIPアドレスが「192.168.12.100」とします。
社内から、SSHでセキュアなSSHポート25番を使用して自宅サーバー「hogehoge.com」へ接続します。そして、自身のパソコンのWindowsのRDPのポート番号も3389であれば、ポート番号を変更せずそのまま3389ポートとしてIPアドレス「192.168.12.100」のWindowsパソコンにつなげばいいわけです。
この場合のポートフォーワーディングは以下のようになります。
ssh -L 3389:192.168.12.10:3389 HogeHoge.com
(2) 自宅ルーターでポートフォーワーディングの設定がされている場合
外部からポート番号3389がアクセスされた際、ポート番号3389でIP「192.168.12.100」に転送してある設定の場合は、SSHでなくとも、直接RDP画面上で自宅のIPアドレスを叩けばそのまま繋がります。
まとめ
ルーター経由で外部からポート番号により振り分けて、サーバーへアクセスを振り分けることをポートフォーワーディングと呼びます。
SSHポートを利用してセキュアにポートを振り分けることができます。
次回の記事をご期待下さい。どうぞよろしくお願いいたします。
コメント