質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
SSH

SSH(Secure Shell)は、セキュアチャネルを通してデータを交換するためのネットワークプロトコルです。リモートサーバーへのコマンド実行やファイル転送を行う時に一般的に使用されます。

AWS(Amazon Web Services)

Amazon Web Services (AWS)は、仮想空間を機軸とした、クラスター状のコンピュータ・ネットワーク・データベース・ストーレッジ・サポートツールをAWSというインフラから提供する商用サービスです。

Q&A

解決済

3回答

5613閲覧

踏み台サーバ経由でawsのプライベートサーバ(EC2)にSFTPアクセスしたい

tkda

総合スコア23

SSH

SSH(Secure Shell)は、セキュアチャネルを通してデータを交換するためのネットワークプロトコルです。リモートサーバーへのコマンド実行やファイル転送を行う時に一般的に使用されます。

AWS(Amazon Web Services)

Amazon Web Services (AWS)は、仮想空間を機軸とした、クラスター状のコンピュータ・ネットワーク・データベース・ストーレッジ・サポートツールをAWSというインフラから提供する商用サービスです。

0グッド

0クリップ

投稿2018/11/26 09:09

編集2018/11/26 15:37

mac版のTransmit/Cyberduckを使って、

A. mac -> B. awsの踏み台サーバ(EC2) -> C. awsのプライベートサーバ(EC2)

という、SFTPアクセスを試みております。

以下、類似の質問があり解決しているようですが、うまくいきません。

https://ja.stackoverflow.com/questions/49344/scp%E3%82%AF%E3%83%A9%E3%82%A4%E3%82%A2%E3%83%B3%E3%83%88%E3%82%92%E7%94%A8%E3%81%84%E3%81%9F%E8%B8%8F%E3%81%BF%E5%8F%B0%E3%82%B5%E3%83%BC%E3%83%90%E3%83%BC%E7%B5%8C%E7%94%B1%E3%81%A7%E3%81%AE%E3%82%A2%E3%82%AF%E3%82%BB%E3%82%B9%E3%81%AB%E3%81%A4%E3%81%84%E3%81%A6

A -> B
B -> C

へは、同一のユーザ名、秘密鍵でSSHアクセスできることは確認しています(ポート: 22)。

上記のURLの通り、
ssh -L 10999:【CのプライベートIP】:22 -i 【秘密鍵】 ec2-user@【BのパブリックIP】
で、SSHポートフォワーディングを試しております。

Transmitにて、
プロトコル: SFTP
ポート: 10999
サーバアドレス: localhost
ユーザ名: ec2-user
鍵: 秘密鍵を指定

を指定していますが、接続失敗となります。

お知恵を貸していただけますと幸いです。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答3

0

ssh -L 10999:【BのプライベートIP】:22 -i 【秘密鍵】 ec2-user@【AのパブリックIP】
で、SSHポートフォワーディングを試しております。

ssh -L 10999:【CのプライベートIP】:22 -i 【秘密鍵】 ec2-user@【BのパブリックIP】

ですよね?

プロトコル: SFTP
サーバアドレス: BのパブリックIP
ユーザ名: ec2-user
鍵: 秘密鍵を指定

ポート番号 10999 の指定が必要です。
また、この秘密鍵は C の ~ec2-user/.ssh/authorized_keys に登録されている公開鍵とペアになっているものが必要です。
A→B に SSH ログインするときの A の秘密鍵と、B→C のときの B の秘密鍵が同一であれば認証できると思いますが、同一でない場合、A の秘密鍵とペアになる公開鍵を、C の ~ec2-user/.ssh/authorized_keys に追加登録する必要があります。

###(2018/11/27 16:20) 追記

サーバアドレス: BのパブリックIP

すみません。ここは localhost でした。
修正後の設定で問題なさそうですが、ssh -i <秘密鍵> -p 10999 ec2-user@localhost で A→C にログインできませんか?

投稿2018/11/26 13:42

編集2018/11/27 07:21
TaichiYanagiya

総合スコア12146

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

tkda

2018/11/26 15:56

質問内容がめちゃくちゃでした。 せっかくご回答いただいたにもかかわらず申し訳ありません。 指摘いただいたとおりで間違いありません。 また、秘密鍵はAとBで同一です。
tkda

2018/11/27 07:36

ssh -i <秘密鍵> -p 10999 ec2-user@localhost では、ログインできませんでした。 私もこれはいけると思ったのですが…。
TaichiYanagiya

2018/11/27 14:02

そのときの C のログはどうなっていますでしょうか。
tkda

2018/11/28 14:14

無事解決しました!後ほど質問欄に最終のを掲載します。
guest

0

自己解決

ssh -L 10999:【CのプライベートIP】:22 -i 【秘密鍵】 ec2-user@【BのパブリックIP】

■Transmit
・プロトコル: SFTP
・ポート: 10999
・サーバアドレス: 127.0.0.1
・ユーザ名: ec2-user
・鍵: 秘密鍵を指定

と、サーバアドレスを127.0.0.1に変更することで解決しました。

投稿2018/11/28 14:17

tkda

総合スコア23

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

ローカルで
ssh -L 10999:【BのパブリックIP】:22 -i 【秘密鍵】 ec2-user@【CのプライベートIP

としておいて、

プロトコル: SFTP
サーバアドレス: localhost
ポート: 10999
ユーザ名: ec2-user
鍵: 秘密鍵を指定

ではないでしょうか?

投稿2018/11/26 09:32

編集2018/11/26 09:36
taka-saan

総合スコア665

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

tkda

2018/11/26 15:57

質問内容がめちゃくちゃでした。 せっかくご回答いただいたにもかかわらず申し訳ありません。 質問内容を編集しております。 ご指摘いただいた内容でも試したのですがやはりサーバに接続できませんでした。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問