Re: [問題ID:30502] sshのローカルポートフォワーディングの書式について

この質問の投稿一覧へ

なし Re: [問題ID:30502] sshのローカルポートフォワーディングの書式について

msg# 1.1
depth:
1
前の投稿 - 次の投稿 | 親投稿 - 子投稿.1 | 投稿日時 2020-4-1 15:31
arashi1977  長老 居住地: 広島  投稿数: 1715
検証もせず実際の問題も見ないで言うのもなんですが…
引用:
当方の理解は以下の通りです。
(誤)と(正)の違いは「SSHサーバから見た接続先アドレス」の指定と思っています。
接続先アドレスに誤りがあるとすれば、接続先アドレスにssh-serverを指定してはいけない理由を教えていただけますか。
ここでの一番のポイントは
- ssh-serverはlocalhost(127.0.0.1)ではない
- localhostは127.0.0.1であって、外部からは接続できない
- ssh-serverから見たssh-serverがサーバ内を示すとは限らない
ということです。
ssh-serverから見たlocalhostだからといって、localhostがssh-serverだとは言えないということです。

テキストでの説明なので、長く、かつわかりにくいかもしれませんが…

そもそもポートフォワーディングをする(トンネルを掘る)ということは、外部から直接そのポートにアクセスできないため、SSHポートフォワーディングによってアクセスできるようにする必要があるということです。
例えば例の3306ポートといえばMySQLです。データベースに外部からかんたんにアクセスできるとセキュリティ的に問題です。そのためよくあるのが
- 特権ユーザはlocalhost(127.0.0.1)からしか接続を許可しない
- 3306番ポートはインターネットに開放しない
という手段です。
(つまり、127.0.0.1:3306 でしかMySQLへは接続できない)

これはこれで「SSHでssh-serverにログインして、ローカルでmysqlコマンドで作業する」分には問題はありません。ですが、GUIの管理ツールや外部からDBを操作したい、いちいちssh-serverにSSHログインさせたくない、という場合にはポートフォワーディングで「ローカルの3306番ポートへの通信は、ssh-serverへのSSH接続を経由して、ssh-serverから見たlocalhost(127.0.0.1)の3306番ポートへ接続する」というようにすれば、解決できます。

こういう例を踏まえての設問ではないかと推測します。

投稿ツリー

  >フォーラム検索へ


Copyright (c) 2020 Ping-t All rights reserved.