外出先のAndroidスマホから、会社のLinux PCへSSHでアクセスする方法
March 02, 2024
会社への通勤時や旅行中など、外出先からスマホで会社にあるLinux PCにアクセスしたいと思うことはありませんか? その場合、会社のファイヤーウォールなどのネットワーク環境の設定を変えてインターネットからアクセスできるようにする方法がありますが、 そもそもそれができないなど課題があると思います。 そこで、P2Pによる簡単に且つ安全に行う方法をご紹介したいと思います。
アクセス環境の概要
アクセス環境は、AndroidスマートフォンとLinux PCを使用します。 そして、AndroidとLinuxの間を繋ぐネットワーク環境として「トンネルアプリ」を使用します。 (当方がアプリ開発を行い無料で提供しているP2Pアプリです)
トンネルアプリは、2つの端末にインストールして使用し、一方のアプリでクライアントアプリからのアクセスを代理ポートで受け付け、一方のアプリでサーバーアプリへのアクセスを行います。 端末アプリ間の通信データはEnd-to-Endで暗号化しますので、その内容を第三者に見られることなく安全にアクセスすることができるようになっています。
Linux PC側のセットアップ
Linux PCでは、SSH環境を有効にした上で「トンネルアプリ(Linux版)」をインスールして起動します。 すると、コンソール上で以下のメッセージが表示されます。なお、これでLinux PC側の設定は完了で、会社のネットワーク環境の設定変更は不要です。簡単ですね! この例では、トンネルアプリの端末の番号が「000001」となっています。
Androidスマホ側のセットアップ
Android側スマホにも「トンネルアプリ(Android版)」をインストールして起動します。 この例では、トンネルアプリの端末の番号が「000002」となっています。
先ほどインストールしたLinux PC側のトンネルアプリで、この端末をサーバー側端末として登録するためのURLを以下のコマンドで取得し、Androidスマホ側のブラウザでアクセスします。
すると、Linux PC側のトンネルアプリがサーバー側端末として登録されます。
続いて、トンネル通信設定を登録します。 「クライアント側端末」では、「端末内のアプリのみ」を選択して「127.0.0.1(ローカルホスト)」からのアクセスに制限し、 SSHクライアントからアクセスを受け付けるための代理ポートとして「20022」を設定します。 「サーバー側端末」には、Linux PC側のトンネルアプリ「000001」を選択し、SSH環境へアクセスするIPアドレスとポートとして「127.0.0.1」と「22」を設定して保存します。
これで、トンネルアプリの設定は完了です。簡単ですね!
SSHクライアントのセットアップ
SSHクライアントは、「JuiceSSH」をインストールします。
メニューから「Quick Connect」を選択し、「hostname」には同じ端末内のトンネルアプリの代理ポートへアクセスするため「127.0.0.1:20022」を設定してOKをクリックします。 「Username」には、Linux PCにSSHでログインする時のアカウントとパスワードを設定してOKをクリックします。
SSHのアクセスが開始されログインができました!
最後までお読みいただきありがとうございました!ご意見などございましたらメッセージをお寄せいただけると幸いです。
P2P · Android · Linux · SSH


