Help us understand the problem. What is going on with this article?

IBM Cloud Object Storage (ICOS) に WinSCP でアクセスしてファイルサーバーとして利用してみた

以前からお世話になっていた Windows用 SCP/FTP ソフトの WinSCP がバージョン5.13で Amazon S3 プロトコルに対応したようです。

IBM Cloud Object Storage (ICOS) も S3 互換のうえ、ライトプランであれば 25GB までは無料です。この組み合わせは良いのでは?とちょっと試してみました。すごく便利になりました。

【追記】同様に Cyberduck アプリを対象とした記事 を投稿しました。ICOS サービス作成に関してはこちらのほうが説明が新しいので、よろしければご参照ください

ICOS サービスの作成

IBM Cloud にログインし、[カタログ] から [ストレージ] を選んで [オブジェクト・ストレージ] をクリック。
image.png
「価格プラン」で「ライト」が選択されていることを確認のうえ、[作成]をクリック。
image.png
「セットアップ」ページが開きますので [バケットの作成] をクリック。
image.png
「バケット」ページが開きますので「固有のバケット名」を入力し、「回復力」を「Cross Regions」に変更して [バケットの作成] をクリック。
image.png
これで ICOS サービスが利用可能になりました。

ファイルをアップロードしてみる

バケットを作成すると「バケット」のサブメニュー「オブジェクト」に移動します。

もし迷ったら左上の [IBM Cloud] をクリックして「ダッシュボード」に戻り、[リソースの表示] メニューから「ストレージ」の下にある ICOS サービス名をクリックして移動し、対象のバケット名をクリックすれば同じメニューに戻れます。

そして右にある [ファイルのアップロード] ボタンを使用するか、その下にあるドラッグ&ドロップ領域を利用して、何かファイルをアップロードしてみましょう。
image.png
ファイルをアップロードすると、以下のような完了メッセージが一定期間表示されます。
image.png
また「オブジェクト」ページにアップロードしたファイルが追加され、拡張メニューから [ダウンロード] や [削除] などのアクションを実施できます。
image.png
これら操作はあくまで ICOS の動作確認。WinSCP のセットアップができたら、上記操作なんてGUIでサクサク操作できちゃいますー。

アクセスのための資格情報の作成

さて、作成した ICOS サービスにアクセスするための資格情報を作成しましょう。

左メニューの「サービス資格情報」をクリックし、[新規資格情報] ボタンをクリック。
image.png
「新規資格情報の追加」ポップアップが開きますので、もし必要であれば名前を変更し、役割を設定(今回はフル権限を与えるManagerとします)し、[Include HMAC Credential] をチェックして [追加] ボタンをクリック。
image.png
これで今回作成した ICOS サービスに対し、フル権限でアクセス可能なサービス資格情報を用意できました。

作成されたサービス資格情報で [資格情報の表示] をクリックします。
image.png
cos_hmac_Keys に定義されている access_key_idsecret_access_key の値をメモしておきましょう。

WinSCP のインストールと設定

Windows 環境の方で、WinSCP を未使用、もしくはバージョン5.13より古いものを利用されている方は、インストールしましょう。

WinSCP download ページから最新版のインストーラーをダウンロードして実行します。ライセンス条件だけしっかり読んで、後はデフォルト設定のまま進めて大丈夫です。
image.png
インストール後、WinSCP が起動すると、新しいサイトの設定ポップアップが開きます。まずは「転送プロトコル」で [Amazon S3] を選択します。
image.png
「ホスト名」はバケットを作成した画面の「エンドポイント」メニューに一覧があり探せます。今回は AP の Cross Regions を選択しているので、以下を使用してください。

s3.ap.cloud-object-storage.appdomain.cloud

また 「アクセスキーID」と「シークレットキー」欄にはそれぞれ、メモしておいた access_key_idsecret_access_key の値を設定します。
image.png
[保存] ボタンで今回のアクセス情報を保存し、[ログイン] ボタンで ICOS に WinSCP が接続しアクセスできます。
image.png
右がIBM Cloud側の ICOS サービスなのですが、まずはバケットの名前が表示されているのがわかります。複数のバケットを作成すると、ここにアクセス可能なバケット名が並びます。

これらバケットを対象に、通常のファイルサーバーのようにファイルのアップロードやダウンロードが可能なことを確認してください。

Web 画面で操作するより、かなーり使いやすいですよね!

補足:フォルダの扱いについて

ICOS 上では「プレフィックス・フィルター」という概念があり、これが Windows や FTP ソフトにおけるフォルダに相当します。

例えば WinSCP で新規に test というフォルダを作成し、そこに sprites.gif という画像ファイルをアップロードした場合、IBM Cloud の ICOS の画面では以下の2つのオブジェクトが作成されました。
image.png

test/ という空のオブジェクトがフォルダに対応して作成され、画像ファイルは test/sprites.gif とパス付きの名前に変換されていることがわかります。この場合の test/ が ICOS の「プレフィックス・フィルター」です。

補足:ライトプランの制限を理解する

作成前にライトプランの上限はよく確認しておきましょう。
image.png
無料のライトプランは「非アクティブで30日間経過すると削除」されるそうなので、重要ファイルのバックアップ用途などには使用しないほうが良さそうです。またパブリック向けの送信上限が低めなので、多くの利用者へのファイル共有には向かないとおもわれます。

私は開発中に作成するファイルの「一時バックアップ置き場」として利用してみようと思っています。

またパソコンに保存した家族の写真の一時的な予備バックアップにも使えそうな気がしています。私は数か月ごとに DVD-R や BD-R などにバックアップを取るのですが、それまでの間にパソコンが故障すると困るので、その間の繋ぎで保険みたいなバックアップです。

※ 時間が取れたら定期的に自動バックアップするツールを探すか、APIを利用して自分で作成したいですね

というわけで

メジャーかつ使いやすい WinSCP を用いて、IBM Cloud 上の ICOS サービスを利用できるよう設定してみました。

25GB まで無料、ということで、けっこー実用的に使えそうな気もします。

今回は手を抜いて Manager 権限をセットしましたけれど、IAM を使って資格情報ごとにきちんとアクセス・グループや権限をセットしてあげれば、手軽でお安いファイルサーバーとして結構、実用に耐えるのではないでしょうか。

WinSCP 以外にも Amazon S3 対応のソフトであれば動きそうな気がしますので、他のツールでも試してみてくださいませ。

それではまた!

yamachan360
Web系開発者。映画,特撮,功夫,酒, ロボ,アニメ,模型,ゲーム, 懐パソ(PC6001, MSX, X68000), JavaScript/NodeJS, Unity, RPGツクール, プチコン, AWS, 開発環境なんでも好き。修行中。 投稿は全て個人の見解です。 Posts are my own.
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした