LoginSignup
14
15

More than 3 years have passed since last update.

sshポートフォワーディングで詰まったら確認すること

Last updated at Posted at 2019-05-26

特定の許可されているサーバーからだけアクセスできるDBやwebページに接続する場合、sshでポートフォワーディングして、踏み台(特定のアクセス許可されているサーバー)経由で接続しに行く場合があると思います。うまく接続できない時のチェックポイント書きました。

やりたいこと

EC2サーバー経由(3.113.xx.xx)でIPアドレスが表示されるhttps://www.cman.jp/network/support/go_access.cgiに接続する。

文法の確認

ssh -N 踏み台ホスト -L ローカルポート:リモートホスト:リモートポート

実際に発行するコマンド:

ssh -N ec2-user@3.113.xx.xx -L 3333:www.cman.jp:80`
  • ローカルポートを-Lオプションで接続先のポートにバインドします。
    上記例ではローカルの3333経由でアクセスするように指定しています。このポート番号は他のアプリと被らなければ適当で問題ないと思います。

  • リモートホストはアクセス先のホスト名を指定しています。パス(network/support/go_access.cgi)は指定しなくてもドメイン以下はフォワーディングしてくれるようでした。

  • リモートポートはhttp接続したいので80番を指定します。

ローカルのブラウザーから127.0.0.1:3333//network/support/go_access.cgi
に接続するとwww.cman.jp/network/support/go_access.cgiのページが表示されIPアドレスがEC2サーバーのものになっているのがわかります。

スクリーンショット 2019-05-26 22.18.25.png

エラーが発生する場合


channel 2: open failed: administratively prohibited: open failed
  • リモートサーバーで/etc/ssh/sshd_configAllowTcpForwardingが許可されているか確認する。コメントアウトされていたらコメント外してyesにします。

# Example of overriding settings on a per-user basis
#Match User anoncvs
#       X11Forwarding no
AllowTcpForwarding yes
#       PermitTTY no

  • リモートサーバーから当該のウェブページにアクセスできるか確認する

[ec2-user@ip ~]$ wget www.cman.jp
--2019-05-26 12:38:42--  http://www.cman.jp/
www.cman.jp (www.cman.jp) をDNSに問いあわせています... 157.65.27.7
www.cman.jp (www.cman.jp)|157.65.27.7|:80 に接続しています... 接続しました。
HTTP による接続要求を送信しました、応答を待っています... 200 OK
長さ: 特定できません [text/html]
`index.html' に保存中

    [ <=>                                             ] 9,865       --.-K/s 時間 0s

2019-05-26 12:38:42 (137 MB/s) - `index.html' へ保存終了 [9865]

できなければ名前解決ができているか、firewalldやiptablesなどでアクセスを遮断していないか確認します。

14
15
0

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
14
15