外部・内部ネットワークからのSSH接続(サーバー:Ubuntu⇔クライアント:Mac, WIndows)

  • 32
    いいね
  • 0
    コメント
この記事は最終更新日から1年以上が経過しています。

目的

Ubuntuのコンピュータに、外部ネットワーク、同一LAN内からのSSH接続をする。
個人メモ。鍵認証は含みません。

内容

・SSHサーバーの構築(Ubuntu)
・同一ネットワークからのクライアントの接続方法
・外部ネットワークからのクライアントの接続方法

環境

  • Ubuntu14.04 LTS (SSHサーバー側)
  • OSX EI Capitan (接続用)
  • Windows7(接続用)
  • ルーター ZXHN(NURO光回線)

SSHサーバーを構築する

UbuntuでのSSHサーバーのセットアップ

  • Terminalを起動
  • 以下のコマンドを入力
sudo apt-get install openssh-server 
  • 以下の情報をメモしておく

LAN内IPアドレス

hostname -I

or

/sbin/ifconfig/

ホスト名

hostname

MACアドレス

/sbin/ifconfig/

同一LAN内の別コンピュータからSSH接続する

Mac側からSSH接続をする

 1. Terminalを起動
 2. 以下のコマンドを入力

ssh <username>@<hostname or IP address>

Windows側からSSH接続をする

  1. SSHクライアントをインストール
    -PuTTy (今回使用)
    -TeraTerm

  2. クライアント側でホスト名 or IPアドレスを入力して、接続
    ホスト名、IPアドレス取得はMac側の<補足事項>と同じ

外部ネットワークからSSH接続する

内部LANとは異なり、外部ネットワークから接続する場合ホスト名・LAN内のIPアドレスでは接続出来ません。
このため、グローバルIPアドレスからLAN内コンピュータにアクセスするため、ルーターでの変換設定が必要になります。

1. グローバルIPアドレス・LAN内部のIPアドレスの取得

Ubuntu環境で実施

・グローバルIPアドレス

curl inet-ip.info

・LAN内のIPアドレス

hostname -I

2. LAN内のアドレスを固定化する

DHCPでアドレスが固定されていない場合に行う。ルーターの設定画面で行う必要があります。
ブラウザからhttp://192.168.1.1/ または http://192.168.0.1/ で接続可能な場合が多いです。

自分のルーター設定環境(ZXHN F600T)の場合は以下の項目から設定する。

ネットワーク>LAN>DHCP固定アドレス割当

SSHサーバーを入れたUbuntuのLAN内のIPアドレス、MACアドレスを入力する。

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

外部接続情報と、LAN内の環境を変換する。

  • アプリケーション>ポートフォワーディング

    • WAN接続
      • 複数ある場合は、”ステータス>>ネットワークインタフェース情報>>WAN接続情報”の接続情報を確認
    • 外部ホストIPアドレス:グローバルIPアドレス
    • (開始)外部ポート番号/(終了)外部ポート番号:22
    • 内部ホストのIPアドレス:LAN内IPアドレス
    • (開始)内部ポート番号/(終了)内部ポート番号:22
    • ”有効にする”をチェック
  • アプリケーション>アプリケーションリスト

    • "アプリケーションを追加するには、ここをクリックしてください。"をクリック
    • 任意のアプリケーション名を設定し、保存
    • (開始)WANポート /(終了)WANポート:22
    • (開始)マッピングポート/(終了)マッピングポート:22
  • アプリケーション>ポートフォワーディング(アプリケーションリスト)

    • 内部ホストのIPアドレス
    • アプリケーション:上記で設定したアプリケーション名

接続・確認テスト

・ポート開放の確認
外部LAN環境のパソコンから以下のコマンドを入力

nmap <グローバルIP>

22番ポートが表示されていたら、ポートが開放されている事がわかる。

・MAC側からのSSH接続確認

ssh <username>@<global ip address>

・Windows側からのSSH接続確認

Windows側から、PuTTyの場合グローバルIPアドレスを入力して接続する。