ブログ

Armadillo-X1, Armadillo-IoT G3/G3L: 直接アクセスできないArmadilloにSSHで接続する方法

at_ito
2017年11月6日 4時53分

ArmadilloをグローバルIPアドレスが割り振られない3G/LTE通信で通信を行う構成で、外部からSSHを使用してメンテナンス等を行いたい場合があるかと思います。

ここでは「Reverse SSH Tunnneling」の機能を使って、直接アクセスできないArmadilloに対してSSH接続を行う方法を紹介します。

1. 環境

ここでは以下の環境で試します。

  • 使用機器
    • Armadillo: Armadillo-IoT G3L
    • 中継サーバー: ATDE6
    • クライアント: PC
  • 前提条件
    • クライアントからArmadilloに対して直接SSH接続が不可能
    • 中継サーバーからArmadilloに対して直接SSH接続が不可能
    • Armadilloから中継サーバーへは直接SSH接続が可能
    • クライアントから中継サーバーへは直接SSH接続が可能

上記以外の環境では、環境によって読み替えてください。

2. SSH接続の準備

ATDE6で以下のコマンドを実行しSSHサーバーをインストールしてください。

[atde ~]$ sudo apt-get install openssh-server

上記と同様にArmadilloでも以下のコマンドを実行しSSHサーバーをインストールしてください。

[armadillo ~]$ sudo apt-get install openssh-server

Armadilloから以下のコマンドを実行して、ATDE6に接続しておいてください。

[armadillo ~]# ssh -R 9999:localhost:22 <ATDE6のIPアドレス>

3. クライアントからArmadilloへのSSH接続

以下のコマンドを実行して、クライアントからATDE6に一旦接続します。

[pc ~]$ ssh atmark@<ATDE6のIPアドレス>

ATDE6にSSH接続できたら、以下のコマンドを実行してArmadilloへのSSH接続を実行します。

[atde ~]$ ssh localhost -p 9999