製品コラム
セイテクエンジニアのブログ 製品コラム SSHトンネル経由でLinuxサーバーからリモート採取する方法-SSD-assistance FAQ(仮)
2026年10月21日配信
執筆者:セイ・テクノロジーズ エバンジェリスト
「SSD-assistance」を使用する上での、よくあるお問い合わせ問い合わせについて、不定期で詳しく解説します。製品に関するよくある問い合わせについては、こちらでご確認ください。製品のサポート技術情報については、こちらで検索することができます。
Linuxサーバーから情報を収集するリモート情報採取ツールはWindowsでしか動作しませんが、収集対象のLinuxサーバーの一部は、Windows端末が直接通信できないネットワークに設置されています。Windows端末をそのネットワークに持ち込んで対応する以外に方法はないでしょうか。
SSD-assistanceのリモート情報採取ツールの最新版(2026年10月16日リリース以降)は、SSHローカルポートフォワーディング(SSHトンネル)の使用がサポートされています。Windows端末と収集対象のLinuxサーバーの両方のネットワークと通信可能なSSHサーバーが利用可能であれば、そのSSHサーバーを踏み台(中継)サーバーとしたSSHトンネルを作成することで対応可能です。
それには、SSHローカルポートフォワーディングの機能を使ってWindows端末のローカルポート(例、10022/TCP)と収集対象のLinuxサーバーのSSHポート(22/TCP)間にSSHトンネルを作成し、そのトンネルを介して(SSHトンネルのローカルポートを指定して)リモート情報採取ツールを実行します。採取対象のLinuxサーバーは、SSD-assistanceが対応しているLinuxディストリビューション/バージョンである必要がありますが、踏み台(中継)サーバー*1には任意のLinuxまたはWindows ServerのOpenSSH Server*2 を使用できます。
*1 踏み台(中継)サーバーのsshdで、TCP転送が禁止されていない必要があります。AllowTcpForwarding、DisableForwarding、PermitOpenが関連する設定です。→ sshd_config(5)|OpenBSD manual pages(man.openbsd.org)
*2 メモ. 安全なリモート管理用にOpenSSHサーバーを構成する方法|Windows Server 2025大特集(おまけ)
具体的な例で説明します(図1)。SSD-assistanceのリモート情報採取ツールを実行するWindows端末は、192.168.0.0/24のネットワークに接続されています。一方、収集対象のLinuxサーバーは10.33.12.0/24のネットワークに接続されていて、そのIPアドレスは10.33.12.12です。SSH接続用(情報採取用)のユーザーアカウントとしてはlinuxuserを使用できます。この2つのネットワークはルーティングされておらず、Windows端末は直接収集サーバーのLinuxサーバーにSSH接続することはできません(リモート情報採取ツールはSSHを使用します)。
踏み台(中継)サーバーとして、両方のネットワークに接続されているSSHサーバーを使用します。このサーバーのWindows側から接続可能なIPアドレスは192.168.0.118です。SSH接続用のユーザーアカウントとしてはbastionuserを使用できます。なお、IPアドレスやユーザー名は実際の環境に置き換えてください。

図1 SSHトンネルを介したリモート情報採取ツールの実行環境
まず、SSD-assistanceのリモート情報採取ツールを実行するWindows端末でコマンドプロンプト(cmd.exe)またはPowerShellのウィンドウ(管理者への昇格は不要)を開き、Windows標準のsshコマンド*3 を次のように実行してSSHトンネルを作成します。
| ssh -N -o ExitOnForwardFailure=yes -L 127.0.0.1:10022:10.33.12.12:22 bastionuser@192.168.0.118 |
*3 Windows 10 1803以降およびWindows Server 2019以降には、OpenSSHクライアント(C:¥Windows¥System32¥OpenSSH¥ssh.exe)が標準搭載されています。sshコマンドが見つからない場合は、「設定 > システム > オプション機能」から「OpenSSHクライアント」を追加してください。
コマンドラインの意味を説明します。
| -N | 中継サーバーでコマンドやシェルを起動せず、転送用の接続を維持します。 |
| -o ExitOnForwardFailure=yes | ローカルポートを確保できないなど、転送の設定に失敗した場合はSSHを終了します。 |
| -L | -Lはローカルポートフォワーディング(Local Port Forwarding)のオプションです。 手元のPCのローカルポートで受けたTCP接続を、SSH経由で転送します。 |
127.0.0.1:10022 |
手元のPCのループバックアドレスのポート10022で待ち受けます。このPCからだけ接続できます。 |
| 10.33.12.12:22 | 踏み台(中継)サーバーから接続する転送先のIPアドレスとポート番号(22)です。 |
| bastionuser@192.168.0.118 | 踏み台(中継)サーバーにSSH接続するための接続情報です。公開鍵認証のために秘密鍵ファイルを明示的に指定する必要がある場合は、さらに-iオプションで秘密鍵のファイルパスを渡します。 |
踏み台(中継)サーバーが初めて接続するSSHサーバーの場合、ホスト鍵の確認画面が表示されるのでyesで受け入れます。踏み台(中継)サーバーがパスワード認証を受け付ける場合は、パスワードの入力が求められるのでパスワードを入力します(画面1の上)。公開鍵認証の場合はそのまま接続されますが、秘密鍵ファイルを明示的に指定する必要がある場合は-iオプションに秘密鍵ファイルのパスを指定してください(画面1の下)。認証が成功すると、何も表示されず、プロンプトも返ってきませんが、これでSSHトンネルの入り口が開いた状態になっています。SSHトンネルの使用が終わるまで、ウィンドウはそのままにしておきます(後でCtrl+Cキーで終了します)。なお、ssh -v -N -o...のように-v(または-vvまたは-vvv)オプションを付けて実行すると、接続や転送のデバッグログをウィンドウに表示させることができます。

画面1 踏み台(中継)サーバー経由でSSHトンネルを作成する。上はパスワード認証、下は鍵認証
SSHトンネルを作成したら、そのトンネルをテストします。次のコマンドラインを実行して、最終宛先の(トンネルの先の)LinuxサーバーにSSH接続できることを確認します(画面2)。
| ssh -p 10022 linuxuser@127.0.0.1 |

画面2 SSHトンネルを介して目的のLinuxサーバーにSSH接続できることを確認する(SSHトンネル作成時に-vオプションを付けたときのデバッグログ表示はこちら)
SSHトンネルを介したLinuxサーバーへのSSH接続が成功したら、次はSSD-assistanceのリモート情報採取ツールです。ポイントは、「ホスト」と「ポート」にSSHトンネルの入り口である「127.0.0.1」と「10022」を指定することです。その他の設定(ログインユーザーや必要に応じて実行ユーザー)は、収集対象のLinuxサーバーのユーザーの資格情報(今回の例ではlinuxuser)を指定して、実行します(画面3)。情報の採取が完了したら、SSHトンネルのウィンドウに切り替え、Ctrl+Cを押してトンネルを終了(転送を終了)します。

画面3 ホストとポートにSSHトンネルの入り口である「127.0.0.1」と「10022」を指定、ログインユーザーは中継サーバーではなく、収集対象のサーバーのものを指定
最後に、生成ツールまたはSaaSサービスで自動生成された「Linuxサーバー設定仕様書」の内容を確認し、目的のLinuxサーバーの情報が採取されていることを確認します(画面4)

画面4 Linuxサーバー設定仕様書を生成し、目的のサーバーから情報が取得されていることを確認する
関連:
リモート情報採取ツールのLinuxログイン/実行ユーザーについて-SSD-assistance FAQ(仮)
What's New in SSD-assistance: #4 Linuxへの対応をさらに強化