LoginSignup
0

WinSCPを利用してOCIのBastion経由でファイル転送してみた

Posted at

はじめに

Oracle Cloud Infrastructure(OCI)にはマネージドなBastionサービス(しかも無料!)があります。
Bastionを利用したOCI環境上のコンピュートサービス等への接続方法の解説はいろいろとありますが、今回はWinSCPを利用してのファイル転送設定を行ったので、備忘のために記しておきます。

WinSCPって?

WinSCPは言わずと知れた、Windows用のFTP/SFTP/SCPソフトになります。
こちら からダウンロードできます。

Bastionの設定

Bastionには管理対象SSHセッションとSSHポート転送セッションがありますが、今回はLinuxに向けての接続になるため、管理対象SSHセッションを利用します。以下の流れはBastionが作成されている前提での流れとなります。
image.png
(https://oracle-japan.github.io/ocitutorials/intermediates/bastion/)

1.セッションの確認

Bastionを利用する場合には、毎回セッションの作成が必要になります。
セッションが作成されると以下のような状態になります。
image.png

2.セッション情報の表示

右の:をクリックすると「SSHコマンドの表示」ができます。
image.png

SSHコマンドは以下のような形式になります。
(privatekeyはBastion作成時に設定したkeyになります)

ssh -i <privateKey> -o ProxyCommand="ssh -i <privateKey> -W %h:%p -p 22 ocid1.bastionsession.oc1.iad.xxxxxxxxxxxxxxxxxxx@host.bastion.us-ashburn-1.oci.oraclecloud.com" -p 22 opc@192.168.0.219

3.WinSCPの設定

3.1.ログイン情報の設定

WinSCPを起動し、ログイン情報を以下のように設定します。

  • 転送プロトコル:SCP
  • ホスト名:接続対象コンピュートのIPアドレス、例では 192.168.0.219
  • ポート番号:SSH接続のポート番号、通常 22
  • ユーザ名:標準のコンピュートの場合、opc

image.png

3.2.トンネル情報の設定

ログイン情報のページから「設定」をクリックすると、高度なサイトの設定に移動します。
トンネル設定で以下のように設定します。

  • SSHトンネルを経由して接続する:チェックを入れる
  • ホスト名:セッション情報の表示で表示された@より右の値を入れる、例では host.bastion.us-ashburn-1.oci.oraclecloud.com
  • ユーザ名:セッション情報の表示で表示された@より左の値を入れる、例では ocid1.bastionsession.oc1.iad.xxxxxxxxxxxxxxxxxxx
  • ポート番号:SSH接続のポート番号、通常 22
  • 秘密鍵:Bastion作成時に利用したキー

image.png

3.3.認証情報の設定

高度なサイトの設定内の「認証」をクリックします。
認証設定で以下のように設定します。

  • エージェントの転送を許可する:チェックを入れる
  • 秘密鍵:Bastion作成時に利用したキー

image.png

4.WinSCPでVMへ接続

高度な設定を保存し、ログイン画面に戻り、ログインを押下します。
image.png

以下のようにセッションが開始されます。
image.png

無事接続することができました。
image.png

5.ファイル転送

試しに赤枠のファイル(MOS-level1.png)を転送してみます。
image.png

無事サーバ上で転送したファイルを確認することができました。

$ ll
-rw-r--r--. 1 opc opc 43026 May  7 00:18 MOS-level1.png

まとめ

ローカル環境とのファイル送受信を行うケースはObject Storageを経由する方が楽かもしれませんが、なんらかの理由でサーバ側と直接の送受信が必要な場合には、上記のようにBastion経由で実施できますので参考にしていただければ幸いです。
なお、OCIのBastionを利用する場合、毎回セッションを作り直す必要があるので、トンネル情報ユーザ名はセッションが変わったら入れ替える必要がありますのでご注意ください。

参考

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
What you can do with signing up
0