このページではLinuxサーバーを外出先のパソコンからリモート操作するための、SSHプロトコルのポートフォワーディングについて解説します。
お便利サーバー.com+相互リンクサイト内をキーワードで検索
NTP SSH DHCPサーバーの構築

NTPサーバーについて

ntpdの設定(WBEL3,CentOS3)

ntpdの設定(WBEL4,CentOS4)

ntpdの設定(CentOS5)

ntpdのコントロール

ntpdの動作チェック


SSHサーバーについて

sshdの設定(WBEL3,CentOS3)

sshdの設定(WBEL4,CentOS4)

sshdの設定(CentOS5)

sshdのコントロール

sshdの動作チェック

ポートフォワーディングの設定


DHCPサーバーについて

DHCPのインストールと設定

DHCPのコントロール

DHCPの動作チェック


WAN空間からSSH接続を行うための設定

構築中のLinuxサーバー を 公開サーバー として運用する場合、 SSH 接続の最終的な動作確認はやはり WAN 空間から行う必要があります。

例えば外出先から自宅で 構築中のLinuxサーバー で動作している Webサーバー に不具合を見つけても、その場でリモート接続できないとしたら自宅に戻ってからではないと修正はできないことになります。

そして自宅で修正を行った後、もう一度外出先から動作を確認して、もしダメならもう一度自宅に戻って...。考えただけでうっとうしい話です。

自宅に複数のインターネット通信環境がある場合には簡単なことですが、なかなかそういう恵まれた(というより贅沢な)環境にあるユーザーは少ないはずです。

このパートでは、WAN空間からのSSH接続を可能にする、 ルーター の ポートフォワーディング の設定方法について解説します。

ルーターの設定例(ヤマハ NVR500)

ルーター の ポートフォワーディング 設定の意味については、 ポートフォワーディングの説明 で詳しく説明していますので、実際に設定を行う前にご一読ください。

ルーターの設定は、ルーターの機種やメーカーによって用語も方法も様々ですので、ここで全てのルーターについて普遍的な設定方法を解説することはできません。

ここでは、 ヤマハ株式会社 のブロードバンドVoIPルーター NVR500 での、 SSH のポートフォワーディングの設定例を示しますので、これを参考にお手持ちのルーターのマニュアルと照らし合わせながら設定を行ってください。

まず、 LAN に接続している任意の ホスト機 の Webブラウザ を開き、アドレスバーにルーターの IPアドレス

http://192.168.100.1/

を入力してルーターの設定画面を開いてください。認証して ログイン したら、 詳細設定と情報 ボタンをクリックします。

YAMAHA NVR500
お便利サーバー.com宅
のルーターです

↓

NVR500のインプレッションはこちら ヤマハ NVR500 から。

この例ではルーターの IPアドレス で接続していますが、既に DNSサーバーの設定へ でLAN用の hostsファイル の設定や BIND の構築で、ルーターに FQDN を割り当てている場合 サブネット内の通信機器にFQDNを設定する は、 "http://192.168.100.1/" ではなくルーターのFQDNを用いた URL "http://???.obenri.com/ でも接続することができます。

すると以下のように 詳細設定と情報 のメニューが開きます。

ここで、メニューから "基本接続の詳細な設定" → "設定されているプロバイダの一覧" から使用しているプロバイダの "登録の修正" の順にクリックし、 "プロバイダの修正" 画面が開いたらウインドウを一番下までスクロールします。

基本接続の詳細な設定をクリック

↓

登録の修正をクリック

↓

お使いの OS 上では既に 公開のためのルーター設定(WBEL3) 公開のためのルーター設定(CentOS3) 公開のためのルーター設定(WBEL4) 公開のためのルーター設定(CentOS4) 公開のためのルーター設定(CentOS5) のステップで HTTP のポートフォワーディングの設定が行われているはずですので、追加設定を行うことになります。

ここで、 静的IPマスカレード関連(フィルタの自動定義:80番〜94番) の右側の 追加 ボタンをクリックすると、次のような "静的IPマスカレードの登録" 画面が開きますので、以下のように設定値を入力します。

SSH のポートフォワーディングの設定を行いますので プロトコル は TCP となります。

従って (1) では "TCP" を選択します。

(2) については、sshdの設定によって入力するパラメータが異なります。

"/etc/ssh/sshd_config" の "Port" キーワード /etc/ssh/sshd_configのPortキーワードの具体的な設定(WBEL3,CentOS3) /etc/ssh/sshd_configのPortキーワードの具体的な設定(WBEL4,CentOS4) /etc/ssh/sshd_configのPortキーワードの具体的な設定(CentOS5) をデフォルトから変更せず、

Port 22
ヤマハNVR500のポート番号変換では、 "[WAN側ポート番号]=[LAN側ポート番号]" という書式が使われます。

のままで、NVR500の ポート番号 変換機能を使って 56765→22 でSSH接続するには、 "56765=22" を入力します。

"/etc/ssh/sshd_config" の "Port" キーワードを

#Port 22
Port 56765

に変更してsshd自身が受け取るポート番号を変更している場合には、 "56765" を入力します。

(3) は、ポートフォワーディングの着信先 ホスト のIPアドレスですので、 構築中のLinuxサーバー のIPアドレスである "192.168.100.11" を設定します。

入力が終わったら 設定の確定 ボタンをクリックします。すると、以下のように設定完了のダイアログが表示されますので 戻る ボタンをクリックします。

すると、赤の下線で示すように、静的IPマスカレード(ポートフォワーディング)の設定が追加されたことが確認できます。

引き続き他のポートフォワーディングを設定したいときは 追加 ボタンを、設定を終了する場合は トップへ戻る ボタンをクリックします。

なお、 ヤマハ NVR500 の、お便利サーバー.com宅での購入、利用方法の詳細、インプレッションについてはこちら ヤマハ NVR500インプレッション で紹介していますので、興味のある方はご一読ください。

これで SSH のポートフォワーディングが有効になりましたので、 構築中のLinuxサーバー はWAN空間から sshd への接続を受け付けられるようになりました。

ただし、大抵のルーターはポートフォワーディングの設定を変更すると本体ごとリセットが行われますので、一度 ISP との接続が切断されます。

するとISPから割り当てられるグローバルIPアドレスも変更になりますから、 ダイナミックDNS を利用している場合、WAN空間からSSH接続をテストするときは30分ほど待ってから行ってください。

その理由がよく解らない方は、以下のパートをご覧ください。

このページの先頭へ↑

ポートフォワーディングの動作確認

ルーター の ポートフォワーディング の設定がきちんと行われているかどうかを確認するには、もちろん WAN 空間からのアクセスを実行してみるより他はありません。

上のパートで、WAN空間からの ポート番号 56765番へのアクセスを、 プライベートIPアドレス "192.168.100.11" へ流すように設定しているはずですので、実際にWAN空間から SSHクライアント での接続を確認してみましょう。

その前にまず、 LAN 内の任意の ホスト機 から、SSHクライアントで 構築中のLinuxサーバー へ接続を行ってみて、 sshd が正常に動作していることを確認してください sshdの接続確認について 。

LAN内からの動作が確認できたら、今度は外出先や学校、職場などから同じようにSSHクライアントで 構築中のLinuxサーバー へ接続を行ってみてください。

自宅で複数の ISP とインターネット契約を行っていて 構築中のLinuxサーバー の入っているサブネットとは別のサブネットからインターネット接続が可能な場合には、そこからアクセスしてみても構いません。

WAN空間からのアクセスについては、"/etc/ssh/sshd_config"の"Port"キーワードの設定 Portキーワードの設定について(WBEL3,CentOS3) Portキーワードの設定について(WBEL4,CentOS4) Portキーワードの設定について(CentOS5) は関係ありません。 ルーター の ポートフォワーディング で設定した WAN側の ポート番号 を指定して接続します。

また、WAN空間からのアクセスですので、当然 プライベートIPアドレス は使用できません IPマスカレードについて 。 ダイナミックDNS ダイナミックDNSの登録について(WBEL3) ダイナミックDNSの登録について(CentOS3) ダイナミックDNSの登録について(WBEL4) ダイナミックDNSの登録について(CentOS4) ダイナミックDNSの登録について(CentOS5) で登録している任意の FQDN で接続する必要があります。

TeraTermProでWAN空間からSSH接続する例
TeraTermProでWAN空間からSSH接続する例

これでLAN内からのSSH接続と同じように 構築中のLinuxサーバー に ログイン できればポートフォワーディング設定がうまくいっていることになります。

ただし、ダイナミックDNSを利用している場合には、設定に誤りがなくてもうまくSSH接続ができないことがあります。

通常のインターネット接続契約はWAN側の IPアドレス 、つまり グローバルIPアドレス は固定ではありません IPアドレスが固定ではない通信契約の説明 。グローバルIPアドレスはルーターを再起動すれば間違いなく変更になりますし、ずっと接続していても数日おきくらいに ISP 側から強制的に変更されるのが普通です。

ダイナミックDNSは、そのグローバルIPアドレスの変化をキャッチしてから 名前解決 情報の変更を行いますので、その情報がWAN空間の DNSサーバー に行き渡るまでには少し時間が必要になります。

つまり、グローバルIPアドレスが変化してから、名前解決情報の変更がWAN空間に反映されるまでの10〜30分間程度は、FQDNとグローバルIPアドレスが正しく対応していないため、FQDNによるすべてのアクセスがうまくいかないことになります。

ダイナミックDNSを利用している場合、WAN空間からの自宅への接続に関してはそういう避けられない事情がありますから、接続がうまくいかなくても慌てずに30分ほど待ちましょう。

LAN内から正常にSSH接続ができている場合は、 sshd の設定には誤りはありません。誤りのない部分に余計な手を加えて、事態を複雑にしてしまわないようにしましょう。

それでも接続がうまいかない場合は、ルーターの設定に間違いがあると考えられますので、上のパートを参考にもう一度設定を確認してください。

ルーターの設定方法は、メーカーや機種によって様々ですから ルーターの設定の機種依存性について 、ポートフォワーディングの意味をよく理解したうえでルーターのマニュアルを良くお読みになり、設定を行ってください。

このサイトは既に更新を終了していますが、今のところ店じまいの予定はありません。 リンクフリー ですので、趣味や勉強のためでしたら、引用、転用、コピー、朗読、その他OKです。このサイトへのリンクについては こちら をご覧ください。
Powered by Apache
”Linux”は、Linus Torvalds 氏の各国における登録商標です。”Red Hat”及びRed Hatのロゴおよび Red Hat をベースとしたすべての商標とロゴは、各国におけるRed Hat, Inc. 社の商標または登録商標です。その他のプログラム名、システム名、製品名などは各メーカー、ベンダの各国における登録商標又は商標です。
www.centos.org - The Community ENTerprise Operating System