LoginSignup
0
1

More than 1 year has passed since last update.

SSHトンネリングコンフィグの書き方

Last updated at Posted at 2021-10-26

SSHトンネリングとは

SSHトンネリングは、SSHポートフォワーディングとも言われる接続方法です。
例えば、とあるLAN内で公開されているWebサーバに対して、外部NWから接続したい時に、外部公開しているSSHサーバが存在している場合、SSHサーバとのSSH接続を経由して、目的のWebサーバに接続するといった接続方法のことです。

詳しくは、以下のURLを参照のこと。

SSHポートフォワーディング(トンネリング)とは - 小粋空間
https://www.koikikukan.com/archives/2016/09/15-000300.php

基本的に備忘録なので、分かりにくかったらゴメンナサイ。

多段SSH

コマンド

local$ ssh user@step_host -i <秘密鍵> -p <ポート>

step_host$ ssh user@target_host -i <秘密鍵>

Config

Host STEP_HOST
   HostName step_host
   Port <ポート>
   IdentityFile <秘密鍵>
   User user

Host TARGET_HOST
   HostName target_host
   IdentityFile <秘密鍵>
   User user
   ProxyCommand ssh -CW %h:%p STEP_HOST

これで、ssh TARGET_HOSTのみで接続できる

DynamicForward

LAN内のWebサーバにSSH経由で接続する際に用いている

コマンド

$ ssh user@step_host -D <ローカルポート> -i <秘密鍵>

Config

Host STEP_HOST
   HostName step_host
   IdentityFile <秘密鍵>
   User user
   DynamicForward <ローカルポート>

上記のコマンド or Config経由でLAN内のWebを閲覧するにはSOCKS Proxyを使います。
私は、Chromeユーザなので、Chromeを使った際の接続方法

ExtensionのProxy SwitchySharpを導入
https://chrome.google.com/webstore/detail/proxy-switchysharp/dpplabbmogkhghncfbfdeeokoefdjegm?hl=ja-JP

設定画面で、Profile Name, SCOKS Host, Portを入力し、SOCKS v5ラジオボタンを選択してSaveする。

sample.png

アドレスバーの横にExtensionの地球儀の様なマークが出るので、そこで設定したProfileを選択して、LAN内のWebサービスのURLやIPアドレスなどをChromeのアドレスバーに入力すれば接続できるはず。

LocalForward

LAN内で運用している特定サービス(私の場合Elasticsearch)に接続する際に用いている

コマンド

$ ssh user@step_host -i <秘密鍵> -L <ローカルポート>:<target_host>:<ターゲットポート>

Config

Host STEP_HOST
   HostName step_host
   IdentityFile <秘密鍵>
   User user
   LocalForward <ローカルポート> <target_host>:<ターゲットポート>

LAN内に置いてあるElasticsearchからデータを取る時に、http://localhost:<ローカルポート>みたいに使っている。

0
1
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1